chore(deps-dev): bump @tanstack/react-query-devtools #753
This file contains hidden or 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: Frontend e2e test | |
on: | |
push: | |
branches: | |
- "**" | |
pull_request: | |
types: [labeled, synchronize] | |
branches: | |
- "**" | |
schedule: | |
# Run at 2:00 AM UTC every day | |
# This should be later than the update time of `apache/apisix:dev` | |
# Ref: https://github.com/apache/apisix-docker/blob/master/.github/workflows/apisix_dev_push_docker_hub.yaml#L7C15-L7C16 | |
- cron: '0 2 * * *' | |
repository_dispatch: | |
types: [e2e-test] | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
test: | |
# only run when e2e-test label is added, scheduled, workflow_dispatch, repository_dispatch | |
if: ${{ (github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'e2e-test')) || github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || github.event_name == 'repository_dispatch' }} | |
timeout-minutes: 40 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v5 | |
- name: Get PR Labels | |
if: ${{ github.event_name == 'pull_request' }} | |
id: get-labels | |
uses: actions/github-script@v6 | |
with: | |
script: | | |
const labels = context.payload.pull_request.labels.map(label => label.name); | |
core.setOutput("labels", labels.join(",")); | |
- name: Set image label as environment variable | |
if: ${{ github.event_name == 'pull_request' }} | |
run: | | |
export LABELS=${{ steps.get-labels.outputs.labels }} | |
echo "LABELS=${LABELS}" >> $GITHUB_ENV | |
shell: bash | |
# ensure this in https://github.com/apache/infrastructure-actions/blob/main/actions.yml | |
- uses: pnpm/action-setup@v4 | |
name: Install pnpm | |
with: | |
run_install: false | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: "22" | |
cache: "pnpm" | |
- name: Install dependencies | |
run: | | |
pnpm install --frozen-lockfile | |
- name: Install Playwright Browsers | |
run: | | |
pnpm exec playwright install --with-deps | |
- name: Run e2e server | |
working-directory: ./e2e/server | |
run: | | |
docker compose up -d | |
- name: Waiting dashboard service to be healthy | |
working-directory: ./e2e/server | |
run: | | |
E2E_SERVER="dashboard-e2e" | |
TIMEOUT=30 | |
timeout $TIMEOUT bash -c ' | |
until [ "$(docker inspect --format="{{.State.Health.Status}}" $(docker compose ps -q '$E2E_SERVER'))" = "healthy" ]; do | |
echo "'$E2E_SERVER' is starting..." | |
sleep 5 | |
done | |
' || (echo "$E2E_SERVER not healthy after $TIMEOUT seconds" && exit 1) | |
- name: Run e2e tests | |
run: | | |
pnpm e2e | |
- uses: actions/upload-artifact@v4 | |
if: ${{ !cancelled() }} | |
with: | |
name: test-results | |
path: apps/site-e2e/test-results/ | |
retention-days: 7 | |
- uses: actions/upload-artifact@v4 | |
if: ${{ !cancelled() }} | |
with: | |
name: playwright-report | |
path: playwright-report/ | |
retention-days: 7 | |
- name: Print Components Logs | |
if: failure() | |
run: | | |
docker ps --format '{{.Names}}' | xargs -I{} bash -c "echo ================= {} ==================== && docker logs {} && echo ================= {} ====================" |