class Kontena::Cli::Master::Token::CreateCommand

Public Instance Methods

execute() click to toggle source
# File lib/kontena/cli/master/token/create_command.rb, line 22
def execute
  params = {
    response_type: self.code? ? 'code' : 'token',
    scope: self.scopes,
    expires_in: self.expires_in,
  }
  params[:description] = self.description if self.description
  params[:user] = self.user if self.user
  data = token_data_to_hash(client.post("/oauth2/authorize", params))

  return data if self.return?

  if self.id?
    puts data[:id]
    exit 0
  end

  if self.token?
    puts data[:access_token] || data[:code]
    exit 0
  end

  puts '%s:' % data.delete(:id)
  data.each do |key, value|
    puts "  %s: %s" % [key, value]
  end
end