class Kontena::Cli::Cloud::Master::UpdateCommand

Public Instance Methods

execute() click to toggle source
# File lib/kontena/cli/cloud/master/update_command.rb, line 25
def execute
  attrs = get_attributes
  unless attrs
    puts pastel.red("Failed to obtain master credentials")
    exit 1
  end

  attrs["name"]         = self.name         if self.name
  attrs["redirect-uri"] = self.redirect_uri if self.redirect_uri
  attrs["url"]          = self.url          if self.url
  attrs["provider"]     = self.provider     if self.provider
  attrs["version"]      = self.version      if self.version
  attrs["owner"]        = self.owner        if self.owner

  response = cloud_client.put(
    "user/masters/#{master_id}",
    { data: { attributes: attrs.reject{ |k, _| ['client-id', 'client-secret'].include?(k) } } }
  )

  if response
    puts "Master settings updated"
  else
    puts "Request failed"
    exit 1
  end
end
get_attributes() click to toggle source
# File lib/kontena/cli/cloud/master/update_command.rb, line 19
def get_attributes
  cloud_client.get("user/masters/#{self.master_id}")["data"]["attributes"]
rescue
  nil
end