Skip to content

feat(github.release-please): add the composite action for release-please with a GitHub App token - #40

Merged
posquit0 merged 1 commit into
mainfrom
feat/github-release-please
Oct 11, 2026
Merged

posquit0 merged 1 commit into
mainfrom
feat/github-release-please

Conversation

@posquit0

Copy link
Copy Markdown
Member

👋 Background

Module repositories are adopting release-please (tedilabs/terraform-aws-account#145). Each would repeat the same two steps: create a GitHub App token, so that the release pull requests trigger CI, and run release-please with it. Keeping them in one action keeps the token permissions and action versions in one place.

What changed

  • Add github.release-please, a composite action that:
    • creates a GitHub App installation token with actions/create-github-app-token@v3, narrowed to contents, issues, and pull-requests write;
    • runs googleapis/release-please-action@v5 with that token and the manifest config.
  • Inputs: github_app_client_id and github_app_private_key (required), config_file and manifest_file (default to release-please-config.json and .release-please-manifest.json).
  • Outputs: release_created, tag_name, and version of the root component.

Usage:

steps:
- name: Release Please
  uses: tedilabs/github-actions/.github/actions/github.release-please@main
  with:
    github_app_client_id: ${{ secrets.RELEASE_GITHUB_APP_CLIENT_ID }}
    github_app_private_key: ${{ secrets.RELEASE_GITHUB_APP_PRIVATE_KEY }}

Notes

  • Composite actions cannot read secrets, so the App credentials are inputs.
  • The token is not exposed as an output. The runner runs the post steps of actions nested in a composite action (ADR 1144), so the token is still revoked when the job ends.
  • release-please-action does not declare its outputs in action.yml, so only the root component outputs that callers are likely to use are forwarded. Path-prefixed outputs of monorepos (<path>--version) are not forwarded.
  • Checked locally: yamllint and check-jsonschema --builtin-schema vendor.github-actions pass.
  • Follow-ups after merge: switch ci: release with release-please terraform-aws-account#145 to this action, and update the example in docs: add GitHub App setup guide for release automation #36.

@github-actions

Copy link
Copy Markdown

👋 Welcome! Looks like this is your first pull request.

Hey, thanks for your contribution! Please give us a bit of time to review it. 😄

Please check out our contributing guidelines.

@github-actions github-actions Bot added 💾 actions This issue or pull request is related to actions. size/S Small size issue or PR. labels Oct 11, 2026
@github-actions

Copy link
Copy Markdown

GitHub Actions Integration

Repository jactionlint check-jsonschema (workflows) check-jsonschema (actions)
tedilabs/github-actions ✅ ✅ ✅

✅ All 1 passed.

@posquit0
posquit0 merged commit 0a18321 into main Oct 11, 2026
7 checks passed
@posquit0
posquit0 deleted the feat/github-release-please branch October 11, 2026 16:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

💾 actions This issue or pull request is related to actions. size/S Small size issue or PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant