Skip to content

ci: add craft release system - #11

Merged
MathurAditya724 merged 2 commits into
mainfrom
ci/craft-release
Aug 15, 2026
Merged

MathurAditya724 merged 2 commits into
mainfrom
ci/craft-release

Conversation

@MathurAditya724

Copy link
Copy Markdown
Member

Adds the getsentry/craft release pipeline, mirroring the setup used in hono-openapi (and the sibling PR on standard-openapi).

Workflows

  • .craft.yml — manual versioning, auto changelog, npm (public) + github targets
  • release.ymlworkflow_dispatchcraft prepare: cuts a release/<version> branch and opens a publish-request issue
  • publish.yml — publishes when the request issue is labeled accepted
  • package-artifacts.yml — builds & packs the tarball on release/** pushes (consumed by publish)
  • release-preview.ymlpkg-pr-new continuous release previews on push/PR
  • changelog-preview.yml — reuses craft's shared changelog-preview workflow

The existing test.yml is left untouched.

Required configuration (out of band, before this can run)

  • CRAFT_APP_ID repository/org variable and CRAFT_APP_PRIVATE_KEY secret (a GitHub App with contents+issues write, used to mint the release token)
  • pkg.pr.new GitHub App installed on the repo/org (for release-preview)
  • npm trusted publishing configured for @standard-community/standard-json

Workflow files are byte-identical to the CI-validated ones in hono-openapi.

Adds the getsentry/craft release pipeline, mirroring the setup used in hono-openapi:

- .craft.yml: manual versioning, auto changelog, npm (public) + github targets
- release.yml: workflow_dispatch -> craft prepare (opens a publish request issue)
- publish.yml: publishes when the request issue is labeled 'accepted'
- package-artifacts.yml: builds & packs the tarball on release/** branches
- release-preview.yml: pkg-pr-new continuous release previews on push/PR
- changelog-preview.yml: reuses craft's changelog preview workflow

Requires org/repo config: CRAFT_APP_ID variable + CRAFT_APP_PRIVATE_KEY secret (GitHub App), the pkg.pr.new app installed, and npm trusted publishing for the package.
pnpm exec only runs already-installed binaries; pkg-pr-new is not a dependency in this repo, so 'exec' failed with command-not-found. Use pnpm dlx to fetch and run it on demand.
@MathurAditya724
MathurAditya724 merged commit 7752a8d into main Aug 15, 2026
1 of 3 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