1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Add rails secrets:show command

When secrets confirmed with the `secrets:edit` command, `secrets.yml.enc`
will change without updating the secrets.

Therefore, even if only want to check secrets, the difference will come
out. This is a little inconvenient.

In order to solve this problem, added the `secrets:show` command.
If just want to check secrets, no difference will occur use this command.
This commit is contained in:
yuuji.yaginuma 2017-07-06 21:40:33 +09:00
parent c8ce345964
commit af5368eeff
4 changed files with 22 additions and 1 deletions

View file

@ -1,3 +1,7 @@
* Add `rails secrets:show` command.
*Yuji Yaginuma*
* Allow mounting the same engine several times in different locations.
Fixes #20204.

View file

@ -48,6 +48,10 @@ module Rails
end
end
def show
say Rails::Secrets.read
end
private
def generator
require_relative "../../generators"

View file

@ -6,6 +6,6 @@ require "rails/commands/secrets/secrets_command"
class Rails::Command::BaseTest < ActiveSupport::TestCase
test "printing commands" do
assert_equal %w(generate), Rails::Command::GenerateCommand.printing_commands
assert_equal %w(secrets:setup secrets:edit), Rails::Command::SecretsCommand.printing_commands
assert_equal %w(secrets:setup secrets:edit secrets:show), Rails::Command::SecretsCommand.printing_commands
end
end

View file

@ -27,8 +27,21 @@ class Rails::Command::SecretsCommandTest < ActiveSupport::TestCase
end
end
test "show secrets" do
run_setup_command
assert_match(/external_api_key: 1466aac22e6a869134be3d09b9e89232fc2c2289/, run_show_command)
end
private
def run_edit_command(editor: "cat")
Dir.chdir(app_path) { `EDITOR="#{editor}" bin/rails secrets:edit` }
end
def run_show_command
Dir.chdir(app_path) { `bin/rails secrets:show` }
end
def run_setup_command
Dir.chdir(app_path) { `bin/rails secrets:setup` }
end
end