Skip to content

Publish gem releases through GitHub Actions. - #5

Merged
samuel-williams-shopify merged 4 commits into
mainfrom
adopt-github-releases
Oct 15, 2026
Merged

samuel-williams-shopify merged 4 commits into
mainfrom
adopt-github-releases

Conversation

@samuel-williams-shopify

@samuel-williams-shopify samuel-williams-shopify commented Oct 15, 2026 •

Copy link
Copy Markdown
Collaborator

Adopt bake-gem-github so maintainers prepare reviewed release PRs and GitHub Actions publishes signed gems through RubyGems Trusted Publishing.

Follow the migration guide and the setup used by protocol-http2 and utopia-project. Add the preparation, validation, and publishing workflows generated by bake-gem-github 0.6.0, update the README release command, and use the Socketry signing certificate and local key path. Refresh copyrights, release notes, guides, and the README during the version bump, and let the publisher create GitHub releases. Correct the getting-started guide's unified context/skill commands.

The proposed rules require the supported Ruby, lint, coverage, and release-validation checks plus two approvals for all PRs into main. They allow explicit administrator bypass for reviews/checks and protect branch history and release tags. These are configuration files for review; activate the policy after this PR merges and Release validation is available.

Before the first automated release:

  1. Create the rubygems GitHub environment restricted to main. The organization GEM_SIGNING_KEY is already available to this repository, and the committed public certificate matches the one used by the other migrated gems.
  2. Register or verify the RubyGems Trusted Publisher for socketry/agent-context, workflow release-publish.yaml, environment rubygems, using bundle exec bake gem:github:setup:publisher.
  3. Enable GitHub Actions to create pull requests for remote release preparation; the repository currently disables that permission.
  4. Review bundle exec bake gem:github:setup:plan, then run bundle exec bake gem:github:setup:apply after merge.

Validated the 86-test suite (245 assertions), RuboCop, documentation coverage, generated configuration, and ordinary-PR release validation. A signed gem build verified against the Socketry certificate, and a separate local release rehearsal generated and independently validated a 0.4.0 candidate. Re-running the setup generator produced no changes.

The gem remains at 0.3.0. After setup, run the Prepare release workflow with bump=minor to prepare the 0.4.0 release PR with the accumulated changes.

@samuel-williams-shopify
samuel-williams-shopify merged commit 6bf7c6e into main Oct 15, 2026
24 of 28 checks passed
@samuel-williams-shopify
samuel-williams-shopify deleted the adopt-github-releases branch October 15, 2026 11:06
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