Merge branch 'group-membership-pagination' of https://github.com/miquella/terraform

This commit is contained in:
stack72 2016-08-07 19:03:42 +12:00
commit 118906ed07
No known key found for this signature in database
GPG Key ID: 8619A619B085CB16

View File

@ -56,25 +56,35 @@ func resourceAwsIamGroupMembershipCreate(d *schema.ResourceData, meta interface{
func resourceAwsIamGroupMembershipRead(d *schema.ResourceData, meta interface{}) error {
conn := meta.(*AWSClient).iamconn
group := d.Get("group").(string)
resp, err := conn.GetGroup(&iam.GetGroupInput{
GroupName: aws.String(group),
})
if err != nil {
if awsErr, ok := err.(awserr.Error); ok {
// aws specific error
if awsErr.Code() == "NoSuchEntity" {
// group not found
d.SetId("")
return nil
var ul []string
var marker *string
for {
resp, err := conn.GetGroup(&iam.GetGroupInput{
GroupName: aws.String(group),
Marker: marker,
})
if err != nil {
if awsErr, ok := err.(awserr.Error); ok {
// aws specific error
if awsErr.Code() == "NoSuchEntity" {
// group not found
d.SetId("")
return nil
}
}
return err
}
return err
}
ul := make([]string, 0, len(resp.Users))
for _, u := range resp.Users {
ul = append(ul, *u.UserName)
for _, u := range resp.Users {
ul = append(ul, *u.UserName)
}
if !*resp.IsTruncated {
break
}
marker = resp.Marker
}
if err := d.Set("users", ul); err != nil {