diff options
author | Andrew Grimberg <agrimberg@linuxfoundation.org> | 2023-08-17 10:44:50 -0700 |
---|---|---|
committer | Andrew Grimberg <agrimberg@linuxfoundation.org> | 2023-08-17 10:44:50 -0700 |
commit | 0824375db381d0fdaeeb05a2c353d26e2a30160e (patch) | |
tree | ce9e3960dc4d468bb48aa6cd566e81728aedd99e | |
parent | e7e88528d17cf9be68da1020747c95ed2a3e0824 (diff) |
Test: Test new fetch from Gerrit ability
A new feature has been added to the gerrit checkout action that is
supposed to try checking out the change directly from Gerrit if it fails
to get it from the GitHub mirror. This puts a job in place in an
advisory position to allow us to validate over time if this is working
correctly.
Issue-ID: CIMAN-33
Change-Id: Idabf008cc4e6f29190714cd606e4475936640c2f
Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>
-rw-r--r-- | .github/workflows/gerrit-required-verify-no-vote.yaml | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/.github/workflows/gerrit-required-verify-no-vote.yaml b/.github/workflows/gerrit-required-verify-no-vote.yaml new file mode 100644 index 0000000..aed0dc8 --- /dev/null +++ b/.github/workflows/gerrit-required-verify-no-vote.yaml @@ -0,0 +1,114 @@ +--- +name: Gerrit Required Verify (Non-voting) + +# yamllint disable-line rule:truthy +on: + workflow_dispatch: + inputs: + GERRIT_BRANCH: + description: "Branch that change is against" + required: true + type: string + GERRIT_CHANGE_ID: + description: "The ID for the change" + required: true + type: string + GERRIT_CHANGE_NUMBER: + description: "The Gerrit number" + required: true + type: string + GERRIT_CHANGE_URL: + description: "URL to the change" + required: true + type: string + GERRIT_EVENT_TYPE: + description: "Type of Gerrit event" + required: true + type: string + GERRIT_PATCHSET_NUMBER: + description: "The patch number for the change" + required: true + type: string + GERRIT_PATCHSET_REVISION: + description: "The revision sha" + required: true + type: string + GERRIT_PROJECT: + description: "Project in Gerrit" + required: true + type: string + GERRIT_REFSPEC: + description: "Gerrit refspec of change" + required: true + type: string + TARGET_REPO: + # yamllint disable-line rule:line-length + description: "The target GitHub repository needing the required workflow" + required: true + type: string + +concurrency: + # yamllint disable-line rule:line-length + group: required-verify-${{ github.workflow }}-${{ github.event.inputs.GERRIT_CHANGE_ID || github.run_id }} + cancel-in-progress: true + +permissions: read-all + +jobs: + prepare: + runs-on: ubuntu-latest + steps: + - name: Clear votes + # yamllint disable-line rule:line-length + uses: lfit/gerrit-review-action@6ac4c2322b68c0120a9b516eb0421491ee1b3fdf # v0.4 + with: + host: ${{ vars.GERRIT_SERVER }} + username: ${{ vars.GERRIT_SSH_USER }} + key: ${{ secrets.GERRIT_SSH_PRIVKEY }} + known_hosts: ${{ vars.GERRIT_KNOWN_HOSTS }} + gerrit-change-number: ${{ inputs.GERRIT_CHANGE_NUMBER }} + gerrit-patchset-number: ${{ inputs.GERRIT_PATCHSET_NUMBER }} + vote-type: clear + comment-only: true + - name: Allow replication + run: sleep 10s + + info-yaml-verify: + needs: prepare + # yamllint disable-line rule:line-length + uses: lfit/releng-reusable-workflows/.github/workflows/compose-info-yaml-verify-testing.yaml@main + with: + GERRIT_BRANCH: ${{ inputs.GERRIT_BRANCH }} + GERRIT_CHANGE_ID: ${{ inputs.GERRIT_CHANGE_ID }} + GERRIT_CHANGE_NUMBER: ${{ inputs.GERRIT_CHANGE_NUMBER }} + GERRIT_CHANGE_URL: ${{ inputs.GERRIT_CHANGE_URL }} + GERRIT_EVENT_TYPE: ${{ inputs.GERRIT_EVENT_TYPE }} + GERRIT_PATCHSET_NUMBER: ${{ inputs.GERRIT_PATCHSET_NUMBER }} + GERRIT_PATCHSET_REVISION: ${{ inputs.GERRIT_PATCHSET_REVISION }} + GERRIT_PROJECT: ${{ inputs.GERRIT_PROJECT }} + GERRIT_REFSPEC: ${{ inputs.GERRIT_REFSPEC }} + TARGET_REPO: ${{ inputs.TARGET_REPO }} + secrets: + GERRIT_SSH_REQUIRED_PRIVKEY: ${{ secrets.GERRIT_SSH_REQUIRED_PRIVKEY }} + + vote: + if: ${{ always() }} + # yamllint enable rule:line-length + needs: [prepare, info-yaml-verify] + runs-on: ubuntu-latest + steps: + - name: Get conclusion + # yamllint disable-line rule:line-length + uses: technote-space/workflow-conclusion-action@45ce8e0eb155657ab8ccf346ade734257fd196a5 # v3.0.3 + - name: Set vote + # yamllint disable-line rule:line-length + uses: lfit/gerrit-review-action@6ac4c2322b68c0120a9b516eb0421491ee1b3fdf # v0.4 + with: + host: ${{ vars.GERRIT_SERVER }} + username: ${{ vars.GERRIT_SSH_USER }} + key: ${{ secrets.GERRIT_SSH_PRIVKEY }} + known_hosts: ${{ vars.GERRIT_KNOWN_HOSTS }} + gerrit-change-number: ${{ inputs.GERRIT_CHANGE_NUMBER }} + gerrit-patchset-number: ${{ inputs.GERRIT_PATCHSET_NUMBER }} + vote-type: ${{ env.WORKFLOW_CONCLUSION }} + comment-only: true |