Configure CI testing workflows (#717) #1493
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: functional-tests | |
on: | |
# we use pull_request_target to run the CI also for forks | |
pull_request_target: | |
types: [opened, reopened, synchronize, labeled] | |
push: | |
branches: [main] | |
workflow_dispatch: | |
workflow_call: | |
inputs: | |
checkout-ref: | |
required: true | |
type: string | |
checkout-repository: | |
required: true | |
type: string | |
jobs: | |
# workflow that is invoked when for PRs with labels 'enable-functional-tests' | |
functional-tests-pr: | |
name: Functional Tests - PR | |
if: contains(github.event.pull_request.labels.*.name, 'enable-functional-tests') | |
uses: ./.github/workflows/functional-tests-workflow.yml | |
secrets: inherit | |
permissions: | |
id-token: write | |
contents: read | |
with: | |
# this allows to pick the branch from the PR | |
checkout-ref: ${{ github.event.pull_request.head.ref }} | |
# this allows to work on fork | |
checkout-repository: ${{ github.event.pull_request.head.repo.full_name }} | |
# workflow that is invoked when a push to main happens | |
functional-tests-main: | |
name: Functional Tests - main | |
if: | | |
github.event_name == 'push' && github.ref == 'refs/heads/main' | |
|| github.event_name == 'workflow_dispatch' | |
|| github.event_name == 'workflow_call' | |
uses: ./.github/workflows/functional-tests-workflow.yml | |
secrets: inherit | |
permissions: | |
id-token: write | |
contents: read | |
with: | |
checkout-ref: ${{ github.ref }} | |
checkout-repository: ${{ github.repository }} |