Skip to content

test(acceptance): username password #19

test(acceptance): username password

test(acceptance): username password #19

name: Acceptance Tests
on: pull_request
jobs:
acceptance-tests:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: lts/*
- name: Run Docker Compose and Install Dependencies in Parallel
env:
ZITADEL_DEV_UID: root
run: |
echo "Start docker-compose in the background"
docker compose -f ./acceptance/docker-compose.yaml run setup &
DOCKER_COMPOSE_PID=$!
echo "Docker Compose PID: $DOCKER_COMPOSE_PID"
echo "Install app dependencies in the foreground"
npm install -g pnpm && pnpm install
echo "Install Test Browsers in the background"
pnpm exec playwright install --with-deps &
INSTALL_BROWSERS_PID=$!
echo "Install browsers PID: $INSTALL_BROWSERS_PID"
echo "Generate gRPC stubs in the background"
pnpm generate &
GENERATE_PID=$!
echo "Generate stubs PID: $GENERATE_PID"
# Wait for docker-compose
wait $DOCKER_COMPOSE_PID
if [ $? -ne 0 ]; then
echo "Docker Compose failed"
exit 1
fi
# Wait for Playwright browser installation
wait $INSTALL_BROWSERS_PID
if [ $? -ne 0 ]; then
echo "Playwright browser installation failed"
exit 1
fi
# Wait for gRPC stubs generation
wait $GENERATE_PID
if [ $? -ne 0 ]; then
echo "gRPC stubs generation failed"
exit 1
fi
echo "Generate and create a production build in the foreground"
pnpm build
- name: Run Playwright Tests
run: pnpm exec playwright test
- uses: actions/upload-artifact@v4
if: ${{ !cancelled() }}
with:
name: playwright-report
path: playwright-report/
retention-days: 30