Accessibility Tests for c523dc311abf85ba35e7bcc4a50f600e6c68441e #465
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
| # Workflow that runs accessibility tests once per day against dev infra. | |
| name: Accessibility Tests | |
| run-name: Accessibility Tests for ${{ github.sha }} | |
| env: | |
| SLACK_CHANNEL_ID: CBX0KH5GA # #www-notify in MoCo Slack | |
| SLACK_BOT_TOKEN: ${{secrets.SLACK_BOT_TOKEN_FOR_MEAO_NOTIFICATIONS_APP}} | |
| on: | |
| schedule: | |
| - cron: "0 15 * * *" # 3pm daily | |
| workflow_dispatch: | |
| inputs: | |
| springfield_service_hostname: | |
| description: The root URL to run tests against. eg "https://www.firefox.com/" | |
| required: true | |
| jobs: | |
| notify-of-test-run-start: | |
| if: github.repository == 'mozmeao/springfield' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Notify via Slack that tests are starting | |
| uses: ./.github/actions/slack | |
| with: | |
| env_name: test | |
| label: "Accessibility Tests [${{ github.sha }}]" | |
| status: info | |
| channel_id: ${{ env.SLACK_CHANNEL_ID }} | |
| slack_bot_token: ${{ env.SLACK_BOT_TOKEN }} | |
| ref: ${{ github.sha }} | |
| message: "Accessibility Tests started" | |
| accessibility-tests: | |
| runs-on: ubuntu-latest | |
| needs: notify-of-test-run-start | |
| env: | |
| PLAYWRIGHT_BASE_URL: ${{ github.event.inputs.springfield_service_hostname || 'https://dev.springfield.nonprod.webservices.mozgcp.net' }} | |
| CI: true | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| - name: Install dependencies | |
| run: cd tests/playwright && npm ci && npm run install-deps | |
| - name: Run accessibility tests | |
| run: cd tests/playwright && npm run a11y-tests | |
| - uses: actions/upload-artifact@v4 | |
| if: ${{ !cancelled() }} | |
| with: | |
| name: test-results-a11y-${{ github.sha }} | |
| path: tests/playwright/test-results-a11y/ | |
| if-no-files-found: ignore # this avoids a false "Warning" if there were no issues | |
| retention-days: 30 | |
| notify-of-test-run-completion: | |
| if: github.repository == 'mozmeao/springfield' && always() | |
| runs-on: ubuntu-latest | |
| needs: [notify-of-test-run-start, accessibility-tests] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Notify via Slack of test-run outcome | |
| uses: ./.github/actions/slack | |
| with: | |
| env_name: test | |
| label: "Accessibility tests [${{ github.sha }}]" | |
| status: ${{ needs.accessibility-tests.result }} | |
| channel_id: ${{ env.SLACK_CHANNEL_ID }} | |
| slack_bot_token: ${{ env.SLACK_BOT_TOKEN }} | |
| ref: ${{ github.sha }} | |
| message: "Accessibility tests completed. Status: ${{ needs.accessibility-tests.result }}" |