User management UI #5464
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: End-to-end tests of web+runtime | |
on: | |
pull_request: | |
paths: | |
- ".github/workflows/web-test.yml" | |
- "admin/**" | |
- "cli/**" | |
- "runtime/**" | |
- "web-admin/**" | |
- "web-auth/**" | |
- "web-common/**" | |
- "web-local/**" | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Filter modified codepaths | |
uses: dorny/paths-filter@v3 | |
id: filter | |
with: | |
filters: | | |
admin: | |
- ".github/workflows/web-test.yml" | |
- "admin/**" | |
- "cli/**" | |
- "runtime/**" | |
- "web-admin/**" | |
auth: | |
- ".github/workflows/web-test.yml" | |
- "web-auth/**" | |
local: | |
- ".github/workflows/web-test.yml" | |
- "cli/**" | |
- "runtime/**" | |
- "web-local/**" | |
common: | |
- ".github/workflows/web-test.yml" | |
- "cli/**" | |
- "runtime/**" | |
- "web-common/**" | |
- name: Set up NodeJS | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
- name: Set up go for E2E | |
uses: actions/setup-go@v5 | |
with: | |
go-version: 1.22 | |
- name: go build cache | |
uses: actions/cache@v4 | |
with: | |
path: | | |
~/go/pkg/mod | |
~/.cache/go-build | |
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} | |
restore-keys: | | |
${{ runner.os }}-go- | |
- name: NPM Install | |
run: npm install | |
# https://typicode.github.io/husky/how-to.html#ci-server-and-docker | |
env: | |
HUSKY: 0 | |
- name: Build and embed static UI | |
run: PLAYWRIGHT_TEST=true make cli | |
- name: Install browser for UI tests | |
run: npx playwright install | |
- name: Test web local | |
if: ${{ steps.filter.outputs.local == 'true' || steps.filter.outputs.common == 'true' }} | |
run: npm run test -w web-local | |
- uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: playwright-report | |
path: web-local/playwright-report/ | |
retention-days: 30 | |
- name: Build web admin | |
if: ${{ steps.filter.outputs.admin == 'true' || steps.filter.outputs.common == 'true' }} | |
run: |- | |
npm run build -w web-admin |