Where should I see all the jobs required for a merge queue? #171941
Why are you starting this discussion?Question What GitHub Actions topic or product is this about?Misc Discussion DetailsI have the following checks required to merge to main:
The following workflow defining the jobs is triggered on each push to a PR and after passing makes the PR eligible to be added to a merge queue. Once the PR is added to the merge queue, it seems like these checks need to be run again - which makes sense since the PR is rebased on main. I have a separate workflow defined with I do see this workflow getting triggered, but on the https://github.com///queue/main UI I don't see any indication that this workflow is required to pass before merging the PR.
Am I doing something wrong? Functionally I want to run some tests on each push to a PR and other tests as part of the merge queue. |
Replies: 2 comments 4 replies
|
You’re not doing anything wrong the key is that only checks you mark as required in branch protection will show up as blocking in the merge queue UI. Your merge_group workflow is running, but unless you explicitly add those jobs (from the “Merge Queue” workflow) as required status checks on main, they won’t appear as required before merge. So try to:
|
|
Short answer: you’re close. Your merge queue jobs are running, but they’re not marked as required status checks for main, so the queue UI doesn’t show them as blockers. What to do Keep two sets of checks PR checks → run on pull_request for every push to the PR. Queue checks → run on merge_group after the PR enters the merge queue (rebased on main). Make the merge_group jobs required Go to Settings → Branches → Branch protection rule for main. Under Require status checks to pass before merging, add the job names from your merge_group workflow (e.g., mq-tests, smoke-on-queue). It’s the job names (the check runs), not the workflow file name, that become required. FYI: a check must have run in the last 7 days to appear in that list—enqueue a PR once so the checks show up. Example YAML (single file, split by event) name: CI on: jobs: mq-tests: # <- add this job name to required checks for main Avoid a common pitfall If a status check is required in branch protection but only runs on pull_request, it won’t report during merge queue runs and the queue can’t satisfy it. Ensure anything required for the queue runs on merge_group. TL;DR: Your “Merge Queue” workflow is fine. Add its job names (from the merge_group run) to the required status checks for main. Keep your faster checks on pull_request, heavier ones on merge_group. This is the intended setup for running different tests on PR pushes vs. in the merge queue. |



You’re not doing anything wrong the key is that only checks you mark as required in branch protection will show up as blocking in the merge queue UI. Your merge_group workflow is running, but unless you explicitly add those jobs (from the “Merge Queue” workflow) as required status checks on main, they won’t appear as required before merge.
So try to: