mirror of
https://github.com/GAM-team/GAM.git
synced 2026-06-28 09:51:36 +00:00
Validate roles, upshift as required by API (#675)
This commit is contained in:
@@ -148,6 +148,7 @@ Named items
|
||||
<FilterID> ::= <Sttring>
|
||||
<FloorName> ::= <String>
|
||||
<GroupItem> ::= <EmailAddress>|<UniqueID>|<String>
|
||||
<GroupRole> :;= owner|manager|member
|
||||
<GuardianItem> ::= <EmailAddress>|<UniqueID>|<String>
|
||||
<GuardianInvitationID> ::= <String>
|
||||
<HoldItem> ::= <UniqueID>|<String>
|
||||
@@ -487,6 +488,7 @@ Items, separated by spaces, with spaces or commas in the items themselves: "'it
|
||||
<FloorNameList> ::= "<FloorName>(,<FloorName>)*"
|
||||
<GroupFieldNameList> ::= "<GroupFieldName>(,<GroupFieldName>)*"
|
||||
<GroupList> ::= "<GroupItem>(,<GroupItem>)*"
|
||||
<GroupRoleList> ::= "<GroupRole>(,<GroupRole>)*"
|
||||
<GuardianStateList> ::= "<GuardianState>(,<GuardianState>)*"
|
||||
<LabelNameList> ::= "<LabelName>(,<LabelName)*"
|
||||
<LanguageList> ::= "<Language>(,<Language)*"
|
||||
@@ -871,7 +873,7 @@ gam print groups [todrive] ([domain <DomainName>] [member <UserItem>])
|
||||
[delimiter <Character>] [sortheaders]
|
||||
|
||||
gam print group-members|groups-members [todrive] ([domain <DomainName>] [member <UserItem>])|[group <GroupItem>]
|
||||
[membernames] [fields <MembersFieldNameList>]
|
||||
[roles <GroupRoleList>] [membernames] [fields <MembersFieldNameList>]
|
||||
|
||||
gam print license|licenses|licence|licences [todrive] [(products|product <ProductIDList>)|(skus|sku <SKUIDList>)]
|
||||
|
||||
@@ -885,7 +887,7 @@ gam delete building <BuildingID>
|
||||
gam info building <BuildingID>
|
||||
gam print buildings [todrive]
|
||||
|
||||
gam create feature <Name>
|
||||
gam create feature name <Name>
|
||||
gam update feature <Name> name <Name>
|
||||
gam delete feature <Name>
|
||||
gam print features [todrive]
|
||||
|
||||
10
src/gam.py
10
src/gam.py
@@ -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']:
|
||||
|
||||
Reference in New Issue
Block a user