Skip to content

Conversation

@BYK
Copy link
Member

@BYK BYK commented Jan 9, 2026

Summary

This PR migrates from the deprecated action-prepare-release to the new Craft GitHub Actions.

Changes

  • Migrated .github/workflows/auto-release.yml to Craft reusable workflow

Documentation

See https://getsentry.github.io/craft/github-actions/ for more information.

Closes #18765 (added automatically)

This PR migrates from the deprecated action-prepare-release to the new
Craft GitHub Actions (reusable workflow or composite action).

Changes:
- Migrate .github/workflows/release.yml to Craft reusable workflow
@github-actions
Copy link
Contributor

github-actions bot commented Jan 9, 2026

Semver Impact of This PR

🟢 Patch (bug fixes)

📋 Changelog Preview

This is how your changes will appear in the changelog.
Entries from this PR are highlighted with a left border (blockquote style).


New Features ✨

  • (core) Add ignored client report event drop reason by Lms24 in #18815

Build / dependencies / internal 🔧

  • (release) Switch from action-prepare-release to Craft by BYK in #18763

🤖 This preview updates automatically when you update the PR.

@github-actions
Copy link
Contributor

github-actions bot commented Jan 9, 2026

node-overhead report 🧳

Note: This is a synthetic benchmark with a minimal express app and does not necessarily reflect the real-world performance impact in an application.

Scenario Requests/s % of Baseline Prev. Requests/s Change %
GET Baseline 9,187 - 9,365 -2%
GET With Sentry 1,733 19% 1,732 +0%
GET With Sentry (error only) 6,102 66% 6,087 +0%
POST Baseline 1,211 - 1,172 +3%
POST With Sentry 590 49% 592 -0%
POST With Sentry (error only) 1,082 89% 1,059 +2%
MYSQL Baseline 3,308 - 3,300 +0%
MYSQL With Sentry 491 15% 493 -0%
MYSQL With Sentry (error only) 2,697 82% 2,710 -0%

View base workflow run

BYK added 2 commits January 9, 2026 23:16
The previous migration incorrectly removed the GitHub App token
authentication step. This commit restores it by switching to the
composite action pattern which preserves the auth flow.
The previous migration incorrectly removed the GitHub App token
authentication step. This commit restores it by switching to the
composite action pattern which preserves the auth flow.
Comment on lines 2 to 9
on:
pull_request:
types:
- closed
branches:
- master

# This workflow tirggers a release when merging a branch with the pattern `prepare-release/VERSION` into master.
workflow_dispatch:
inputs:
version:
description: Version to release (or "auto")
required: false
force:
description: Force a release even when there are release-blockers

This comment was marked as outdated.

Comment on lines 2 to 11
on:
pull_request:
types:
- closed
branches:
- master
workflow_dispatch:
inputs:
version:
description: Version to release (or "auto")
required: false
force:
description: Force a release even when there are release-blockers
required: false
merge_target:

This comment was marked as outdated.

Comment on lines 33 to 41
- name: Prepare release
uses: getsentry/craft@39ee616a6a58dc64797feecb145d66770492b66c # v2
env:
GITHUB_TOKEN: ${{ steps.token.outputs.token }}
with:
version: ${{ inputs.version }}
force: ${{ inputs.force }}
merge_target: ${{ inputs.merge_target }}
craft_config_from_merge_target: 'true'

This comment was marked as outdated.

- name: Get auth token
id: token
uses: actions/create-github-app-token@29824e69f54612133e76f7eaac726eef6c875baf # v2.2.1
uses: actions/create-github-app-token@29824e69f54612133e76f7eaac726eef6c875baf # v2 # v2 # v1
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

q: Are all these version bumps actually related? The version comments are a bit confusing here

required: false
merge_target:
description: Target branch to merge into. Uses the default branch as a fallback (optional)
description: Target branch to merge into
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

q: How does craft handle this case?

release:
runs-on: ubuntu-24.04
name: 'Release a new version'
runs-on: ubuntu-latest
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

m: I think pinning to latest would make our CI more brittle here, is this required?

Comment on lines 26 to 29
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
with:
token: ${{ steps.token.outputs.token }}
fetch-depth: 0

This comment was marked as outdated.

description: Version to release
required: true
description: Version to release (or "auto")
required: false
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Optional version input lacks default value

Low Severity

The version input was changed from required: true to required: false, with the description updated to "(or 'auto')". However, no default value was added. If a user triggers the workflow without providing a version, github.event.inputs.version passes an empty string to the Craft action rather than "auto". This could cause unexpected behavior if Craft doesn't treat empty strings equivalently to "auto" versioning.

Fix in Cursor Fix in Web

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.

ci(release): Switch from action-prepare-release to Craft

3 participants