ci: add explicit permissions for integration-test job in CI workflow#608
Merged
ci: add explicit permissions for integration-test job in CI workflow#608
Conversation
Contributor
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
kinyoklion
approved these changes
Mar 27, 2026
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.
Requirements
No test changes needed — this is a CI workflow configuration change only.
Related issues
daily-integration-tests.ymlin chore: Fix daily integration tests workflow permissions #604release-please.ymlin chore: add explicit permissions to release-please workflow #603Describe the solution you've provided
The CI workflow (
ci.yml) has been failing withstartup_failure(zero jobs created) since ~March 25, after the org's defaultGITHUB_TOKENpermissions were tightened to read-only.The
integration-testjob inci.ymlcalls the reusable workflowintegration-test.yml, which requiresid-token: write(for AWS OIDC in therelease-secretsaction) andcontents: read. Without explicit permissions on the caller job, GitHub cannot grant these elevated permissions and fails the entire workflow at startup.This adds an explicit
permissionsblock to theintegration-testcaller job, matching the pattern already merged in #604 fordaily-integration-tests.yml.Describe alternatives you've considered
A top-level
permissionsblock on the entire workflow was considered, but job-level scoping follows the principle of least privilege and is consistent with the approach taken in #603 and #604.Additional context
All CI runs on
v8since March 25 have beenstartup_failure: the workflow couldn't even create jobs. The other caller jobs (go-versions,go-matrix,security-scan) don't request elevated permissions, so they should work with the default read-only token once this fix unblocks the workflow.Human review checklist
startup_failureis specifically caused by the missing permissions on theintegration-testcaller (and not by something else). All runs since ~March 25 showstartup_failurewith 0 jobs; the last run before that date had 11 jobs.ci.ymlneed explicit permissions beyond the default read-only scope.Link to Devin session: https://app.devin.ai/sessions/3f8768bfe13144cbad6c7602dd8de770
Requested by: @keelerm84
Note
Low Risk
Low risk workflow-only change that scopes
GITHUB_TOKENpermissions for theintegration-testreusable workflow call; primary risk is mis-scoped permissions causing CI to keep failing.Overview
Fixes CI startup failures by explicitly granting the
integration-testjobid-token: writeandcontents: readwhen invoking the reusableintegration-test.ymlworkflow.This aligns the caller job permissions with the callee’s AWS OIDC/checkout requirements while keeping permissions scoped to just that job (least privilege).
Written by Cursor Bugbot for commit b84c6fa. This will update automatically on new commits. Configure here.