feat(components): add strategy to v1 GCPC custom job components/utils #455
This file contains 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
# This workflow checks if all CI checks have passed by polling every 5 minutes for a total of 8 attempts. | |
name: CI Check | |
on: | |
pull_request: | |
types: [opened, synchronize, reopened, labeled] | |
jobs: | |
check_ci_status: | |
runs-on: ubuntu-latest | |
permissions: | |
checks: read | |
pull-requests: write | |
steps: | |
- name: Check out the repository | |
uses: actions/checkout@v3 | |
- name: Check for 'needs-ok-to-test' and 'ok-to-test' labels | |
id: label_check | |
run: | | |
LABELS=$(gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name') | |
if echo "$LABELS" | grep -q 'needs-ok-to-test'; then | |
echo "Label 'needs-ok-to-test' found. Skipping the workflow." | |
exit 0 | |
fi | |
if echo "$LABELS" | grep -q 'ok-to-test'; then | |
echo "Label 'ok-to-test' found. Continuing the workflow." | |
else | |
echo "Label 'ok-to-test' not found. Skipping the workflow." | |
exit 0 | |
fi | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Check if all CI checks passed | |
uses: wechuli/allcheckspassed@0b68b3b7d92e595bcbdea0c860d05605720cf479 | |
with: | |
delay: '5' | |
retries: '8' | |
polling_interval: '5' | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Save PR payload | |
shell: bash | |
run: | | |
mkdir -p ./pr | |
echo ${{ github.event.pull_request.number }} >> ./pr/pr_number | |
echo ${{ github.event.action }} >> ./pr/event_action | |
- uses: actions/upload-artifact@v3.1.0 | |
with: | |
name: pr | |
path: pr/ |