Rails 8.1で導入されたCLI Credential FetchでKamal Registry PasswordをRails Credentialsにまとめられるようになった
Rails 8.1でCLI Credential Fetchが導入された
Rails 8.1でCLI Credential Fetchが導入されました。
https://guides.rubyonrails.org/8_1_release_notes.html#command-line-credentials-fetching
たとえば次のようなCredentialを定義していたとします。
kamal: registry_password: xxxその場合、次のようにCredentialの値をCLIで取得することができます。
rails credentials:fetch kamal.registry_passwordRAILS_MASTER_KEYでまとめて管理できるようになった
この機能の何が嬉しいのかというとKamalでデプロイする場合、Docker HubなどのコンテナレジストリのパスワードをRails Credentialsとは別に環境変数として定義する必要がありました。 CLI Credentials Fetchが導入されたので、上記についてCredentialにまとめることができるようになります。
.kamal/secretsでは次のようにKAMAL_REGISTRY_PASSWORDを定義することができます。
KAMAL_REGISTRY_PASSWORD=$(rails credentials:fetch kamal.registry_password)つまりRails Credentialsですべて管理できるようになるので、RAILS_MASTER_KEYだけ管理すればよくなりますね!