Skip to content

ci: stamp the reusable PR labeler into new repos - #11

Merged
sotashimozono merged 1 commit into
mainfrom
ci/labeler-template
Jul 28, 2026
Merged

sotashimozono merged 1 commit into
mainfrom
ci/labeler-template

Conversation

@sotashimozono

Copy link
Copy Markdown
Contributor

The hand-rolled PRLabeler.yml (a gh pr edit --add-label script) is what GitHub's
Projects-classic sunset broke on 2026-07-28: gh pr edit reads the PR over GraphQL, gets the
repository.pullRequest.projectCards deprecation notice back, and exits 1. A sweep of the three
owners found that copy in 40 repos, in nine different byte-variants — one upstream change
turned all of them red at once, on a message that has nothing to do with labelling.

scripts/init-repo.sh now stamps the thin caller, so a repo created after today cannot inherit
the copy:

  • templates/PRLabeler.private.yml — passes runner: '["self-hosted","rosina"]'
  • templates/PRLabeler.public.yml — takes the workflow's ubuntu-latest default

The implementation deliberately stays where it already lives, in
QAtlasHub/.github's labeler.yml@v1
(public, so callable from this org too), instead of being duplicated here — a second copy in a
second org config repo is the exact failure mode this is cleaning up. That workflow gained a
runner input, on-demand label creation in the established colours, and stale-breaking
removal in QAtlasHub/.github#18 so it is behaviour-identical to what it replaces.

The hand-rolled `PRLabeler.yml` (a `gh pr edit --add-label` script) is what GitHub's
Projects-classic sunset broke on 2026-07-28: `gh pr edit` reads the PR over GraphQL, gets
the deprecation notice back and exits 1. It was copied into 40 repos across the three
owners, in nine different variants, so one upstream change turned every one of them red.

`init-repo.sh` now stamps the thin caller instead, so a repo created after today cannot
inherit the copy. The implementation stays where it already was — QAtlasHub/.github's
`labeler.yml@v1`, public and therefore callable from this org too — rather than being
duplicated here, which is the exact failure mode being cleaned up.

Private stamps the self-hosted runner; public takes the workflow's `ubuntu-latest` default.
@sotashimozono
sotashimozono merged commit 2996c8f into main Jul 28, 2026
@sotashimozono
sotashimozono deleted the ci/labeler-template branch July 28, 2026 02:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant