Document template parts used by the Classic Template block #4069
Workflow file for this run
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: Blocks Playwright Tests | |
on: | |
pull_request: | |
paths: | |
- '.github/workflows/blocks-playwright.yml' # This file | |
- 'plugins/woocommerce-blocks/**' | |
- 'plugins/woocommerce/src/Blocks/**' | |
- 'plugins/woocommerce/templates/**' | |
- 'plugins/woocommerce/patterns/**' | |
# Allow manually triggering the workflow. | |
workflow_dispatch: | |
concurrency: | |
group: '${{ github.workflow }}-${{ github.ref }}' | |
cancel-in-progress: true | |
env: | |
FORCE_COLOR: 1 | |
jobs: | |
blocks-playwright-tests: | |
name: Shard ${{ matrix.shardIndex }} of ${{ matrix.shardTotal }} | |
timeout-minutes: 60 | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: plugins/woocommerce-blocks | |
strategy: | |
fail-fast: false | |
matrix: | |
shardIndex: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | |
shardTotal: [10] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup WooCommerce Monorepo | |
uses: ./.github/actions/setup-woocommerce-monorepo | |
with: | |
install: '@woocommerce/plugin-woocommerce...' | |
build: '@woocommerce/plugin-woocommerce' | |
- name: Install Playwright dependencies | |
run: pnpm exec playwright install chromium --with-deps | |
- name: Setup testing environment and start the server | |
run: pnpm env:start | |
- name: Run Playwright tests | |
run: pnpm test:e2e --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }} | |
- name: Archive debug artifacts (screenshots, traces) | |
uses: actions/upload-artifact@v4 | |
if: ${{ !cancelled() }} | |
with: | |
name: failures-artifacts-shard-${{ matrix.shardIndex }} | |
path: plugins/woocommerce-blocks/tests/e2e/artifacts/test-results | |
if-no-files-found: ignore | |
merge-artifacts: | |
# Merges all artifacts from all shards into a single zip and | |
# deletes the parts. In case of a rerun, artifacts from the | |
# previous run will be retained by merging them with the new ones. | |
name: Merge Artifacts | |
if: ${{ !cancelled() }} | |
needs: [blocks-playwright-tests] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Merge Artifacts | |
uses: actions/upload-artifact/merge@v4 | |
# Don't fail the job if there aren't any artifacts to merge. | |
continue-on-error: true | |
with: | |
name: failures-artifacts | |
delete-merged: true |