blob: f09fc1f7156193fba4d09b2f97b3900c4917471f [file] [log] [blame]
Jamie Hannaford0ca076c2014-10-30 13:12:35 +01001package roles
2
3import (
Jamie Hannaford1d58e7a2014-10-30 13:23:33 +01004 "github.com/racker/perigee"
Jamie Hannaford0ca076c2014-10-30 13:12:35 +01005 "github.com/rackspace/gophercloud"
6 "github.com/rackspace/gophercloud/pagination"
7)
8
9func List(client *gophercloud.ServiceClient) pagination.Pager {
10 createPage := func(r pagination.PageResult) pagination.Page {
11 return RolePage{pagination.SinglePageBase(r)}
12 }
13 return pagination.NewPager(client, rootURL(client), createPage)
14}
Jamie Hannaford9b642e02014-10-30 13:20:06 +010015
16func AddRoleToUser(client *gophercloud.ServiceClient, tenantID, userID, roleID string) AddRoleResult {
17 var result AddRoleResult
18
19 _, result.Err = perigee.Request("PUT", userRoleURL(client, tenantID, userID, roleID), perigee.Options{
20 MoreHeaders: client.AuthenticatedHeaders(),
21 OkCodes: []int{201},
22 })
23
24 return result
25}