Skip to content

chore: always run units jobs with step-level skips#13326

Merged
blakeli0 merged 1 commit into
mainfrom
fix-required-checks-ci
Jun 2, 2026
Merged

chore: always run units jobs with step-level skips#13326
blakeli0 merged 1 commit into
mainfrom
fix-required-checks-ci

Conversation

@blakeli0
Copy link
Copy Markdown
Contributor

@blakeli0 blakeli0 commented Jun 1, 2026

Description

This PR solves the issue where required checks units (11), units (17), units (21), units (25), and units (8) get stuck in a pending "stuck forever" state on GitHub.

For example, https://screenshot.googleplex.com/9bpNwWP7jParbuM

Root Cause

The units and units-8-runtime jobs in .github/workflows/ci.yaml are conditionally skipped using job-level if: ${{ needs.bulk-filter.outputs.runnable == 'true' }}.
Because the entire job is skipped at the job-level, the matrix versions are not expanded, and status checks like units (11) are never reported to GitHub. When these checks are configured directly as required status checks in branch protection rules, PRs that skip the jobs (e.g., workflow-only PRs) are stuck forever.

Solution

We removed the job-level if: runnable == true conditional from both units and units-8-runtime jobs so they always start. Instead, we applied the if: runnable == true check to every individual step inside these jobs.
When a PR doesn't need to run these checks:

  1. The jobs will still start and run.
  2. All steps will skip instantly.
  3. The jobs will finish successfully in 1–2 seconds, reporting success and satisfying GitHub's required status checks.

@blakeli0 blakeli0 requested review from a team as code owners June 1, 2026 22:14
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

@blakeli0 blakeli0 changed the title chore: always run units and units-8-runtime jobs with step-level skips chore: always run units jobs with step-level skips Jun 1, 2026
@blakeli0 blakeli0 requested a review from lqiu96 June 1, 2026 22:20
@lqiu96
Copy link
Copy Markdown
Member

lqiu96 commented Jun 2, 2026

IIUC, this seems to be a limitation of the Github CI. The required status for the matrix jobs aren't reported because they're never run (though Github CI docs does say that skipped jobs are reported as a success). I guess just not for matrix jobs.

Might be another data point to try and move away from bulk jobs (needing to run all GAPIC unit tests).

@blakeli0
Copy link
Copy Markdown
Contributor Author

blakeli0 commented Jun 2, 2026

this seems to be a limitation of the Github CI. The required status for the matrix jobs aren't reported because they're never run

Yes exactly.

@blakeli0 blakeli0 merged commit 5efbb46 into main Jun 2, 2026
171 of 172 checks passed
@blakeli0 blakeli0 deleted the fix-required-checks-ci branch June 2, 2026 16:31
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.

2 participants