Repository navigation
feat(workflows): let release-please act as a GitHub App - #66
Merged
Merged
Conversation
A release pull request opened with GITHUB_TOKEN triggers no workflows, so its required checks never report and every release needs the admin bypass or a close and reopen. The wrapper now takes an app client ID and private key and mints a token scoped to the calling repository, so the pull request is opened by the app and the checks run. Both are optional; without them it falls back to release-token, then GITHUB_TOKEN, as before.
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.
A release pull request opened with
GITHUB_TOKENtriggers no workflows, so its required checks never report. Every release then needs the admin bypass or a close and reopen (seen on studiobimo/datapacks#15).release-please.yml: new optional inputapp-client-idand secretapp-private-key. When the client ID is set, the job mints an app token withactions/create-github-app-token(contents and pull-requests write, calling repository only, revoked at job end) and release-please runs with it. Precedence is app token, thenrelease-token, thenGITHUB_TOKEN, so existing callers are unchanged.README.md: the setup steps, and the one side effect to know about. A tag or Release made by an app does trigger other workflows, unlike one made withGITHUB_TOKEN. No consumer has anon: push: tagsoron: releaseworkflow today.Still needed after this merges
RELEASE_APP_CLIENT_ID(variable) andRELEASE_APP_PRIVATE_KEY(secret).release.yml: project-template first, then the consumers.Tested: the local hooks pass (actionlint, zizmor, pin check). Not tested: the mint step has never run, since no app exists yet. The fallback path is the unchanged expression with one more term in front; it is exercised by the next consumer release run after
v1moves.