class Kontena::Cli::Master::User::InviteCommand
Public Instance Methods
execute()
click to toggle source
# File lib/kontena/cli/master/user/invite_command.rb, line 18 def execute if self.roles roles = self.roles.split(',') else roles = [] end external_id = nil if email_list.size == 1 && self.external_id external_id = self.external_id end email_list.each do |email| begin data = { email: email, external_id: external_id, response_type: 'invite' } response = client.post('/oauth2/authorize', data) if self.code? puts response['invite_code'] elsif self.return? return response else puts pastel.green("Invitation created for #{response['email']}") puts " * code: #{response['invite_code']}" puts " * command: kontena master join #{current_master.url} #{response['invite_code']}" end roles.each do |role| raise "Failed to add role" unless Kontena.run(["master", "user", "role", "add", role, email]) end rescue => ex logger.error(ex) exit_with_error "Failed to invite #{email} : #{ex.message}" end end end