Skip to content

Fix the bug "Guest user is able to change email to owner and essentially kills nodes" #2400

Fix the bug "Guest user is able to change email to owner and essentially kills nodes"

Fix the bug "Guest user is able to change email to owner and essentially kills nodes" #2400

name: PR Tests - Frontend
on:
workflow_call:
pull_request:
branches:
- dev
- main
- "0.8"
concurrency:
group: frontend-${{ github.event_name == 'pull_request' && format('{0}-{1}', github.workflow, github.event.pull_request.number) || github.workflow_ref }}
cancel-in-progress: true
defaults:
run:
working-directory: ./packages/grid/frontend
jobs:
pr-tests-frontend-unit:
strategy:
max-parallel: 3
matrix:
os: [ubuntu-latest]
python-version: ["3.11"]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: Check for file changes
uses: dorny/paths-filter@v2
id: changes
with:
base: ${{ github.ref }}
token: ${{ github.token }}
filters: .github/file-filters.yml
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
if: steps.changes.outputs.frontend == 'true'
with:
python-version: ${{ matrix.python-version }}
- name: Upgrade pip
if: steps.changes.outputs.frontend == 'true'
run: |
python -m pip install --upgrade --user pip
- name: Get pip cache dir
id: pip-cache
if: steps.changes.outputs.frontend == 'true'
shell: bash
run: |
echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
- name: pip cache
uses: actions/cache@v3
if: steps.changes.outputs.frontend == 'true'
with:
path: ${{ steps.pip-cache.outputs.dir }}
key: ${{ runner.os }}-pip-py${{ matrix.python-version }}-${{ hashFiles('packages/hagrid/setup.cfg') }}
restore-keys: |
${{ runner.os }}-pip-py${{ matrix.python-version }}-
- name: Fix Colima issue on MacOS Runners
if: steps.changes.outputs.frontend == 'true' && matrix.os == 'macos-latest'
shell: bash
run: |
export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
brew update
brew reinstall qemu
- name: Docker on MacOS
if: steps.changes.outputs.frontend == 'true' && matrix.os == 'macos-latest'
uses: crazy-max/[email protected]
- name: Install Tox
if: steps.changes.outputs.frontend == 'true'
run: |
pip install --upgrade tox
- name: Remove existing containers
if: steps.changes.outputs.frontend == 'true'
continue-on-error: true
shell: bash
run: |
docker rm $(docker ps -aq) --force || true
docker volume prune -f || true
docker buildx use default || true
- name: Run Frontend Unit Tests
if: steps.changes.outputs.frontend == 'true'
env:
DOCKER: true
run: |
tox -e frontend.test.unit
pr-tests-frontend-e2e:
strategy:
max-parallel: 3
matrix:
os: [ubuntu-latest]
python-version: ["3.11"]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: Check for file changes
uses: dorny/paths-filter@v2
id: changes
with:
base: ${{ github.ref }}
token: ${{ github.token }}
filters: .github/file-filters.yml
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
if: steps.changes.outputs.stack == 'true'
with:
python-version: ${{ matrix.python-version }}
- name: Upgrade pip
if: steps.changes.outputs.stack == 'true'
run: |
python -m pip install --upgrade --user pip
- name: Get pip cache dir
id: pip-cache
if: steps.changes.outputs.stack == 'true'
shell: bash
run: |
echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
- name: pip cache
uses: actions/cache@v3
if: steps.changes.outputs.stack == 'true'
with:
path: ${{ steps.pip-cache.outputs.dir }}
key: ${{ runner.os }}-pip-py${{ matrix.python-version }}-${{ hashFiles('packages/hagrid/setup.cfg') }}
restore-keys: |
${{ runner.os }}-pip-py${{ matrix.python-version }}-
- name: Install Docker Compose
if: steps.changes.outputs.stack == 'true' && runner.os == 'Linux'
shell: bash
run: |
mkdir -p ~/.docker/cli-plugins
DOCKER_COMPOSE_VERSION=v2.16.0
curl -sSL https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose
- name: Fix Colima issue on MacOS Runners
if: steps.changes.outputs.stack == 'true' && matrix.os == 'macos-latest'
shell: bash
run: |
export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
brew update
brew reinstall qemu
- name: Docker on MacOS
if: steps.changes.outputs.stack == 'true' && matrix.os == 'macos-latest'
uses: crazy-max/[email protected]
- name: Install Tox
if: steps.changes.outputs.stack == 'true'
run: |
pip install --upgrade tox
- name: Remove existing containers
if: steps.changes.outputs.stack == 'true'
continue-on-error: true
shell: bash
run: |
docker rm $(docker ps -aq) --force || true
docker volume prune -f || true
docker buildx use default || true
- uses: pnpm/action-setup@v2
with:
version: 8
run_install: false
dest: ~/setup-pnpm
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
# cache: "pnpm"
# cache-dependency-path: packages/grid/frontend/pnpm-lock.yaml
- name: Run Frontend Playwright e2e Tests
if: steps.changes.outputs.stack == 'true'
env:
DOCKER: true
run: |
tox -e frontend.test.e2e