1
name: Integration Tests (ci-integration)
8
description: "Pull request number."
11
description: "Context in which the workflow runs. If PR is from a fork, will be the PR target branch (general case). If PR is NOT from a fork, will be the PR branch itself (this allows committers to test changes to workflows directly from PRs)."
14
description: "SHA under test (head of the PR branch)."
17
description: "[JSON object] Arbitrary arguments passed from the trigger comment via regex capture group. Parse with 'fromJson(inputs.extra-args).argName' in workflow."
48
${{ github.workflow }}
49
${{ github.event_name }}
51
(github.event_name == 'push' && github.sha) ||
52
(github.event_name == 'workflow_dispatch' && github.event.inputs.PR-number)
54
cancel-in-progress: true
58
if: ${{ github.event_name != 'push' }}
59
name: Commit Status Start
60
runs-on: ubuntu-latest
62
- name: Set initial commit status
63
uses: myrotvorets/set-commit-status-action@38f3f27c7d52fb381273e95542f07f0fba301307
65
sha: ${{ inputs.SHA || github.sha }}
68
name: Integration Test
72
- name: Checkout context ref (trusted)
73
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
75
ref: ${{ inputs.context-ref || github.sha }}
76
persist-credentials: false
78
- name: Set Environment Variables
79
uses: ./.github/actions/set-env-variables
84
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
85
SHA="${{ inputs.SHA }}"
87
SHA="${{ github.sha }}"
89
echo sha=${SHA} >> $GITHUB_OUTPUT
93
- name: Checkout pull request branch (NOT TRUSTED)
94
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
96
ref: ${{ steps.vars.outputs.sha }}
97
persist-credentials: false
100
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
105
- name: Prepare environment
110
- name: Run integration tests
113
export PATH=/usr/local/clang/bin:$PATH
115
export DOCKER_BUILD_FLAGS=--quiet
119
if: ${{ always() && github.event_name != 'push' }}
120
name: Commit Status Final
121
needs: integration-test
122
runs-on: ubuntu-latest
124
- name: Set final commit status
125
uses: myrotvorets/set-commit-status-action@38f3f27c7d52fb381273e95542f07f0fba301307
127
sha: ${{ inputs.SHA || github.sha }}
128
status: ${{ needs.integration-test.result }}