chore: Always run end-to-end tests (#3234)

* chore: Always run e2e tests

* chore: Parallelize browsers
This commit is contained in:
Michael Li authored and GitHub committed 2026-04-13 15:08:21 -04:00
1 parent dab50e352d
commit 51be681758
2 files changed
+11 -24

No files matched your search

+10 -16
View File
@@ -3,13 +3,6 @@ name: Test E2E Admin UI
on: on:
pull_request: pull_request:
types: [labeled, opened, synchronize, reopened] types: [labeled, opened, synchronize, reopened]
paths:
- 'ui/admin/**'
- 'e2e-tests/*'
- 'e2e-tests/api-client/**'
- 'e2e-tests/helpers/**'
- 'e2e-tests/admin/**'
- '.github/workflows/test-e2e-admin-ui.yaml'
workflow_dispatch: workflow_dispatch:
inputs: inputs:
boundary-enterprise-branch: boundary-enterprise-branch:
@@ -33,6 +26,8 @@ jobs:
runs-on: ${{ fromJSON(vars.RUNNER_UBUNTU_22) }} runs-on: ${{ fromJSON(vars.RUNNER_UBUNTU_22) }}
strategy: strategy:
matrix: matrix:
boundary_edition: [community, enterprise]
browser: [chromium, firefox, webkit]
include: include:
- boundary_edition: community - boundary_edition: community
github_repo: hashicorp/boundary github_repo: hashicorp/boundary
@@ -48,6 +43,11 @@ jobs:
enos_scenario: e2e_ui_docker_ent enos_scenario: e2e_ui_docker_ent
test_command: admin:ent:docker test_command: admin:ent:docker
boundary_branch: ${{ github.event.inputs.boundary-enterprise-branch || 'main' }} boundary_branch: ${{ github.event.inputs.boundary-enterprise-branch || 'main' }}
# in boundary-ui-enterprise, only run tests on chromium because playwright dependencies can't
# be installed on self-hosted runners due to permission issues
exclude:
- browser: ${{ github.repository == 'hashicorp/boundary-ui-enterprise' && 'firefox' }}
- browser: ${{ github.repository == 'hashicorp/boundary-ui-enterprise' && 'webkit' }}
fail-fast: false fail-fast: false
env: env:
ENOS_VAR_e2e_debug_no_run: true ENOS_VAR_e2e_debug_no_run: true
@@ -217,19 +217,13 @@ jobs:
run: | run: |
source <(bash ./support/src/${{matrix.folder_name}}/enos/scripts/test_e2e_env.sh) source <(bash ./support/src/${{matrix.folder_name}}/enos/scripts/test_e2e_env.sh)
cd e2e-tests cd e2e-tests
if [[ "${{ github.repository }}" == "hashicorp/boundary-ui" ]]; then pnpm run ${{ matrix.test_command }} --project=${{ matrix.browser}} --reporter=html
pnpm run ${{ matrix.test_command }} --reporter=html
elif [[ "${{ github.repository }}" == "hashicorp/boundary-ui-enterprise" ]]; then
# only run tests on chromium because playwright dependencies can't
# be installed to support other browsers
pnpm run ${{ matrix.test_command }} --project=chromium --reporter=html
fi
- name: Upload Playwright report - name: Upload Playwright report
if: ${{ failure() }} if: ${{ failure() }}
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with: with:
name: playwright-report-${{ matrix.boundary_edition }} name: playwright-report-${{ matrix.boundary_edition }}-${{ matrix.browser }}
path: e2e-tests/playwright-report path: e2e-tests/playwright-report
- name: Clean up test infra - name: Clean up test infra
@@ -249,4 +243,4 @@ jobs:
token: ${{ secrets.SLACK_BOT_TOKEN }} token: ${{ secrets.SLACK_BOT_TOKEN }}
payload: | payload: |
channel: ${{ secrets.SLACK_CHANNEL_ID }} channel: ${{ secrets.SLACK_CHANNEL_ID }}
text: ":x: admin ui e2e tests failed: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}\n*Branch:* ${{ github.repository }}:${{ github.head_ref }}" text: ":x: admin ui e2e tests (${{ matrix.boundary_edition }}:${{ matrix.browser }}) failed: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}\n*Branch:* ${{ github.repository }}:${{ github.head_ref || github.ref_name }}"
+1 -8
View File
@@ -3,13 +3,6 @@ name: Test E2E Desktop Client
on: on:
pull_request: pull_request:
types: [labeled, opened, synchronize, reopened] types: [labeled, opened, synchronize, reopened]
paths:
- 'ui/desktop/**'
- 'e2e-tests/*'
- 'e2e-tests/api-client/**'
- 'e2e-tests/helpers/**'
- 'e2e-tests/desktop/**'
- '.github/workflows/test-e2e-desktop.yaml'
workflow_dispatch: workflow_dispatch:
inputs: inputs:
boundary-enterprise-branch: boundary-enterprise-branch:
@@ -187,4 +180,4 @@ jobs:
token: ${{ secrets.SLACK_BOT_TOKEN }} token: ${{ secrets.SLACK_BOT_TOKEN }}
payload: | payload: |
channel: ${{ secrets.SLACK_CHANNEL_ID }} channel: ${{ secrets.SLACK_CHANNEL_ID }}
text: ":x: desktop client e2e tests failed: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}\n*Branch:* ${{ github.repository }}:${{ github.head_ref }}" text: ":x: desktop client e2e tests failed: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}\n*Branch:* ${{ github.repository }}:${{ github.head_ref || github.ref_name }}"