Rails 5.2 introduces the encrypted secrets feature through the usage of the awesome credentials.yml
. But I'm struggling to get it to work with Heroku.
Is there any Strategy available right now to deploy a Rails 5.2 App to Heroku?
Rails 5.2 introduces the encrypted secrets feature through the usage of the awesome credentials.yml
. But I'm struggling to get it to work with Heroku.
Is there any Strategy available right now to deploy a Rails 5.2 App to Heroku?
You should set the environment variable RAILS_MASTER_KEY
, either on your heroku web dashboard, or using console:
$ heroku config:set RAILS_MASTER_KEY=<your-master-key>
Example:
$ heroku config:set RAILS_MASTER_KEY=123456789
(The <
and >
are placeholders)
Rails will detect this variable and use it as your master key (instead of looking for it in master.key file).
bundle exec rails runner "puts ActiveSupport::EncryptedConfiguration.generate_key"
. Just consider that you won't be able to decrypt any file encrypted with a previous key. –
Halfcocked master.key
I have locally as I do in production then? What if I don't want local developers being able to encrypt my production secrets? –
Innuendo $ rails new myapp
) or, if you are upgrading from other rails version, when you edit your credentials file with $ EDITOR=vim rails credentials:edit
. There is no automatic way of changing your master.key, you must do it manually (e.g.1. $ cd config
2. $ rails credentials:show > credentials.tmp
, 3. $ mv credentials.yml.enc ../tmp/ && mv master.key ../tmp/
, 4. $ cat credentials.tmp | pbcopy
5. $ EDITOR=vim rails credentials:edit
and replace all with content copied in step 4. 6. remove tmp files). –
Halfcocked xclip
instead of pbcopy
in step 4. –
Halfcocked <
and >
symbols? –
Astrid You could also use the following command to create Heroku RAILS_MASTER_KEY
with the contents of your local config/master.key
:
heroku config:set RAILS_MASTER_KEY="$(< config/master.key)"
Note: make sure you are in the directory that contains your Rails app.
© 2022 - 2024 — McMap. All rights reserved.
rails secret
to generate a new secret key. Is there a way to generate a new master key? – Innuendo