Skip to content
Snippets Groups Projects
Unverified Commit e516a223 authored by Nemanja Glumac's avatar Nemanja Glumac Committed by GitHub
Browse files

Revert external workflow custom solution (#35993)

* Revert "Improve external filter checks (#35740)"

This reverts commit 8ef7eb59.

* Revert "Make Chromatic workflow 3rd party friendly (#35708)"

This reverts commit 931029e0.

* Revert "Make E2E workflow 3rd party friendly (#35643)"

This reverts commit b547eb7e.

* Revert "PoC External workflow run trigger (#34951)"

This reverts commit df16fc89.
parent 4de1461a
No related branches found
No related tags found
No related merge requests found
......@@ -6,31 +6,12 @@ on:
- "master"
pull_request:
types: [synchronize, labeled, unlabeled]
workflow_run:
workflows: [External Trigger Filter]
types: [completed]
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
cancel-in-progress: true
jobs:
external-filter:
# 1. within the organization OR
# 2. fork
if: |
github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository ||
github.event.workflow_run.conclusion == 'success'
runs-on: ubuntu-22.04
timeout-minutes: 3
steps:
- run: |
if ${{ github.event.pull_request.head.repo.full_name == github.repository }}; then
echo 'Running Chromatic workflow within the organization.'
elif ${{ github.event.workflow_run.conclusion == 'success' }}; then
echo "Running Chromatic workflow for the external contributor. Thank you!"
fi
files-changed:
name: Check which files changed
runs-on: ubuntu-22.04
......@@ -48,10 +29,8 @@ jobs:
filters: .github/file-paths.yaml
fe-chromatic:
needs: [files-changed, external-filter]
if: |
(needs.external-filter.result == 'success' && contains(github.event.pull_request.labels.*.name, 'chromatic')) ||
(github.ref_name == 'master' && needs.files-changed.outputs.frontend_all == 'true')
needs: files-changed
if: contains(github.event.pull_request.labels.*.name, 'chromatic') || (github.ref_name == 'master' && needs.files-changed.outputs.frontend_all == 'true')
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
......
......@@ -7,31 +7,12 @@ on:
- 'release-**'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
workflow_run:
workflows: [External Trigger Filter]
types: [completed]
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
cancel-in-progress: true
jobs:
external-filter:
# 1. within the organization OR
# 2. fork
if: |
github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository ||
github.event.workflow_run.conclusion == 'success'
runs-on: ubuntu-22.04
timeout-minutes: 3
steps:
- run: |
if ${{ github.event.pull_request.head.repo.full_name == github.repository }}; then
echo 'Running Drivers tests within the organization.'
elif ${{ github.event.workflow_run.conclusion == 'success' }}; then
echo "Running Drivers tests for the external contributor. Thank you!"
fi
files-changed:
name: Check which files changed
runs-on: ubuntu-22.04
......@@ -48,10 +29,8 @@ jobs:
filters: .github/file-paths.yaml
be-tests-athena-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -70,10 +49,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-bigquery-cloud-sdk-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -94,10 +71,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-druid-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -119,10 +94,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-googleanalytics-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -137,10 +110,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-google-related-drivers-classpath-test:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -161,10 +132,8 @@ jobs:
test-args: ':only "[metabase.query-processor-test.expressions-test metabase.driver.google-test metabase.driver.googleanalytics-test]"'
be-tests-mariadb-10-2-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -189,10 +158,8 @@ jobs:
junit-name: 'be-tests-mariadb-10-2-ee'
be-tests-mariadb-latest-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -217,10 +184,8 @@ jobs:
junit-name: 'be-tests-mariadb-latest-ee'
be-tests-mongo-4-4-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -242,10 +207,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-mongo-4-4-ssl-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -279,10 +242,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-mongo-5-0-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -304,10 +265,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-mongo-5-0-ssl-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -341,10 +300,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-mongo-latest-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -369,10 +326,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-mysql-8-0-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -397,10 +352,8 @@ jobs:
junit-name: 'be-tests-mysql-8-0-ee'
be-tests-mysql-latest-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -437,10 +390,8 @@ jobs:
junit-name: 'be-tests-mysql-latest-ee'
be-tests-oracle-18-4-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -466,10 +417,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-oracle-21-3-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -504,10 +453,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-postgres-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -536,10 +483,8 @@ jobs:
junit-name: 'be-tests-postgres-ee'
be-tests-postgres-latest-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -571,10 +516,8 @@ jobs:
junit-name: 'be-tests-postgres-latest-ee'
be-tests-presto-jdbc-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -623,10 +566,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-redshift-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -645,10 +586,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-snowflake-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -669,10 +608,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-sparksql-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -692,10 +629,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-sqlite-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -710,10 +645,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-sqlserver-2017-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -740,10 +673,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-sqlserver-2022-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......@@ -770,10 +701,8 @@ jobs:
test-args: ":exclude-tags '[:mb/once]'"
be-tests-vertica-ee:
needs: [files-changed, external-filter]
if: |
(github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true') &&
needs.external-filter.result == 'success'
needs: files-changed
if: github.event.pull_request.draft == false && needs.files-changed.outputs.backend_all == 'true'
runs-on: ubuntu-22.04
timeout-minutes: 90
env:
......
......@@ -7,31 +7,12 @@ on:
- 'release-**'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
workflow_run:
workflows: [External Trigger Filter]
types: [completed]
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
cancel-in-progress: true
jobs:
external-filter:
# 1. within the organization OR
# 2. fork
if: |
github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository ||
github.event.workflow_run.conclusion == 'success'
runs-on: ubuntu-22.04
timeout-minutes: 3
steps:
- run: |
if ${{ github.event.pull_request.head.repo.full_name == github.repository }}; then
echo 'Running E2E tests within the organization.'
elif ${{ github.event.workflow_run.conclusion == 'success' }}; then
echo "Running E2E tests for the external contributor. Thank you!"
fi
files-changed:
name: Check which files changed
runs-on: ubuntu-22.04
......@@ -59,10 +40,9 @@ jobs:
uses: ./.github/actions/build-e2e-matrix
build:
needs: [files-changed, e2e-matrix-builder, external-filter]
needs: [files-changed, e2e-matrix-builder]
if: |
!cancelled() &&
needs.external-filter.result == 'success' &&
github.event.pull_request.draft == false &&
needs.e2e-matrix-builder.result == 'success' &&
needs.files-changed.outputs.e2e_all == 'true'
......@@ -92,9 +72,9 @@ jobs:
name: metabase-${{ matrix.edition }}-${{ github.event.pull_request.head.sha || github.sha }}-uberjar
e2e-tests:
needs: [build, e2e-matrix-builder, external-filter]
needs: [build, e2e-matrix-builder]
if: |
!cancelled() && needs.build.result == 'success' && needs.external-filter.result == 'success'
!cancelled() && needs.build.result == 'success'
runs-on: ${{ matrix.runner }}
timeout-minutes: 90
name: e2e-tests-${{ matrix.name }}-${{ matrix.edition }}
......@@ -227,9 +207,9 @@ jobs:
visual-regression-tests:
runs-on: ubuntu-22.04
timeout-minutes: 60
needs: [build, external-filter]
needs: [build]
if: |
!cancelled() && needs.build.result == 'success' && needs.external-filter.result == 'success'
!cancelled() && needs.build.result == 'success'
name: percy-visual-regression-tests
steps:
- uses: actions/checkout@v3
......
name: External Trigger Filter
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
branches:
- 'master'
paths-ignore:
- '.github/**'
jobs:
trigger:
runs-on: ubuntu-22.04
timeout-minutes: 5
if: github.event.pull_request.head.repo.full_name != github.repository
steps:
- run: echo 'Thank you for your contribution to Metabase!'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment