Skip to content

Additional help text #3710

Additional help text

Additional help text #3710

Workflow file for this run

###
#
# This workflow file is deployed into this repository via the "Sync Organization Files" workflow
#
# Direct edits to this file are at risk of being overwritten by the next sync. All edits should be made
# to the source file.
#
# @see Sync workflow {@link https://github.com/gocodebox/.github/actions/workflows/workflow-sync.yml}
# @see Workflow template {@link https://github.com/gocodebox/.github/blob/trunk/.github/workflow-templates/test-e2e.yml}
#
###
name: Test E2E
on:
workflow_dispatch:
pull_request:
# Once daily at 00:00 UTC.
# schedule:
# - cron: '0 0 * * *'
concurrency:
group: ${{ github.workflow }}-${{ 'pull_request' == github.event_name && github.head_ref || github.sha }}
cancel-in-progress: true
jobs:
###
#
# Setup the test matrix.
#
###
set-matrix:
name: Setup Matrix
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.setup.outputs.matrix }}
steps:
- uses: actions/checkout@v2
- id: setup
uses: gocodebox/.github/.github/actions/setup-matrix@trunk
###
#
# Run tests.
#
###
test:
name: "WP ${{ matrix.WP }}"
needs: set-matrix
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.allow-failure }}
strategy:
fail-fast: false
matrix: ${{ fromJSON( needs.set-matrix.outputs.matrix ) }}
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup Environment
uses: gocodebox/.github/.github/actions/setup-e2e@trunk
with:
wp-version: ${{ matrix.WP }}
docker-user: ${{ secrets.DOCKER_USERNAME }}
docker-pass: ${{ secrets.DOCKER_PASSWORD }}
node-version: '16'
- name: Run test suite
run: npm run test -- --verbose
- name: Upload artifacts
uses: actions/upload-artifact@v4
if: failure()
with:
name: error-artifacts-wp-${{ matrix.WP }}
path: tmp/artifacts
###
#
# Check the status of the entire test matrix.
#
# This will succeed if all jobs from the `test` job's matrix succeed. It allows jobs marked with `allow-failure`
# to fail.
#
# This job can be used as a single status check for branch protection rules. Without this
# we would need to require every job in the above build matrix.
#
###
status:
name: Test E2E Status
runs-on: ubuntu-latest
if: always()
needs: test
steps:
- name: Check overall matrix status
if: ${{ 'success' != needs.test.result }}
run: exit 1