refactor: create new gitops pipeline #557
This file contains hidden or 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: check-extended | |
| on: | |
| issue_comment: | |
| types: | |
| - created | |
| jobs: | |
| prepare-env: | |
| runs-on: | |
| group: infra1-runners-arc | |
| labels: runners-small | |
| permissions: read-all | |
| outputs: | |
| branch: ${{ steps.branch.outputs.branch }} | |
| ref: refs/pull/${{ github.event.issue.number }}/merge | |
| commit: ${{ steps.commit.outputs.commit }} | |
| pr_number: ${{ github.event.issue.number }} | |
| project: ${{ github.repository }} | |
| changed_files: ${{ steps.changed-files.outputs.all_changed_files }} | |
| steps: | |
| - name: Branch name | |
| id: branch | |
| run: |- | |
| branch=$(echo "${{ github.ref }}" | sed 's/^refs\/heads\///') | |
| echo "branch=$branch" >> "$GITHUB_OUTPUT" | |
| - name: Commit | |
| id: commit | |
| run: |- | |
| pr_head_sha=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ | |
| "https://api.github.com/repos/${{ github.repository }}/pulls/${{ github.event.issue.number }}" | \ | |
| jq --raw-output .head.sha) | |
| echo "commit=$pr_head_sha" >> "$GITHUB_OUTPUT" | |
| - uses: actions/checkout@v4 | |
| with: | |
| ref: refs/pull/${{ github.event.issue.number }}/merge | |
| - name: Get changed files | |
| id: changed-files | |
| uses: tj-actions/changed-files@v45 | |
| if: ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, 'extended test') }} | |
| gooddata-ruby-integration-tests-zuul: | |
| runs-on: | |
| group: infra1-runners-arc | |
| labels: runners-small | |
| needs: | |
| - prepare-env | |
| permissions: | |
| contents: read | |
| id-token: write | |
| if: ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, 'extended test') }} | |
| steps: | |
| - name: Call Jenkins trigger | |
| id: call-jenkins | |
| uses: gooddata/github-actions-public/jenkins/trigger@master | |
| with: | |
| server: ${{ secrets.JENKINS_ADDRESS }} | |
| folder: lcm | |
| job-name: gooddata-ruby-integration-tests-zuul | |
| vault-url: ${{ secrets.VAULT_ADDRESS }} | |
| params: |- | |
| { | |
| "GH_BRANCH": "${{ needs.prepare-env.outputs.branch }}", | |
| "GH_REF": "${{ needs.prepare-env.outputs.ref }}", | |
| "GH_COMMIT": "${{ needs.prepare-env.outputs.commit }}", | |
| "GH_URL": "[email protected]:", | |
| "GH_CHANGE": "${{ needs.prepare-env.outputs.pr_number }}", | |
| "GH_PROJECT": "${{ needs.prepare-env.outputs.project }}", | |
| "BUILD_BY_GITHUB": "true", | |
| "GH_PIPELINE": "check-extended" | |
| } | |
| comment-pr: 'true' | |
| gooddata-lcm-ruby-integration-e2e-zuul: | |
| runs-on: | |
| group: infra1-runners-arc | |
| labels: runners-small | |
| needs: | |
| - prepare-env | |
| permissions: | |
| contents: read | |
| id-token: write | |
| if: ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, 'extended test') }} | |
| steps: | |
| - name: Call Jenkins trigger | |
| id: call-jenkins | |
| uses: gooddata/github-actions-public/jenkins/trigger@master | |
| with: | |
| server: ${{ secrets.JENKINS_ADDRESS }} | |
| folder: lcm | |
| job-name: gooddata-lcm-ruby-integration-e2e-zuul | |
| vault-url: ${{ secrets.VAULT_ADDRESS }} | |
| params: |- | |
| { | |
| "GH_BRANCH": "${{ needs.prepare-env.outputs.branch }}", | |
| "GH_REF": "${{ needs.prepare-env.outputs.ref }}", | |
| "GH_COMMIT": "${{ needs.prepare-env.outputs.commit }}", | |
| "GH_URL": "[email protected]:", | |
| "GH_CHANGE": "${{ needs.prepare-env.outputs.pr_number }}", | |
| "GH_PROJECT": "${{ needs.prepare-env.outputs.project }}", | |
| "BUILD_BY_GITHUB": "true", | |
| "GH_PIPELINE": "check-extended" | |
| } | |
| comment-pr: 'true' | |
| gooddata-lcm-ruby-integration-release-zuul: | |
| runs-on: | |
| group: infra1-runners-arc | |
| labels: runners-small | |
| needs: | |
| - prepare-env | |
| permissions: | |
| contents: read | |
| id-token: write | |
| if: ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, 'extended test') }} | |
| steps: | |
| - name: Call Jenkins trigger | |
| id: call-jenkins | |
| uses: gooddata/github-actions-public/jenkins/trigger@master | |
| with: | |
| server: ${{ secrets.JENKINS_ADDRESS }} | |
| folder: lcm | |
| job-name: gooddata-lcm-ruby-integration-release-zuul | |
| vault-url: ${{ secrets.VAULT_ADDRESS }} | |
| params: |- | |
| { | |
| "GH_BRANCH": "${{ needs.prepare-env.outputs.branch }}", | |
| "GH_REF": "${{ needs.prepare-env.outputs.ref }}", | |
| "GH_COMMIT": "${{ needs.prepare-env.outputs.commit }}", | |
| "GH_URL": "[email protected]:", | |
| "GH_CHANGE": "${{ needs.prepare-env.outputs.pr_number }}", | |
| "GH_PROJECT": "${{ needs.prepare-env.outputs.project }}", | |
| "BUILD_BY_GITHUB": "true", | |
| "GH_PIPELINE": "check-extended" | |
| } | |
| comment-pr: 'true' | |
| gooddata-lcm-ruby-integration-others-zuul: | |
| runs-on: | |
| group: infra1-runners-arc | |
| labels: runners-small | |
| needs: | |
| - prepare-env | |
| permissions: | |
| contents: read | |
| id-token: write | |
| if: ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, 'extended test') }} | |
| steps: | |
| - name: Call Jenkins trigger | |
| id: call-jenkins | |
| uses: gooddata/github-actions-public/jenkins/trigger@master | |
| with: | |
| server: ${{ secrets.JENKINS_ADDRESS }} | |
| folder: lcm | |
| job-name: gooddata-lcm-ruby-integration-others-zuul | |
| vault-url: ${{ secrets.VAULT_ADDRESS }} | |
| params: |- | |
| { | |
| "GH_BRANCH": "${{ needs.prepare-env.outputs.branch }}", | |
| "GH_REF": "${{ needs.prepare-env.outputs.ref }}", | |
| "GH_COMMIT": "${{ needs.prepare-env.outputs.commit }}", | |
| "GH_URL": "[email protected]:", | |
| "GH_CHANGE": "${{ needs.prepare-env.outputs.pr_number }}", | |
| "GH_PROJECT": "${{ needs.prepare-env.outputs.project }}", | |
| "BUILD_BY_GITHUB": "true", | |
| "GH_PIPELINE": "check-extended" | |
| } | |
| comment-pr: 'true' | |
| gooddata-lcm-ruby-integration-slow-zuul: | |
| runs-on: | |
| group: infra1-runners-arc | |
| labels: runners-small | |
| needs: | |
| - prepare-env | |
| permissions: | |
| contents: read | |
| id-token: write | |
| if: ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, 'extended test') }} | |
| steps: | |
| - name: Call Jenkins trigger | |
| id: call-jenkins | |
| uses: gooddata/github-actions-public/jenkins/trigger@master | |
| with: | |
| server: ${{ secrets.JENKINS_ADDRESS }} | |
| folder: lcm | |
| job-name: gooddata-lcm-ruby-integration-slow-zuul | |
| vault-url: ${{ secrets.VAULT_ADDRESS }} | |
| params: |- | |
| { | |
| "GH_BRANCH": "${{ needs.prepare-env.outputs.branch }}", | |
| "GH_REF": "${{ needs.prepare-env.outputs.ref }}", | |
| "GH_COMMIT": "${{ needs.prepare-env.outputs.commit }}", | |
| "GH_URL": "[email protected]:", | |
| "GH_CHANGE": "${{ needs.prepare-env.outputs.pr_number }}", | |
| "GH_PROJECT": "${{ needs.prepare-env.outputs.project }}", | |
| "BUILD_BY_GITHUB": "true", | |
| "GH_PIPELINE": "check-extended" | |
| } | |
| comment-pr: 'true' | |
| gooddata-lcm-ruby-integration-userprov-zuul: | |
| runs-on: | |
| group: infra1-runners-arc | |
| labels: runners-small | |
| needs: | |
| - prepare-env | |
| permissions: | |
| contents: read | |
| id-token: write | |
| if: ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, 'extended test') }} | |
| steps: | |
| - name: Call Jenkins trigger | |
| id: call-jenkins | |
| uses: gooddata/github-actions-public/jenkins/trigger@master | |
| with: | |
| server: ${{ secrets.JENKINS_ADDRESS }} | |
| folder: lcm | |
| job-name: gooddata-lcm-ruby-integration-userprov-zuul | |
| vault-url: ${{ secrets.VAULT_ADDRESS }} | |
| params: |- | |
| { | |
| "GH_BRANCH": "${{ needs.prepare-env.outputs.branch }}", | |
| "GH_REF": "${{ needs.prepare-env.outputs.ref }}", | |
| "GH_COMMIT": "${{ needs.prepare-env.outputs.commit }}", | |
| "GH_URL": "[email protected]:", | |
| "GH_CHANGE": "${{ needs.prepare-env.outputs.pr_number }}", | |
| "GH_PROJECT": "${{ needs.prepare-env.outputs.project }}", | |
| "BUILD_BY_GITHUB": "true", | |
| "GH_PIPELINE": "check-extended" | |
| } | |
| comment-pr: 'true' | |
| ready-to-merge: | |
| runs-on: | |
| group: infra1-runners-arc | |
| labels: runners-small | |
| if: always() && ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, 'extended test') }} | |
| needs: | |
| - prepare-env | |
| - gooddata-ruby-integration-tests-zuul | |
| - gooddata-lcm-ruby-integration-e2e-zuul | |
| - gooddata-lcm-ruby-integration-release-zuul | |
| - gooddata-lcm-ruby-integration-others-zuul | |
| - gooddata-lcm-ruby-integration-slow-zuul | |
| - gooddata-lcm-ruby-integration-userprov-zuul | |
| steps: | |
| - name: Check if needed jobs succeeded | |
| uses: re-actors/alls-green@release/v1 | |
| with: | |
| allowed-skips: ${{ toJSON(needs) }} | |
| jobs: ${{ toJSON(needs) }} |