From ca08bb36e82cbe059f2c0dedbed0ad2c602d1afd Mon Sep 17 00:00:00 2001 From: Ajay Krishnan Date: Sat, 18 Jul 2026 13:32:36 -0700 Subject: [PATCH] Add trusted gem publishing --- .github/workflows/release.yml | 23 +++++++++++++++++++++++ README.md | 4 ++++ 2 files changed, 27 insertions(+) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..0aa5267 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,23 @@ +name: Push gem + +on: + push: + tags: + - "v*" + +jobs: + push: + runs-on: ubuntu-latest + permissions: + contents: write + id-token: write + environment: release + steps: + - uses: actions/checkout@v5 + with: + persist-credentials: false + - uses: ruby/setup-ruby@v1 + with: + ruby-version: ruby + bundler-cache: true + - uses: rubygems/release-gem@v1 diff --git a/README.md b/README.md index d648883..6fd5821 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,10 @@ During the alpha series both gems are pinned in lockstep. Version 0.0.1.alpha6 uses a subscribe-ready-before-prompt transport contract and reconnects an accepted turn without posting its prompt again. +Releases use RubyGems trusted publishing. Register `release.yml` as the gem's +trusted publisher (using the `release` environment); after that, a `v*` tag +publishes without a long-lived RubyGems API key. + ## Quickstart ```ruby