Class/Module Index [+]

Quicksearch

Heroku::Command::Members

manage membership in organization accounts

Public Instance Methods

add() click to toggle source

members:add EMAIL [–org ORG] [–role ROLE]

adds a new member to an org

-r, –role ROLE # role for this member. One of ‘admin’ or ‘member’

# Default is 'member'
# File lib/heroku/command/members.rb, line 33
def add
  unless member = shift_argument
    error("Usage: heroku members:add EMAIL\nMust specify EMAIL to add.")
  end

  role = options.fetch(:role, 'member')

  action("Adding #{member} as #{role} to organization #{org}") do
    response = org_api.add_member(org, member, role)
    if response.status == 302
      org_api.set_member(org, member, role)
    end
  end
end
index() click to toggle source

members [–org ORG]

lists members in an org

-r, –role ROLE # list only members in ROLE

# File lib/heroku/command/members.rb, line 16
def index
  resp = org_api.get_members(org).body
  resp = resp.select { |m| m['role'] == options[:role] } if options[:role]
  list = resp.map { |m| [m['email'] , m['role']] }

  styled_header("Members of organization #{org}")
  styled_array(list)
rescue Excon::Errors::NotFound, Excon::Errors::Unauthorized, Excon::Errors::Forbidden
  error("You do not have access to organization #{org} or it doesn't exist")
end
remove() click to toggle source

members:remove EMAIL [–org ORG]

removes a member from an org

# File lib/heroku/command/members.rb, line 75
def remove
  unless member = shift_argument
    error("Usage: heroku members:remove EMAIL\nMust specify EMAIL to remove.")
  end

  action("Removing #{member} from organization #{org}") do
    org_api.remove_member(org, member)
  end
end
set() click to toggle source

members:set NAME [–org ORG] [–role ROLE]

change role of member in org

-r, –role ROLE # the new role for this member. One of ‘admin’ or ‘member’

# File lib/heroku/command/members.rb, line 55
def set
  unless member = shift_argument
    error("Usage: heroku members:set EMAIL\nMust specify EMAIL to update.")
  end

  role = options[:role] || 'member'
  unless %(admin member).include?(role)
    error("Invalid role. Must be one of 'admin' or 'member'")
  end

  action("Setting role of #{member} in organization #{org} to #{role}") do
    org_api.set_member(org, member, role)
  end
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.