ruby / net-imap

Ruby client api for Internet Message Access Protocol
https://ruby.github.io/net-imap
Other
49 stars 25 forks source link

🔧🔒 Configure RubyGems Trusted Publishing #265

Closed nevans closed 2 months ago

nevans commented 5 months ago

This requires additional configuration on the RubyGems website:

nevans commented 5 months ago

@hsbt Have any other bundled gems configured trusted publishing yet? I've configured this to run when pushing a specific tag pattern, but perhaps it should be triggered by some other event? I want to be sure it doesn't conflict with any of your existing tools or processes.

hsbt commented 4 months ago

@nevans Nice work. We didn't use release-gem action under ruby org yet. If you have extra permission for this, let me know it.

I'm +1 to use this automation to other bundled gems 👍

nevans commented 4 months ago

@hsbt Great. I'll test it out on the next release.

nevans commented 4 months ago

@hsbt I added made a couple of minor changes to the workflow:

Looking at other gems that have configured this (and came up in my code search), I saw three basic approaches to triggering:

I personally prefer the tag-based approach. When combined with the gh release create --draft, it partially automates the creation of GitHub release. When combined with a GitHub environment, the environment can be configured to require deployment approval (which serves the same function as workflow_dispatch for me).

I made the following other changes, too:

nevans commented 1 month ago

@hsbt @shugo @segiddins FYI: v0.4.11 was packaged by this. It all seemed to work correctly.

hsbt commented 1 month ago

Great, thanks!