aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/commands/encrypted/encrypted_command.rb
diff options
context:
space:
mode:
authorKasper Timm Hansen <kaspth@gmail.com>2017-12-18 19:57:35 +0100
committerGitHub <noreply@github.com>2017-12-18 19:57:35 +0100
commit053a4c699043ea5449effaba0549b2f8a5821228 (patch)
tree9cfd7534cd26773698584e981dd1858b13c9bc53 /railties/lib/rails/commands/encrypted/encrypted_command.rb
parent1d047235b0cefcb80d4e18fed732cbe2bd32a8ee (diff)
parent35373219c91ea8096ef2f8e7f3c62bcd46f436be (diff)
downloadrails-053a4c699043ea5449effaba0549b2f8a5821228.tar.gz
rails-053a4c699043ea5449effaba0549b2f8a5821228.tar.bz2
rails-053a4c699043ea5449effaba0549b2f8a5821228.zip
Merge pull request #31348 from y-yagi/fix_31283
Raise an error only when `require_master_key` is specified
Diffstat (limited to 'railties/lib/rails/commands/encrypted/encrypted_command.rb')
-rw-r--r--railties/lib/rails/commands/encrypted/encrypted_command.rb12
1 files changed, 10 insertions, 2 deletions
diff --git a/railties/lib/rails/commands/encrypted/encrypted_command.rb b/railties/lib/rails/commands/encrypted/encrypted_command.rb
index 898094f1a4..912c453f09 100644
--- a/railties/lib/rails/commands/encrypted/encrypted_command.rb
+++ b/railties/lib/rails/commands/encrypted/encrypted_command.rb
@@ -37,9 +37,9 @@ module Rails
def show(file_path)
require_application_and_environment!
+ encrypted = Rails.application.encrypted(file_path, key_path: options[:key])
- say Rails.application.encrypted(file_path, key_path: options[:key]).read.presence ||
- "File '#{file_path}' does not exist. Use bin/rails encrypted:edit #{file_path} to change that."
+ say encrypted.read.presence || missing_encrypted_message(key: encrypted.key, key_path: options[:key], file_path: file_path)
end
private
@@ -72,6 +72,14 @@ module Rails
Rails::Generators::EncryptedFileGenerator.new
end
+
+ def missing_encrypted_message(key:, key_path:, file_path:)
+ if key.nil?
+ "Missing '#{key_path}' to decrypt data. See bin/rails encrypted:help"
+ else
+ "File '#{file_path}' does not exist. Use bin/rails encrypted:edit #{file_path} to change that."
+ end
+ end
end
end
end