diff options
author | Lamont Granquist <lamont@chef.io> | 2019-05-21 15:27:03 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-21 15:27:03 -0700 |
commit | fdfd701d0b3c5e9fbc7aca0be14802a1bf0d2f23 (patch) | |
tree | 81333c867d2f33f6eafe2edad4d74ba940c2e6ba /lib | |
parent | 248344cfe776b66a8da563c985e34d9c99967791 (diff) | |
parent | f3a5ce3a5958c5d85697a9929480e6edc7260bd3 (diff) | |
download | chef-fdfd701d0b3c5e9fbc7aca0be14802a1bf0d2f23.tar.gz |
Merge pull request #8571 from chef/lcg/better-target-mode-creds-errors
Better target mode no-creds errors
Diffstat (limited to 'lib')
-rw-r--r-- | lib/chef/train_transport.rb | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/lib/chef/train_transport.rb b/lib/chef/train_transport.rb index 9db5f8fbf3..95b5018960 100644 --- a/lib/chef/train_transport.rb +++ b/lib/chef/train_transport.rb @@ -20,12 +20,12 @@ require "train" class Chef class TrainTransport + extend ChefConfig::Mixin::Credentials + # # Returns a RFC099 credentials profile as a hash # def self.load_credentials(profile) - extend ChefConfig::Mixin::Credentials - # Tomlrb.load_file returns a hash with keys as strings credentials = parse_credentials_file if contains_split_fqdn?(credentials, profile) @@ -74,22 +74,18 @@ class Chef profile = tm_config.host credentials_file = - if tm_config.credentials_file - if File.exists?(tm_config.credentials_file) - tm_config.credentials_file - else - raise ArgumentError, "Credentials file specified for target mode does not exist: '#{tm_config.credentials_file}'" - end - elsif File.exists?(Chef::Config.platform_specific_path("/etc/chef/#{profile}/credentials")) + if tm_config.credentials_file && File.exist?(tm_config.credentials_file) + tm_config.credentials_file + elsif File.exist?(Chef::Config.platform_specific_path("/etc/chef/#{profile}/credentials")) Chef::Config.platform_specific_path("/etc/chef/#{profile}/credentials") else super end - if credentials_file - Chef::Log.debug("Loading credentials file '#{credentials_file}' for target '#{profile}'") - else - Chef::Log.debug("No credentials file found for target '#{profile}'") - end + + raise ArgumentError, "No credentials file found for target '#{profile}'" unless credentials_file + raise ArgumentError, "Credentials file specified for target mode does not exist: '#{credentials_file}'" unless File.exist?(credentials_file) + + Chef::Log.debug("Loading credentials file '#{credentials_file}' for target '#{profile}'") credentials_file end |