Use GitHub App token in update workflows#55
Draft
rujche wants to merge 6 commits into
Draft
Conversation
There was a problem hiding this comment.
Pull request overview
This pull request updates the repository’s scheduled/manual “update” workflows to stop using a long-lived PAT (ACCESS_TOKEN) and instead generate a scoped GitHub App installation token via a new local composite action. This improves least-privilege access to Azure/azure-sdk-for-java, reduces credential persistence risks during checkouts, and tightens action supply-chain hygiene via pinned versions.
Changes:
- Added a reusable local composite action to generate a GitHub App installation token, scoped via a
repositoriesinput. - Updated update/test workflows to use the installation token for
actions/github-script, cross-repo checkout, pushes, and PR creation (and setpersist-credentials: falsewhere the installation token is used for checkout). - Upgraded
actions/checkouttov4and pinnedvsoch/pull-request-actionto a fixed release tag.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
.github/actions/github-app-token/action.yml |
New composite action wrapping actions/create-github-app-token with proper hyphenated input referencing and repo scoping support. |
.github/workflows/update-spring-cloud-azure-support-file.yml |
Replaced PAT usage with GitHub App token; updated checkout/push/PR creation flow and pinned action versions. |
.github/workflows/test-spring-boot-rc-version.yml |
Replaced PAT usage with GitHub App token; updated checkout/push/PR creation flow and pinned action versions. |
.github/workflows/update-spring-dependencies.yml |
Replaced PAT usage with GitHub App token; updated checkout/push/PR creation flow, added persist-credentials: false, and pinned action versions. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
moarychan
approved these changes
Jul 1, 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.
What
ACCESS_TOKENusage with GitHub App installation token in update workflows..github/actions/github-app-token/action.yml.azure-sdk-for-javavia arepositoriesinput to enforce least privilege.persist-credentials: falseon authenticatedactions/checkoutsteps that use installation tokens.actions/checkoutfromv3tov4in the updated workflows.actions/create-github-app-token@v3.2.0vsoch/pull-request-action@1.1.1Why
The 'Microsoft Open Source' enterprise forbids access via a personal access tokens (classic) if the token's lifetime is greater than 8 days.. See: https://github.com/Azure/spring-cloud-azure-tools/actions/runs/28485381020/job/84430597949Updated files
.github/actions/github-app-token/action.yml.github/workflows/update-spring-cloud-azure-support-file.yml.github/workflows/test-spring-boot-rc-version.yml.github/workflows/update-spring-dependencies.yml