Skip to content

Commit

Permalink
Retry the following unexpected errors in gam print users.
Browse files Browse the repository at this point in the history
ERROR: 400: failedPrecondition - Precondition check failed.
ERROR: 500: unknownError - Unknown Error.
  • Loading branch information
taers232c committed Oct 8, 2024
1 parent caddda2 commit cae58ff
Show file tree
Hide file tree
Showing 5 changed files with 44 additions and 12 deletions.
12 changes: 12 additions & 0 deletions docs/GamUpdates.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,18 @@ Add the `-s` option to the end of the above commands to suppress creating the `g

See [Downloads-Installs-GAM7](https://github.com/GAM-team/GAM/wiki/Downloads-Installs) for Windows or other options, including manual installation

### 7.00.14

Retry the following unexpected errors in `gam print users`.
```
ERROR: 400: failedPrecondition - Precondition check failed.
ERROR: 500: unknownError - Unknown Error.
```

### 7.00.13

Version bump in order to confirm MSI installs are operating properly

### 7.00.12

Updated option `showlastmodification` to `gam <UserTypeEntity> print|show filecounts` to handle
Expand Down
4 changes: 2 additions & 2 deletions docs/How-to-Upgrade-Legacy-GAM-to-GAM7.md
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,7 @@ writes the credentials into the file oauth2.txt.
admin@server:/Users/admin$ rm -f /Users/admin/GAMConfig/oauth2.txt
admin@server:/Users/admin$ gam version
WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found
GAM 7.00.13 - https://github.com/GAM-team/GAM - pyinstaller
GAM 7.00.14 - https://github.com/GAM-team/GAM - pyinstaller
GAM Team <[email protected]>
Python 3.12.7 64-bit final
MacOS Sonoma 14.5 x86_64
Expand Down Expand Up @@ -923,7 +923,7 @@ writes the credentials into the file oauth2.txt.
C:\>del C:\GAMConfig\oauth2.txt
C:\>gam version
WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found
GAM7 7.00.13 - https://github.com/GAM-team/GAM - pythonsource
GAM7 7.00.14 - https://github.com/GAM-team/GAM - pythonsource
GAM Team <[email protected]>
Python 3.12.7 64-bit final
Windows-10-10.0.17134 AMD64
Expand Down
12 changes: 6 additions & 6 deletions docs/Version-and-Help.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Print the current version of Gam with details
```
gam version
GAM 7.00.13 - https://github.com/GAM-team/GAM - pyinstaller
GAM 7.00.14 - https://github.com/GAM-team/GAM - pyinstaller
GAM Team <[email protected]>
Python 3.12.7 64-bit final
MacOS Sonoma 14.5 x86_64
Expand All @@ -15,7 +15,7 @@ Time: 2023-06-02T21:10:00-07:00
Print the current version of Gam with details and time offset information
```
gam version timeoffset
GAM 7.00.13 - https://github.com/GAM-team/GAM - pyinstaller
GAM 7.00.14 - https://github.com/GAM-team/GAM - pyinstaller
GAM Team <[email protected]>
Python 3.12.7 64-bit final
MacOS Sonoma 14.5 x86_64
Expand All @@ -27,7 +27,7 @@ Your system time differs from www.googleapis.com by less than 1 second
Print the current version of Gam with extended details and SSL information
```
gam version extended
GAM 7.00.13 - https://github.com/GAM-team/GAM - pyinstaller
GAM 7.00.14 - https://github.com/GAM-team/GAM - pyinstaller
GAM Team <[email protected]>
Python 3.12.7 64-bit final
MacOS Sonoma 14.5 x86_64
Expand Down Expand Up @@ -64,15 +64,15 @@ MacOS High Sierra 10.13.6 x86_64
Path: /Users/Admin/bin/gam7
Version Check:
Current: 5.35.08
Latest: 7.00.13
Latest: 7.00.14
echo $?
1
```

Print the current version number without details
```
gam version simple
7.00.13
7.00.14
```
In Linux/MacOS you can do:
```
Expand All @@ -82,7 +82,7 @@ echo $VER
Print the current version of Gam and address of this Wiki
```
gam help
GAM 7.00.13 - https://github.com/GAM-team/GAM
GAM 7.00.14 - https://github.com/GAM-team/GAM
GAM Team <[email protected]>
Python 3.12.7 64-bit final
MacOS Sonoma 14.5 x86_64
Expand Down
8 changes: 8 additions & 0 deletions src/GamUpdate.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
7.00.14

Retry the following unexpected errors in `gam print users`.
```
ERROR: 400: failedPrecondition - Precondition check failed.
ERROR: 500: unknownError - Unknown Error.
```

7.00.13

Version bump in order to confirm MSI installs are operating properly
Expand Down
20 changes: 16 additions & 4 deletions src/gam/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
"""

__author__ = 'GAM Team <[email protected]>'
__version__ = '7.00.13'
__version__ = '7.00.14'
__license__ = 'Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)'

#pylint: disable=wrong-import-position
Expand Down Expand Up @@ -18536,7 +18536,9 @@ def writeAliases(target, targetEmail, targetType):
entityList = callGAPIpages(cd.users(), 'list', 'users',
pageMessage=getPageMessage(showFirstLastItems=True), messageAttribute='primaryEmail',
throwReasons=[GAPI.INVALID_ORGUNIT, GAPI.INVALID_INPUT, GAPI.DOMAIN_NOT_FOUND,
GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN, GAPI.BAD_REQUEST],
GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN, GAPI.BAD_REQUEST,
GAPI.UNKNOWN_ERROR, GAPI.FAILED_PRECONDITION],
retryReasons=[GAPI.UNKNOWN_ERROR, GAPI.FAILED_PRECONDITION],
query=query, orderBy='email',
fields=f'nextPageToken,users({",".join(userFields)})',
maxResults=GC.Values[GC.USER_MAX_RESULTS], **kwargs)
Expand All @@ -18549,6 +18551,8 @@ def writeAliases(target, targetEmail, targetType):
except GAPI.domainNotFound as e:
entityActionFailedWarning([Ent.ALIAS, None, Ent.DOMAIN, kwargs['domain']], str(e))
continue
except (GAPI.unknownError, GAPI.failedPrecondition) as e:
entityActionFailedExit([Ent.USER, None], str(e))
except (GAPI.resourceNotFound, GAPI.forbidden, GAPI.badRequest):
accessErrorExit(cd)
count = len(users)
Expand Down Expand Up @@ -18631,9 +18635,13 @@ def doPrintAddresses():
try:
entityList = callGAPIpages(cd.users(), 'list', 'users',
pageMessage=getPageMessage(showFirstLastItems=True), messageAttribute='primaryEmail',
throwReasons=[GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN, GAPI.BAD_REQUEST],
throwReasons=[GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN, GAPI.BAD_REQUEST,
GAPI.UNKNOWN_ERROR, GAPI.FAILED_PRECONDITION],
retryReasons=[GAPI.UNKNOWN_ERROR, GAPI.FAILED_PRECONDITION],
orderBy='email', fields=f'nextPageToken,users({",".join(userFields)})',
maxResults=GC.Values[GC.USER_MAX_RESULTS], **kwargs)
except (GAPI.unknownError, GAPI.failedPrecondition) as e:
entityActionFailedExit([Ent.USER, None], str(e))
except (GAPI.resourceNotFound, GAPI.forbidden, GAPI.badRequest):
accessErrorExit(cd)
for user in entityList:
Expand Down Expand Up @@ -44598,7 +44606,9 @@ def _callbackPrintUser(request_id, response, exception):
feed = yieldGAPIpages(cd.users(), 'list', 'users',
pageMessage=pageMessage, messageAttribute='primaryEmail',
throwReasons=[GAPI.DOMAIN_NOT_FOUND, GAPI.INVALID_ORGUNIT, GAPI.INVALID_INPUT,
GAPI.BAD_REQUEST, GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN],
GAPI.BAD_REQUEST, GAPI.RESOURCE_NOT_FOUND, GAPI.FORBIDDEN,
GAPI.UNKNOWN_ERROR, GAPI.FAILED_PRECONDITION],
retryReasons=[GAPI.UNKNOWN_ERROR, GAPI.FAILED_PRECONDITION],
query=query, fields=fields,
showDeleted=showDeleted, orderBy=orderBy, sortOrder=sortOrder, viewType=viewType,
projection=schemaParms['projection'], customFieldMask=schemaParms['customFieldMask'],
Expand Down Expand Up @@ -44639,6 +44649,8 @@ def _callbackPrintUser(request_id, response, exception):
else:
entityActionFailedWarning([Ent.USER, None], str(e))
continue
except (GAPI.unknownError, GAPI.failedPrecondition) as e:
entityActionFailedExit([Ent.USER, None], str(e))
except (GAPI.badRequest, GAPI.resourceNotFound, GAPI.forbidden):
accessErrorExit(cd)
if showItemCountOnly:
Expand Down

0 comments on commit cae58ff

Please sign in to comment.