n8n/.github/workflows/e2e-tests-pr.yml
Milorad FIlipović 1fb5166376
ci: Fix wrong ref in PR workflows which broke external builds (#7431)
Github issue / Community forum post (link here to close automatically):
#7423

This PR updates reference passed to the `checkout` action by the
`cy-pull-request.ym`. This should fix three existing issues:
- Failing unit tests for external pull requests
- Failing e2e tests for external PRs
- Passing empty `ref` to `lint` job which makes linter run on a wrong
branch
2023-10-13 10:44:26 +02:00

52 lines
1.8 KiB
YAML

name: PR E2E
on:
pull_request_review:
types: [submitted]
branch:
- 'master'
jobs:
run-e2e-tests:
name: E2E [Electron/Node 18]
uses: ./.github/workflows/e2e-reusable.yml
if: ${{ github.event.review.state == 'approved' && !contains(github.event.pull_request.labels.*.name, 'community') }}
with:
pr_number: ${{ github.event.pull_request.number }}
user: ${{ github.event.pull_request.user.login || 'PR User' }}
spec: 'e2e/*'
secrets:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
post-e2e-tests:
runs-on: ubuntu-latest
name: E2E [Electron/Node 18] - Checks
needs: [run-e2e-tests]
if: always()
steps:
- name: E2E success comment
if: ${{!contains(github.event.pull_request.labels.*.name, 'community') && needs.run-e2e-tests.outputs.tests_passed == 'true' }}
uses: peter-evans/create-or-update-comment@v3
with:
issue-number: ${{ github.event.pull_request.number }}
body: |
:white_check_mark: All Cypress E2E specs passed
token: ${{ secrets.GITHUB_TOKEN }}
- name: E2E fail comment
if: needs.run-e2e-tests.result == 'failure'
uses: peter-evans/create-or-update-comment@v3
with:
issue-number: ${{ github.event.pull_request.number }}
body: |
:warning: Some Cypress E2E specs are failing, please fix them before merging
token: ${{ secrets.GITHUB_TOKEN }}
- name: Success job if community PR
if: ${{ contains(github.event.pull_request.labels.*.name, 'community') }}
run: exit 0
- name: Fail job if run-e2e-tests failed
if: ${{ (github.event.review.state != 'approved' && github.event.review.state != 'commented') || needs.run-e2e-tests.result == 'failure' }}
run: exit 1