Skip to content

test: Integrate Git Hub Action Results into Tide #6

test: Integrate Git Hub Action Results into Tide

test: Integrate Git Hub Action Results into Tide #6

Workflow file for this run

# This workflow runs on pull requests when they are opened, synchronized, or reopened.
# It performs the following actions:
# 1. Resets the 'ci-passed' label status when a pull request is synchronized or reopened,
# indicating that changes have been pushed and CI needs to rerun.
# 2. Polls every 5 minutes to check if all CI checks have passed.
# 3. Adds the 'ci-passed' label to the pull request if all CI checks pass successfully.
name: Check CI Completion
on:
pull_request:
types: [opened, synchronize, reopened]
permissions:
checks: read
pull-requests: write
jobs:
reset_ci_passed_label:
if: github.event_name == 'pull_request' && (github.event.action == 'synchronize' || github.event.action == 'reopened')
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Reset ci-passed label status on PR Syncronization
run: |
echo "Resetting 'ci-passed' label as new changes have been pushed."
gh pr edit ${{ github.event.pull_request.number }} --remove-label "ci-passed" --repo $GITHUB_REPOSITORY || echo "Label not present"
check_ci_status:
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Check if all CI checks passed
uses: wechuli/allcheckspassed@0b68b3b7d92e595bcbdea0c860d05605720cf479
with:
GITHUB_TOKEN: ${{ env.GITHUB_TOKEN }}
delay: '5'
retries: '7'
polling_interval: '5'
- name: Add 'ci-passed' label
if: success()
run: |
gh pr edit ${{ github.event.pull_request.number }} --add-label "ci-passed" --repo $GITHUB_REPOSITORY