diff options
Diffstat (limited to 'lib/chef/knife/data_bag_show.rb')
-rw-r--r-- | lib/chef/knife/data_bag_show.rb | 50 |
1 files changed, 25 insertions, 25 deletions
diff --git a/lib/chef/knife/data_bag_show.rb b/lib/chef/knife/data_bag_show.rb index 36715286e8..2adafbde79 100644 --- a/lib/chef/knife/data_bag_show.rb +++ b/lib/chef/knife/data_bag_show.rb @@ -1,7 +1,7 @@ # # Author:: Adam Jacob (<adam@opscode.com>) # Author:: Seth Falcon (<seth@opscode.com>) -# Copyright:: Copyright (c) 2009-2010 Opscode, Inc. +# Copyright:: Copyright (c) 2009-2016 Chef Software, Inc. # License:: Apache License, Version 2.0 # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -35,32 +35,32 @@ class Chef def run display = case @name_args.length - when 2 # Bag and Item names provided - secret = encryption_secret_provided_ignore_encrypt_flag? ? read_secret : nil - raw_data = Chef::DataBagItem.load(@name_args[0], @name_args[1]).raw_data - encrypted = encrypted?(raw_data) + when 2 # Bag and Item names provided + secret = encryption_secret_provided_ignore_encrypt_flag? ? read_secret : nil + raw_data = Chef::DataBagItem.load(@name_args[0], @name_args[1]).raw_data + encrypted = encrypted?(raw_data) - if encrypted && secret - # Users do not need to pass --encrypt to read data, we simply try to use the provided secret - ui.info("Encrypted data bag detected, decrypting with provided secret.") - raw = Chef::EncryptedDataBagItem.load(@name_args[0], - @name_args[1], - secret) - format_for_display(raw.to_hash) - elsif encrypted && !secret - ui.warn("Encrypted data bag detected, but no secret provided for decoding. Displaying encrypted data.") - format_for_display(raw_data) - else - ui.info("Unencrypted data bag detected, ignoring any provided secret options.") - format_for_display(raw_data) - end + if encrypted && secret + # Users do not need to pass --encrypt to read data, we simply try to use the provided secret + ui.info("Encrypted data bag detected, decrypting with provided secret.") + raw = Chef::EncryptedDataBagItem.load(@name_args[0], + @name_args[1], + secret) + format_for_display(raw.to_hash) + elsif encrypted && !secret + ui.warn("Encrypted data bag detected, but no secret provided for decoding. Displaying encrypted data.") + format_for_display(raw_data) + else + ui.info("Unencrypted data bag detected, ignoring any provided secret options.") + format_for_display(raw_data) + end - when 1 # Only Bag name provided - format_list_for_display(Chef::DataBag.load(@name_args[0])) - else - stdout.puts opt_parser - exit(1) - end + when 1 # Only Bag name provided + format_list_for_display(Chef::DataBag.load(@name_args[0])) + else + stdout.puts opt_parser + exit(1) + end output(display) end |