This repository was archived by the owner on Feb 11, 2026. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +60
-0
lines changed
Expand file tree Collapse file tree 1 file changed +60
-0
lines changed Original file line number Diff line number Diff line change 1+ # SPDX-License-Identifier: Apache-2.0
2+ # yamllint disable rule:line-length
3+
4+ name : Status Checks Reusable Workflow
5+
6+ on :
7+ workflow_call :
8+ inputs :
9+ job_ids :
10+ description : ' Space-separated job ids to wait on for status checks'
11+ required : true
12+ type : string
13+ delay :
14+ description : ' Period in seconds to wait before first poll of GitHub Check Runs'
15+ required : false
16+ type : number
17+ default : 10
18+ interval :
19+ description : ' Interval or period in seconds between polling GitHub Check Runs'
20+ required : false
21+ type : number
22+ default : 10
23+ timeout :
24+ description : ' Timeout in seconds to complete polling GitHub Check Runs'
25+ required : false
26+ type : number
27+ default : 3600
28+
29+ env :
30+ LC_ALL : en_US.UTF-8
31+
32+ defaults :
33+ run :
34+ shell : bash
35+
36+ permissions :
37+ checks : read
38+
39+ jobs :
40+ status-checks :
41+ runs-on : ubuntu-latest
42+ steps :
43+ - name : " Harden Runner"
44+ uses : step-security/harden-runner@4d991eb9b905ef189e4c376166672c3f2f230481 # v2.11.0
45+ with :
46+ egress-policy : audit # TODO: change to 'egress-policy: block' after couple of runs
47+
48+ - name : " Set status check variables"
49+ id : set_variables
50+ run : |
51+ jq -nr '[$ARGS.positional[] | split("\\s"; null) | map(select(. != ""))] | flatten | join("|") | ("match_pattern=(" + . + ")")' --args "${{ inputs.job_ids }}" >> "$GITHUB_OUTPUT"
52+
53+ - name : " Wait for status checks"
54+ uses : poseidon/wait-for-status-checks@899c768d191b56eef585c18f8558da19e1f3e707 # v0.6.0
55+ with :
56+ token : ${{ secrets.GITHUB_TOKEN }}
57+ match_pattern : ${{ steps.set_variables.outputs.match_pattern }}
58+ delay : ${{ inputs.delay }}
59+ interval : ${{ inputs.interval }}
60+ timeout : ${{ inputs.timeout }}
You can’t perform that action at this time.
0 commit comments