Skip to content

Use bot tokens for automated releases#326

Merged
marcelveldt merged 5 commits into
mainfrom
marcelveldt-fix-release-workflow
Jul 25, 2026
Merged

Use bot tokens for automated releases#326
marcelveldt merged 5 commits into
mainfrom
marcelveldt-fix-release-workflow

Conversation

@marcelveldt

@marcelveldt marcelveldt commented Jul 24, 2026

Copy link
Copy Markdown
Member

Automated release administration and downstream updates should use the music-assistant-bot GitHub App instead of a long-lived personal token.

  • Mint short-lived, repository-scoped App tokens with only each job's required permissions
  • Keep same-repository releases on the built-in GitHub Actions token
  • Pin external GitHub Actions while retaining Dependabot updates

Requires the bot App on models, server, and client with the requested permissions.

marcelveldt and others added 3 commits July 25, 2026 01:51
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@marcelveldt marcelveldt changed the title Fix automated release ownership Secure automated releases Jul 24, 2026
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@marcelveldt marcelveldt changed the title Secure automated releases Use bot tokens for automated releases Jul 25, 2026
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@marcelveldt
marcelveldt merged commit c724f5b into main Jul 25, 2026
3 checks passed
@marcelveldt
marcelveldt deleted the marcelveldt-fix-release-workflow branch July 25, 2026 09:54
marcelveldt added a commit to music-assistant/server that referenced this pull request Jul 25, 2026
# What does this implement/fix?

<!-- Quick description and explanation of changes. -->

GitHub releases currently become public before their exact assets,
multi-architecture image, and downstream updates are verified.

- Freeze one source commit and prepare exact draft assets and image
before publication.
- Verify release immutability, attestations, tag, assets, and OCI digest
before promoting aliases.
- Replace the legacy privileged token with narrowly scoped GitHub App
tokens and document recovery and rollout.

**Related issue (if applicable):**

- Depends on music-assistant/models#326

## Types of changes

<!--
Tick exactly one box. CI (.github/workflows/pr-labels.yaml) derives
the label from the ticked box and applies it automatically; the
release-notes generator uses that same label to slot this change
into the next release notes.
-->

- [ ] Bugfix (non-breaking change which fixes an issue) — `bugfix`
- [ ] New feature (non-breaking change which adds functionality) —
`new-feature`
- [ ] Enhancement to an existing feature — `enhancement`
- [ ] New music/player/metadata/plugin provider — `new-provider`
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected) — `breaking-change`
- [ ] Refactor (no behaviour change) — `refactor`
- [ ] Documentation only — `documentation`
- [ ] Maintenance / chore — `maintenance`
- [x] CI / workflow change — `ci`
- [ ] Dependencies bump — `dependencies`

## Checklist

- [x] The code change is tested and works locally.
- [x] `pre-commit run --all-files` passes.
- [x] `pytest` passes, and tests have been added/updated under `tests/`
where applicable.
- [ ] For changes to shared models, the companion PR in
`music-assistant/models` is linked.
- [ ] For changes affecting the UI, the companion PR in
`music-assistant/frontend` is linked.
- [ ] I have read and complied with the project's [AI
Policy](https://github.com/music-assistant/.github/blob/main/AI_POLICY.md)
for any AI-assisted contributions.
- [ ] I have raised a PR against the documentation repository targeting
the main or beta branch as appropriate.

---------

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
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