--- name: Gerrit Verify # 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_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: false default: ${{ github.repository }} type: string TOX_ENVS: description: "Map of versions and envs to run" required: true type: string concurrency: # yamllint disable-line rule:line-length group: gerrit-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 uses: lfit/gerrit-review-action@v0.4 with: host: ${{ vars.GERRIT_SERVER }} username: ${{ vars.GERRIT_SSH_REQUIRED_USER }} key: ${{ secrets.GERRIT_SSH_REQUIRED_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 call-gerrit-tox-verify: needs: prepare # yamllint disable-line rule:line-length uses: lfit/releng-reusable-workflows/.github/workflows/gerrit-compose-required-tox-verify.yaml@main with: GERRIT_BRANCH: ${{ inputs.GERRIT_BRANCH }} GERRIT_CHANGE_ID: ${{ inputs.GERRIT_CHANGE_ID }} GERRIT_PROJECT: ${{ inputs.GERRIT_PROJECT }} GERRIT_REFSPEC: ${{ inputs.GERRIT_REFSPEC }} TARGET_REPO: ${{ inputs.TARGET_REPO }} TOX_ENVS: "code" vote: if: ${{ always() }} # yamllint enable rule:line-length needs: [prepare, call-gerrit-tox-verify] runs-on: ubuntu-latest steps: - uses: technote-space/workflow-conclusion-action@v3 - name: Set vote uses: lfit/gerrit-review-action@v0.4 with: host: ${{ vars.GERRIT_SERVER }} username: ${{ vars.GERRIT_SSH_REQUIRED_USER }} key: ${{ secrets.GERRIT_SSH_REQUIRED_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"