def create_config_stage
paragraph do
FileUtils.mkdir_p File.dirname(config.path)
changed = Commander::Command::Options.new(options)
changed.rhlogin = username
changed.password = nil
changed.use_authorization_tokens = options.create_token != false && !changed.token.nil?
changed.insecure = options.insecure == true
options.__replace__(changed)
write_servers_yml = @save_servers || servers.present? || (servers.list.present? && !servers.hostname_exists?(options.server))
config_fields_to_save = @config_fields_to_save || (write_servers_yml ? [:server] : nil)
if config_fields_to_save != []
say "Saving configuration to #{system_path(config.path)} ... "
config.backup
FileUtils.rm(config.path, :force => true)
config.save!(changed, config_fields_to_save)
success "done"
end
if write_servers_yml
say "Saving server configuration to #{system_path(servers.path)} ... "
servers.backup
servers.add_or_update(options.server,
:login => options.rhlogin,
:use_authorization_tokens => options.use_authorization_tokens,
:insecure => options.insecure,
:timeout => options.timeout,
:ssl_version => options.ssl_version,
:ssl_client_cert_file => options.ssl_client_cert_file,
:ssl_client_key_file => options.ssl_client_key_file,
:ssl_ca_file => options.ssl_ca_file)
servers.save!
success "done"
end
end
true
end