diff --git a/.github/workflows/cron-e2e.yml b/.github/workflows/cron-e2e.yml new file mode 100644 index 000000000..3bd72d817 --- /dev/null +++ b/.github/workflows/cron-e2e.yml @@ -0,0 +1,29 @@ +name: "Cron multibrowser E2E runs" + +on: + schedule: + - cron: '0 0 * * 1-5' #At 00:00 on every day-of-week from Monday through Friday. + +jobs: + chrome: + name: "Cron browser E2E run - chrome" + uses: ./.github/workflows/pull-request.yml + with: + browser: chrome + secrets: inherit + + firefox: + name: "Cron browser E2E run - firefox" + needs: chrome + uses: ./.github/workflows/pull-request.yml + with: + browser: firefox + secrets: inherit + + webkit: + name: "Cron browser E2E run - webkit" + needs: firefox + uses: ./.github/workflows/pull-request.yml + with: + browser: webkit + secrets: inherit diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 23b676806..046894762 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -4,8 +4,11 @@ on: pull_request: types: [opened, synchronize, reopened] branches: [master, develop] - schedule: - - cron: '0 12 * * 1-5' #At 12:00 on every day-of-week from Monday through Friday. + workflow_call: + inputs: + browser: + required: true + type: string concurrency: group: ${{ github.workflow }}-${{ github.ref }} @@ -148,8 +151,8 @@ jobs: strategy: fail-fast: false matrix: - # For scheduled runs, include all browsers; for PR runs, only Chromium - browser: ${{ github.event_name != 'pull_request' && fromJSON('["chrome", "firefox", "webkit", "msedge"]') || fromJSON('["chromium"]') }} + # For workflow_call (cron) runs, use the specified browser; for PR runs, only Chromium + browser: ${{ github.event_name == 'pull_request' && fromJSON('["chromium"]') || fromJSON(format('["{0}"]', inputs.browser)) }} e2e-suites: - name: "create-actions" id: 1