114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
|
# File 'lib/chef/application/jenkins.rb', line 114
def configure_chef
begin
self.parse_options
rescue OptionParser::InvalidOption => e
puts "#{e}\n"
puts self.opt_parser
exit 0
rescue OptionParser::MissingArgument => e
puts "#{e}\n"
puts self.opt_parser
exit 0
end
if config[:help]
puts self.opt_parser
exit 0
end
begin
case config[:config_file]
when /^(http|https):\/\//
Chef::REST.new("", nil, nil).fetch(config[:config_file]) { |f| apply_config(f.path) }
else
load_config_file
end
rescue Errno::ENOENT => error
Chef::Log.warn("*****************************************")
Chef::Log.warn("Did not find config file: #{config[:config_file]}, using command line options.")
Chef::Log.warn("*****************************************")
Chef::Config.merge!(config)
rescue SocketError => error
Chef::Application.fatal!("Error getting config file #{Chef::Config[:config_file]}", 2)
rescue Chef::Exceptions::ConfigurationError => error
Chef::Application.fatal!("Error processing config file #{Chef::Config[:config_file]} with error #{error.message}", 2)
rescue Exception => error
Chef::Application.fatal!("Unknown error processing config file #{Chef::Config[:config_file]} with error #{error.message}", 2)
end
end
|