class Opc::OpcOrgUserAdd

Attributes

org_name[RW]
username[RW]

Public Instance Methods

run() click to toggle source
# File lib/chef/knife/opc_org_user_add.rb, line 35
def run
  @org_name, @username = @name_args

  if !org_name || !username
    ui.fatal "You must specify an ORG_NAME and USER_NAME"
    show_usage
    exit 1
  end

  org = Chef::Org.new(@org_name)
  begin
    org.associate_user(@username)
  rescue Net::HTTPServerException => e
    if e.response.code == "409"
      ui.msg "User #{username} already associated with organization #{org_name}"
    else
      raise e
    end
  end
  if config[:admin]
    org.add_user_to_group("admins", @username)
    org.add_user_to_group("billing-admins", @username)
    ui.msg "User #{username} is added to admins and billing-admins group"
  end
end