Validate roles, upshift as required by API (#675)

This commit is contained in:
Ross Scroggs
2018-01-19 09:27:30 -08:00
committed by Jay Lee
parent 9f829c6990
commit d2bb1a83a1
2 changed files with 11 additions and 5 deletions

View File

@ -10533,7 +10533,7 @@ def doPrintGroupMembers():
customer = GC_Values[GC_CUSTOMER_ID]
usedomain = None
usemember = None
roles = None
roles = []
fields = None
titles = [u'group']
csvRows = []
@ -10561,7 +10561,11 @@ def doPrintGroupMembers():
titles.append(u'name')
i += 1
elif myarg in [u'role', u'roles']:
roles = sys.argv[i+1]
for role in sys.argv[i+1].lower().replace(u',', u' ').split():
if role in GROUP_ROLES_MAP:
roles.append(GROUP_ROLES_MAP[role])
else:
systemErrorExit(2, '%s is not a valid role for "gam print group-members %s"' % (role, myarg))
i += 2
elif myarg == u'group':
group_email = sys.argv[i+1].lower()
@ -10581,7 +10585,7 @@ def doPrintGroupMembers():
group_email = group[u'email']
sys.stderr.write(u'Getting members for %s (%s/%s)\n' % (group_email, i, count))
group_members = callGAPIpages(cd.members(), u'list', u'members',
soft_errors=True, roles=roles,
soft_errors=True, roles=u','.join(roles),
groupKey=group_email, fields=fields, maxResults=GC_Values[GC_MEMBER_MAX_RESULTS])
for member in group_members:
for unwanted_item in [u'kind', u'etag']: