[Bug Fix] fix(ci): prevent runner group error on fork pushes#2911
Open
whats2000 wants to merge 3 commits intohuggingface:mainfrom
Open
[Bug Fix] fix(ci): prevent runner group error on fork pushes#2911whats2000 wants to merge 3 commits intohuggingface:mainfrom
whats2000 wants to merge 3 commits intohuggingface:mainfrom
Conversation
Add repository check to unbound_deps_tests workflow to ensure aws-general-8-plus runner group is only used on main repository, preventing 'Required runner group not found' errors on forks.
Contributor
There was a problem hiding this comment.
Pull request overview
This PR fixes a CI workflow issue where forked repositories encounter "Required runner group 'aws-general-8-plus' not found" errors. The custom runner group only exists in the main huggingface/lerobot repository, so jobs using it must be restricted to the main repository.
Changes:
- Added repository check to prevent
aws-general-8-plusrunner group usage on forks
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
The previous approach failed because GitHub evaluates runs-on before if conditions. Now using a check-repo job that runs on ubuntu-latest first, and all jobs with special runners depend on it and check its output before being scheduled.
… forks Apply the same gating pattern used in unbound_deps_tests to full_tests.yml to prevent GitHub from trying to allocate custom runners when workflows run on forks. The check-repo job runs first on ubuntu-latest and all jobs with custom runners depend on it and check its output.
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
[Bug Fix] fix(ci): prevent runner group error on fork pushes
fix(ci): prevent runner group error on fork pushes
Type / Scope
Summary / Motivation
When workflows with the
aws-general-8-plusoraws-g6-4xlarge-plusrunner groups run on forked repositories, they fail with "Required runner group not found" because these custom runner groups only exist in the main huggingface/lerobot repository.GitHub Actions evaluates the
runs-onfield before checkingifconditions, so simply adding repository checks doesn't prevent the runner allocation error. This PR implements a gating job pattern that runs a check onubuntu-latestfirst, and all jobs requiring custom runners depend on it and only run if the check passes.Related issues
What changed
check-repogating job to bothunbound_deps_tests.ymlandfull_tests.ymlthat:ubuntu-latest(always available)github.repository == 'huggingface/lerobot'build-and-push-dockerandgpu-testsjobs to:check-repojob vianeedsHow was this tested (or how to run locally)
Manual verification:
nightly.ymlalready has proper repository checks (scheduled workflows don't trigger on forks)unbound_deps_tests.ymlandfull_tests.ymlneeded fixesThe fix prevents:
Expected behavior:
Checklist (required before merge)
pre-commit run -a)pytest) - N/A for workflow-only changesReviewer notes
ifconditions because GitHub evaluatesruns-onbeforeifunbound_deps_tests.ymlandfull_tests.ymlnow use this patternubuntu-latest(likefull-testsin full_tests.yml) don't need the gating check as that runner is always availableifconditions for preventing runner allocation errors