E2E Test #285
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: E2E Test | |
env: | |
COMPOSER_VERSION: "2" | |
COMPOSER_CACHE: "${{ github.workspace }}/.composer-cache" | |
NODE_VERSION: "20" | |
NODE_CACHE: "${{ github.workspace }}/node_modules_cache" | |
on: | |
schedule: | |
- cron: '0 0 * * *' | |
push: | |
branches: | |
- trunk | |
pull_request: | |
branches: | |
- trunk | |
- '[0-9].[0-9x]*' # Version branches: 4.x.x, 4.1.x, 5.x | |
jobs: | |
cypress_local: | |
name: Cypress - Local | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Prepare npm cache | |
uses: actions/cache@v3 | |
with: | |
path: ${{ env.NODE_CACHE }} | |
key: npm-${{ env.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
npm-${{ env.NODE_VERSION }}- | |
- name: Prepare composer cache | |
uses: actions/cache@v3 | |
with: | |
path: ${{ env.COMPOSER_CACHE }} | |
key: composer-${{ env.COMPOSER_VERSION }}-${{ hashFiles('**/composer.lock') }} | |
restore-keys: | | |
composer-${{ env.COMPOSER_VERSION }}- | |
- name: Set PHP version | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: '8.2' | |
tools: cs2pr | |
coverage: none | |
- name: composer install | |
run: composer install | |
- name: "Install node v${{ env.NODE_VERSION }}" | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
- name: Install dependencies | |
run: npm ci --include=dev | |
- name: Set up WP environment | |
run: npm run env start | |
- name: Build asset | |
run: npm run build | |
- name: Test | |
run: npm run e2e:run | |
- name: Make artifacts available | |
uses: actions/upload-artifact@v3 | |
if: failure() | |
with: | |
name: e2e-artifact | |
retention-days: 2 | |
path: | | |
${{ github.workspace }}/tests/e2e/screenshots/ | |
${{ github.workspace }}/tests/e2e/videos/ | |
${{ github.workspace }}/tests/e2e/logs/ |