mirror of
https://github.com/Comfy-Org/github-workflows.git
synced 2026-11-05 00:17:37 +00:00
[PR #338] feat(workflows): add an optional runs_on input to nine reusable workflows #338
Labels
No labels
cursor-review-catalog-drift
groom
groom
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Comfy-Org/github-workflows#338
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/Comfy-Org/github-workflows/pull/338
Author: @anupreet-comfy
Created: 9/29/2026
Status: 🔄 Open
Base:
main← Head:anupreet-comfy/be-17523-runs-on-input📝 Commits (1)
4912b29feat(workflows): add an optional runs_on input to nine reusable workflows📊 Changes
20 files changed (+205 additions, -69 deletions)
View changed files
📝
.github/cursor-review/README.md(+1 -0)📝
.github/workflows/agents-md-integrity.yml(+14 -1)📝
.github/workflows/assign-reviewers.yml(+14 -1)📝
.github/workflows/cursor-review.yml(+48 -27)📝
.github/workflows/detect-unreviewed-merge.yml(+14 -1)📝
.github/workflows/groom.yml(+44 -30)📝
.github/workflows/linear-ticket.yml(+14 -1)📝
.github/workflows/pr-area-label.yml(+15 -2)📝
.github/workflows/pr-risk.yml(+16 -3)📝
.github/workflows/pr-size.yml(+15 -2)📝
README.md(+1 -1)📝
docs/callers/agents-md-integrity.md(+1 -0)📝
docs/callers/assign-reviewers.md(+1 -0)📝
docs/callers/cursor-review.md(+1 -0)📝
docs/callers/detect-unreviewed-merge.md(+1 -0)📝
docs/callers/groom.md(+1 -0)📝
docs/callers/linear-ticket.md(+1 -0)📝
docs/callers/pr-area-label.md(+1 -0)📝
docs/callers/pr-risk.md(+1 -0)📝
docs/callers/pr-size.md(+1 -0)📄 Description
Nine reusable workflows gain an optional
runs_oninput, so a private caller can run their jobs on its own self-hosted runners.cursor-review-auto-label.ymlalready has this input (.github/workflows/cursor-review-auto-label.yml:80and:128), and this PR copies its contract exactly: a JSON-encoded string, default'"ubuntu-latest"', read by every job asruns-on: ${{ fromJSON(inputs.runs_on) }}.runs_onagents-md-integrity.ymlassign-reviewers.ymlcursor-review.ymldetect-unreviewed-merge.ymlgroom.ymllinear-ticket.ymlpr-area-label.ymlpr-risk.ymlpr-size.ymlDefault behaviour and public callers
A caller that passes nothing gets
ubuntu-lateston every job, exactly as before, so merging this PR and bumping callers moves no job. Nothing in this repository picks a self-hosted label; only a caller that writesruns_on:in its own workflow file changes its runner. The input description and each caller guide tell public repositories to keep the default, because their pull requests run code from anyone. A self-hosted runner group that admits only selected private repositories also refuses a job from any other repository, so a public caller that did pass such a label would queue rather than run there (runner-group policy, not something this PR enforces).cursor-review.ymlcarried aruns_oninput until #31 dropped it inside an unrelated judge-parsing fix;.github/reviewers.yml:67-69still records the approval of that parameterization. The README sentence that said cursor-review has noruns_oninput now says the runner defaults toubuntu-latestand a private caller may override it. The comments incursor-review.ymlandgroom.ymlthat reasoned "every job here isubuntu-latest" now say every job defaults to it, and name aruns_onoverride as the way a stale self-hosted runner could reach the empty-job.workflow_shabranch.Docs
Each of the nine
docs/callers/*.mdInputs tables gains aruns_onrow, and.github/cursor-review/README.mdgains a knob-table row;test_inputs_docs_driftfailed on the knob table until that row existed.Verification
actionlint1.7.12: 71 findings onorigin/mainand 71 on this branch, identical after stripping line numbers.zizmor1.22.0 (auditor persona, JSON): identical findings per audit and file on both sides; the default persona shows the same 6 unsuppressed findings on both.check_workflow_pins.py: OK (11workflows_refdeclarations, 156 SHA-pinneduses:).check_agents_md.py --root .: passed.cursor-review,workflow-pins(includes the docs-drift tests),groom,agents-md-integrityandlinear-ticketpass.bump-callersand most ofpr-riskpass locally;pr-risk/test_grade_targets.sh,area-label/test_apply.shandarea-label/test_lib.shfail identically onorigin/mainunder macOS/bin/bash3.2, so this PR did not cause those failures.check-org-repo-literals.shneeds a newer bash than the macOS one and did not run locally.cursor-review-auto-label.ymlpattern.After merge
The bump-callers fleets will open SHA-bump PRs in each enrolled repository. Those bumps change nothing on their own; a repository opts in afterwards by adding
runs_on:to its caller.Part of BE-17780
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.