# File lib/rhc/commands/server.rb, line 186
    def configure(server)
      raise ArgumentError, "The --use and --skip-wizard options cannot be used together." if options.use && options.skip_wizard

      server = server_configs.find(server)

      attrs = [:hostname, :nickname, :login, :use_authorization_tokens, :insecure, :timeout, :ssl_version, :ssl_client_cert_file, :ssl_client_key_file, :ssl_ca_file].inject({}){ |h, (k, v)| v = options[k == :login ? :rhlogin : k]; h[k] = (v.nil? ? server.send(k) : v); h }

      raise RHC::ServerNicknameExistsException.new(options.nickname) if options.nickname && 
        server_configs.nickname_exists?(options.nickname) && 
        server_configs.find(options.nickname).hostname != server.hostname

      server = server_configs.update(server.hostname, attrs)

      unless options.skip_wizard
        wizard_to_server(attrs[:hostname], options.use, attrs.reject{|k, v| k == :hostname || k == :nickname})
      else
        say "Saving server configuration to #{system_path(server_configs.path)} ... "
        server_configs.save!
        success "done"
        0
      end

      paragraph{ say display_server(server) }
      paragraph { success "Now using '#{server.hostname}'" } if options.use
      0
    end