Skip to content

release(ci): bring BEE-2224 GitHub App token onto main#32

Merged
alfredrc merged 1 commit into
mainfrom
develop
May 9, 2026
Merged

release(ci): bring BEE-2224 GitHub App token onto main#32
alfredrc merged 1 commit into
mainfrom
develop

Conversation

@alfredrc
Copy link
Copy Markdown
Member

@alfredrc alfredrc commented May 9, 2026

Summary

Single-commit follow-up: brings BEE-2224 (release-please uses GitHub
App token) from develop onto main so the next release-please run picks
up the new auth.

After this merges, release-please.yml fires on main push and runs the
action with the app-token. Either:

  • No new conventional commits since v0.7.0 → release-please runs
    cleanly, finds nothing to release, exits silently. This validates
    the auth setup.
  • Some new commits → opens the next release PR with the new bot
    identity (will be visible as beeping-io-release-please[bot] on the
    PR).

The end-to-end trigger validation (tag push fires release.yml
automatically) only happens on the next real release after this lands.

What's in this PR

One commit: f30b688 (squash from PR #31).

Merge style

Merge commit (non-squash) — same pattern as #26 and #29.

Test plan

Tags pushed by the default GITHUB_TOKEN do not trigger downstream
workflows (GitHub's recursive-workflow protection). When v0.7.0 was
cut, release-please pushed v0.7.0 with GITHUB_TOKEN — release.yml
did not fire and the GH Release shipped with 0 assets until a manual
`git push origin --delete v0.7.0 && git push origin v0.7.0` workaround.

Replaces the implicit GITHUB_TOKEN with a 1h-TTL installation token
minted by actions/create-github-app-token@v1 for the new
`beeping-io-release-please` GitHub App. Tag pushes now use the app
identity (not GITHUB_TOKEN), so release.yml fires automatically on
every release-please merge.

* `.github/workflows/release-please.yml` — adds the `app-token` step
  before release-please-action; passes the minted token via the
  `token:` input.
* `docs/setup/releases.md` (new) — full setup procedure (replicable to
  beeping-android, beeping-ios, beepbox, etc. when their pipelines
  arrive) + troubleshooting playbook (manual tag re-push recovery,
  401/Bad credentials, manifest drift).

The two repo secrets `RELEASE_PLEASE_APP_ID` and
`RELEASE_PLEASE_APP_PRIVATE_KEY` are configured on
`beeping-io/beeping-core`. The app is installed on this repo with
contents/issues/pull-requests write permissions.

Validation deferred to the next real release after this lands —
release-please.yml runs without auth errors will confirm the token,
and the next vX.Y.Z merge will confirm the tag-push trigger fires
release.yml automatically.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@alfredrc alfredrc merged commit 85b02f9 into main May 9, 2026
16 of 18 checks passed
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.

1 participant