gam7 7.20.3__tar.gz → 7.28.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gam7-7.20.3 → gam7-7.28.4}/.github/workflows/build.yml +99 -48
- {gam7-7.20.3 → gam7-7.28.4}/.github/workflows/get-cacerts.yml +1 -1
- {gam7-7.20.3 → gam7-7.28.4}/.github/workflows/pushwiki.yml +1 -1
- {gam7-7.20.3 → gam7-7.28.4}/.github/workflows/pypi.yml +1 -1
- {gam7-7.20.3 → gam7-7.28.4}/PKG-INFO +10 -4
- {gam7-7.20.3 → gam7-7.28.4}/README.md +5 -0
- {gam7-7.20.3 → gam7-7.28.4}/pyproject.toml +4 -3
- {gam7-7.20.3 → gam7-7.28.4}/src/GamCommands.txt +203 -151
- {gam7-7.20.3 → gam7-7.28.4}/src/GamUpdate.txt +310 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/__init__.py +1301 -673
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/__main__.py +6 -1
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glapi.py +35 -19
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glcfg.py +12 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glclargs.py +288 -5
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glentity.py +11 -3
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glglobals.py +3 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glmsgs.py +3 -1
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glverlibs.py +1 -1
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/yubikey.py +13 -12
- {gam7-7.20.3 → gam7-7.28.4}/src/gam-install.sh +0 -5
- {gam7-7.20.3 → gam7-7.28.4}/src/gam.spec +1 -2
- gam7-7.28.4/src/tools/hooks/hook-googleapiclient.model.py +21 -0
- gam7-7.28.4/src/tools/hooks/hook-httplib2.py +19 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/tools/ssd.mjs +7 -4
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Administrators.md +16 -7
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Aliases.md +3 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Authorization.md +2 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Basic-Items.md +4 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Bulk-Processing.md +6 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Business-Account-Management.md +0 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Calendars-Events.md +7 -3
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chat-Bot-Setup-Use.md +12 -2
- gam7-7.28.4/wiki/Chrome-Device-Counts.md +65 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chrome-Installed-Apps.md +3 -3
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chrome-Policies.md +11 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chrome-Profile-Management.md +0 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/ChromeOS-Devices.md +4 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Classroom-Courses.md +17 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Classroom-Membership.md +3 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Classroom-StudentGroups.md +3 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Cloud-Identity-Devices.md +6 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Cloud-Identity-Groups.md +5 -12
- gam7-7.28.4/wiki/Cloud-Identity-Policies.md +137 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Collections-of-Users.md +135 -44
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Command-Data-From-Google-Docs-Sheets-Storage.md +20 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Command-Line-Parsing.md +23 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Context-Aware-Access-Levels.md +0 -4
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Domain-SharedContacts.md +1 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Domains.md +18 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Downloads-Installs.md +15 -5
- gam7-7.28.4/wiki/GAM-Release-Process.md +21 -0
- gam7-7.20.3/wiki/l-GAM7-FAQ.md → gam7-7.28.4/wiki/GAM7-FAQ.md +3 -3
- {gam7-7.20.3 → gam7-7.28.4}/wiki/GAM7-on-Android-Devices.md +1 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/GAM7-on-Chrome-OS-Devices.md +1 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/GamUpdates.md +310 -3
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Google-Data-Transfers.md +1 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Groups-Membership.md +44 -36
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Groups.md +4 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/How-to-Upgrade-Legacy-GAM-to-GAM7.md +6 -6
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Licenses.md +1 -5
- {gam7-7.20.3 → gam7-7.28.4}/wiki/List-Items.md +2 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Mobile-Devices.md +3 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Organizational-Units.md +10 -4
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Reports.md +136 -103
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Reseller.md +0 -15
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Resources.md +3 -1
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Running-GAM7-securely-on-a-Google-Compute-Engine.md +2 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Scripts.md +2 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Shared-Drives.md +8 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Todrive.md +12 -10
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Calendars-Events.md +6 -3
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Chat.md +40 -30
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Contacts.md +2 -11
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Cleanup.md +1 -11
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Copy-Move.md +51 -11
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Files-Display.md +6 -9
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Files-Manage.md +12 -9
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Permissions.md +156 -26
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Shortcuts.md +2 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-Delegates.md +69 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-Labels.md +1 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Meet.md +0 -2
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-People-Contacts-Profiles.md +10 -17
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Shared-Drives.md +6 -4
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Tasks.md +3 -3
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users.md +34 -32
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Using-GAM7-with-a-YubiKey.md +3 -8
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Using-GAM7-with-a-delegated-admin-service-account.md +1 -1
- gam7-7.28.4/wiki/Using-GAM7-with-keyless-authentication-Workload-Identity-Federation.md +290 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Vault-Takeout.md +193 -60
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Version-and-Help.md +27 -23
- {gam7-7.20.3 → gam7-7.28.4}/wiki/_Sidebar.md +4 -27
- gam7-7.28.4/wiki/foo.lst +1 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/gam.cfg.md +16 -1
- gam7-7.20.3/.pre-commit-config.yaml +0 -32
- gam7-7.20.3/src/gam/cacerts.pem +0 -747
- gam7-7.20.3/src/gam/googleapiclient/__init__.py +0 -27
- gam7-7.20.3/src/gam/googleapiclient/_auth.py +0 -167
- gam7-7.20.3/src/gam/googleapiclient/_helpers.py +0 -207
- gam7-7.20.3/src/gam/googleapiclient/channel.py +0 -315
- gam7-7.20.3/src/gam/googleapiclient/discovery.py +0 -1662
- gam7-7.20.3/src/gam/googleapiclient/discovery_cache/__init__.py +0 -78
- gam7-7.20.3/src/gam/googleapiclient/discovery_cache/appengine_memcache.py +0 -55
- gam7-7.20.3/src/gam/googleapiclient/discovery_cache/base.py +0 -46
- gam7-7.20.3/src/gam/googleapiclient/discovery_cache/file_cache.py +0 -145
- gam7-7.20.3/src/gam/googleapiclient/errors.py +0 -197
- gam7-7.20.3/src/gam/googleapiclient/http.py +0 -1962
- gam7-7.20.3/src/gam/googleapiclient/mimeparse.py +0 -183
- gam7-7.20.3/src/gam/googleapiclient/model.py +0 -429
- gam7-7.20.3/src/gam/googleapiclient/schema.py +0 -317
- gam7-7.20.3/src/gam/googleapiclient/version.py +0 -15
- gam7-7.20.3/src/gam/iso8601/__init__.py +0 -28
- gam7-7.20.3/src/gam/iso8601/iso8601.py +0 -160
- gam7-7.20.3/src/gam/six.py +0 -982
- gam7-7.20.3/src/requirements-dev.txt +0 -7
- gam7-7.20.3/wiki/Cloud-Identity-Policies.md +0 -416
- gam7-7.20.3/wiki/l-Running-GAM-on-Google-Compute-Engine-(GCE)-Securely.md +0 -54
- gam7-7.20.3/wiki/l-Use-a-Yubikey.md +0 -49
- {gam7-7.20.3 → gam7-7.28.4}/.github/ISSUE_TEMPLATE/aa-question.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/.github/ISSUE_TEMPLATE/za-bug-report.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/.github/ISSUE_TEMPLATE/zz-feature-request.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/.github/ISSUE_TEMPLATE.txt +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/.github/actions/decrypt.sh +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/.github/actions/entitlements.plist +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/.github/actions/package_exclusions.txt +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/.github/stale.yml +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/.github/workflows/codeql-analysis.yml +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/LICENSE +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/.gitignore +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/LICENSE +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/README.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/callgam.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/__init__.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/auth.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/client.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/core.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/data.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/http.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/http_core.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/http_interface.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/mock_http.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/mock_http_core.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/mock_service.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/service.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/token_store.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/atom/url.py +0 -0
- {gam7-7.20.3/src → gam7-7.28.4/src/gam}/cacerts.pem +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/cbcm-v1.1beta1.json +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/contactdelegation-v1.json +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/datastudio-v1.json +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/__init__.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glaction.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glgapi.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glgdata.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glindent.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/glskus.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gamlib/gluprop.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/__init__.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/alt/__init__.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/alt/app_engine.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/alt/appengine.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/apps/__init__.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/apps/audit/__init__.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/apps/audit/service.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/apps/contacts/__init__.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/apps/contacts/service.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/apps/service.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/service.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/gdata/urlfetch.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/meet-v2beta.json +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam/serviceaccountlookup-v1.json +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam-setup.bat +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam.exe.manifest +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/gam.wxs +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/license.rtf +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/tools/a_atleast_b.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/tools/gen-wix-xml-filelist.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/tools/mkGamRef.py +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/tools/openssl.props +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/src/version_info.txt.in +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/00scratch.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Addresses.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Alert-Center.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/BNF-Syntax.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/CSV-Input-Filtering.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/CSV-Output-Filtering.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/CSV-Special-Characters.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Calendars-Access.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Calendars.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chrome-AUE-Counts.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chrome-Browser-Cloud-Management.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chrome-Needs-Attention-Counts.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chrome-Printers.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chrome-Version-Counts.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Chrome-Version-History.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Classroom-Guardians.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Classroom-Invitations.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Cloud-Channel.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Cloud-Identity-Groups-Membership.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Cloud-Storage.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Collections-of-ChromeOS-Devices.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Collections-of-Items.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Command-Logging-Progress.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Customer.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Domain-People-Contacts-Profiles.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Domains-Verification.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Drive-File-Selection.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Drive-Items.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Drive-REST-API-v3.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Email-Audit-Monitor.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Find-File-Owner.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/GAM-Public-Chat-Room.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/GAM-Return-Codes.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/GAM-with-minimal-GCP-rights.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Global-Address-List.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Google-Network-Addresses.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/HTTPS-Proxy.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Home.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/How-to-Install-GAM7.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/How-to-Uninstall-GAM7.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/How-to-Update-GAM7.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/How-to-Upgrade-GAMADV-XTD3-to-GAM7.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Inbound-SSO.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Install-GAM-as-Python-Library.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/List.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Meta-Commands-and-File-Redirection.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Other-Resources.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Permission-Matches.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Python-Regular-Expressions.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/README.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Rclone.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/SSL-Root-CA-Certificates.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Schemas.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Send-Email.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Sites.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Tag-Replace.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Unmanaged-Accounts.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Upgrade-Benefits.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Analytics-Admin.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Application-Specific-Passwords.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Backup-Verification-Codes.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Calendars-Access.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Calendars.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Classification-Labels.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Classroom-Profile.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Contacts-Delegates.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Deprovision.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Activity-Settings.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Comments.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Orphans.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Ownership.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Query.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Revisions.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Drive-Transfer.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Forms.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-CSE.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-Filters.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-Forwarding.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-Messages-Threads.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-Profile.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-S-MIME.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-Send-As-Signature-Vacation.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Gmail-Settings.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Group-Membership.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Keep-Notes.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Looker-Studio.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Photo.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Profile-Photo.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Profile-Sharing.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Signout-Turnoff2SV.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Spreadsheets.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Tag-Manager.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Tokens.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-Web-Resources-and-Sites.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Users-YouTube.md +0 -0
- {gam7-7.20.3 → gam7-7.28.4}/wiki/Verifying-a-GAM7-Build-is-Legitimate-and-Official.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-AdminSettingsExamples.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Android-Installation.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-BulkOperations.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-CalendarExamples.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Chat-Bot.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Chrome-Browser-Management.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Chrome-OS-Installation.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Chrome-Policy-Settings.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Cloud-Identity-Groups.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Command-Reference-Calendar-Resources.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Command-Reference-Calendars.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Command-Reference-Definitions.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Command-Reference-Drive.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Command-Reference-Email.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Command-Reference-Group-Attributes.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Command-Reference-Groups.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Command-Reference-Users.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Context-Aware-Access-Levels.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Creating-client_secrets.json-and-oauth2service.json.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-CreatingClientSecretsFile.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Custom-Schemas.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Data-Transfers.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-DomainVerification.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-ExamplesAccountAuditing.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-ExamplesCSV.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-ExamplesEmailSettings.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-ExamplesOrganizations.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-GAM-Discussion-Group.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-GAM-on-Android-and-Chrome-OS.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-GAM-options-files.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-GAM-with--minimal-GCP-rights.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-GAM3CSVListings.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-GAM3DirectoryCommands.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-GAM3GroupSettings.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Google-Vault---Takeout-Commands.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-GoogleDriveManagement.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Grouping-18-or-Older-Users.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Home.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-How-to-upgrade-from-Standard-GAM.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Inbound-SSO-Settings.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-LicenseExamples.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Managing-Admins.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Managing-CloudPrint-Printers.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Managing-Devices.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Managing-Google-Classroom.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-OAuthKeyManagement.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Printers.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-ResellerCommands.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-SecurityExamples.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-UnmanagedUsersExamples.md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-Using-GAM-with-a-delegated-admin-service-account-(DASA).md +0 -0
- {gam7-7.20.3/wiki → gam7-7.28.4/wiki/legacy}/l-_Footer.md +0 -0
|
@@ -41,70 +41,96 @@ jobs:
|
|
|
41
41
|
include:
|
|
42
42
|
- os: ubuntu-22.04
|
|
43
43
|
jid: 1
|
|
44
|
+
freethreaded: false
|
|
44
45
|
goal: build
|
|
45
46
|
name: Build Intel Ubuntu Jammy
|
|
46
47
|
- os: ubuntu-24.04
|
|
47
48
|
jid: 2
|
|
49
|
+
freethreaded: false
|
|
48
50
|
goal: build
|
|
49
51
|
name: Build Intel Ubuntu Noble
|
|
50
52
|
- os: ubuntu-24.04-arm
|
|
51
53
|
jid: 3
|
|
54
|
+
freethreaded: false
|
|
52
55
|
goal: build
|
|
53
56
|
name: Build Arm Ubuntu Noble
|
|
54
57
|
- os: ubuntu-22.04-arm
|
|
55
58
|
jid: 4
|
|
59
|
+
freethreaded: false
|
|
56
60
|
goal: build
|
|
57
61
|
name: Build Arm Ubuntu Jammy
|
|
58
62
|
- os: ubuntu-22.04
|
|
59
63
|
jid: 5
|
|
64
|
+
freethreaded: false
|
|
60
65
|
goal: build
|
|
61
66
|
staticx: yes
|
|
62
67
|
name: Build Intel StaticX Legacy
|
|
63
68
|
- os: ubuntu-22.04-arm
|
|
64
69
|
jid: 6
|
|
70
|
+
freethreaded: false
|
|
65
71
|
goal: build
|
|
66
72
|
staticx: yes
|
|
67
73
|
name: Build Arm StaticX Legacy
|
|
68
|
-
- os: macos-13
|
|
69
|
-
jid: 7
|
|
70
|
-
goal: build
|
|
71
|
-
name: Build Intel MacOS
|
|
72
74
|
- os: macos-14
|
|
73
75
|
jid: 8
|
|
76
|
+
freethreaded: false
|
|
74
77
|
goal: build
|
|
75
78
|
name: Build Arm MacOS 14
|
|
76
79
|
- os: macos-15
|
|
77
80
|
jid: 9
|
|
81
|
+
freethreaded: false
|
|
78
82
|
goal: build
|
|
79
83
|
name: Build Arm MacOS 15
|
|
80
|
-
- os:
|
|
84
|
+
- os: macos-15-intel
|
|
81
85
|
jid: 10
|
|
86
|
+
freethreaded: false
|
|
87
|
+
goal: build
|
|
88
|
+
name: Build x86_64 macOS 15
|
|
89
|
+
- os: macos-26
|
|
90
|
+
jid: 11
|
|
91
|
+
freethreaded: false
|
|
92
|
+
goal: build
|
|
93
|
+
name: Build Arm MacOS 26
|
|
94
|
+
- os: windows-2025
|
|
95
|
+
jid: 12
|
|
96
|
+
freethreaded: false
|
|
82
97
|
goal: build
|
|
83
98
|
name: Build Intel Windows
|
|
84
99
|
- os: windows-11-arm
|
|
85
|
-
jid:
|
|
100
|
+
jid: 13
|
|
101
|
+
freethreaded: false
|
|
86
102
|
goal: build
|
|
87
103
|
name: Build Arm Windows
|
|
88
104
|
- os: ubuntu-24.04
|
|
89
105
|
goal: test
|
|
90
106
|
python: "3.10"
|
|
91
|
-
|
|
107
|
+
freethreaded: false
|
|
108
|
+
jid: 14
|
|
92
109
|
name: Test Python 3.10
|
|
93
110
|
- os: ubuntu-24.04
|
|
94
111
|
goal: test
|
|
95
112
|
python: "3.11"
|
|
96
|
-
|
|
113
|
+
freethreaded: false
|
|
114
|
+
jid: 15
|
|
97
115
|
name: Test Python 3.11
|
|
98
116
|
- os: ubuntu-24.04
|
|
99
117
|
goal: test
|
|
100
118
|
python: "3.12"
|
|
101
|
-
|
|
119
|
+
freethreaded: false
|
|
120
|
+
jid: 16
|
|
102
121
|
name: Test Python 3.12
|
|
103
122
|
- os: ubuntu-24.04
|
|
104
123
|
goal: test
|
|
105
|
-
python: "3.
|
|
106
|
-
|
|
107
|
-
|
|
124
|
+
python: "3.15-dev"
|
|
125
|
+
freethreaded: false
|
|
126
|
+
jid: 17
|
|
127
|
+
name: Test Python 3.15-dev
|
|
128
|
+
- os: ubuntu-24.04
|
|
129
|
+
goal: test
|
|
130
|
+
python: "3.14"
|
|
131
|
+
freethreaded: true
|
|
132
|
+
jid: 18
|
|
133
|
+
name: Test Python 3.14 freethread
|
|
108
134
|
|
|
109
135
|
steps:
|
|
110
136
|
|
|
@@ -127,7 +153,7 @@ jobs:
|
|
|
127
153
|
with:
|
|
128
154
|
path: |
|
|
129
155
|
cache.tar.xz
|
|
130
|
-
key: gam-${{ matrix.jid }}-
|
|
156
|
+
key: gam-${{ matrix.jid }}-20251031
|
|
131
157
|
|
|
132
158
|
- name: Untar Cache archive
|
|
133
159
|
if: matrix.goal == 'build' && steps.cache-python-ssl.outputs.cache-hit == 'true'
|
|
@@ -137,17 +163,19 @@ jobs:
|
|
|
137
163
|
|
|
138
164
|
- name: Use pre-compiled Python for testing
|
|
139
165
|
if: matrix.python != ''
|
|
140
|
-
uses: actions/setup-python@
|
|
166
|
+
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
|
141
167
|
with:
|
|
142
168
|
python-version: ${{ matrix.python }}
|
|
143
169
|
allow-prereleases: true
|
|
144
170
|
check-latest: true
|
|
171
|
+
freethreaded: ${{ matrix.freethreaded }}
|
|
145
172
|
|
|
146
173
|
- name: common variables for all runs
|
|
147
174
|
env:
|
|
148
175
|
JID: ${{ matrix.jid }}
|
|
149
176
|
ACTIONS_CACHE: ${{ steps.cache-python-ssl.outputs.cache-hit }}
|
|
150
177
|
ACTIONS_GOAL: ${{ matrix.goal }}
|
|
178
|
+
freethreaded: ${{ matrix.freethreaded }}
|
|
151
179
|
run: |
|
|
152
180
|
case $RUNNER_ARCH in
|
|
153
181
|
X64)
|
|
@@ -161,6 +189,12 @@ jobs:
|
|
|
161
189
|
;;
|
|
162
190
|
esac
|
|
163
191
|
echo "JID=${JID}" >> $GITHUB_ENV
|
|
192
|
+
echo "freethreaded=${freethreaded}" >> $GITHUB_ENV
|
|
193
|
+
if "$freethreaded"; then
|
|
194
|
+
# Hush some warnings while we test
|
|
195
|
+
export PYTHON_GIL=0
|
|
196
|
+
echo "PYTHON_GIL=${PYTHON_GIL}" >> $GITHUB_ENV
|
|
197
|
+
fi
|
|
164
198
|
echo "ACTIONS_CACHE=${ACTIONS_CACHE}" >> $GITHUB_ENV
|
|
165
199
|
echo "ACTIONS_GOAL=${ACTIONS_GOAL}" >> $GITHUB_ENV
|
|
166
200
|
curl_version=$(curl --version | head -n 1 | awk '{ print $2 }')
|
|
@@ -186,13 +220,9 @@ jobs:
|
|
|
186
220
|
if: matrix.goal == 'test'
|
|
187
221
|
run: |
|
|
188
222
|
export PYTHON=$(which python3)
|
|
189
|
-
export
|
|
190
|
-
|
|
191
|
-
export gampath="$(readlink -e .)"
|
|
192
|
-
echo -e "PYTHON: ${PYTHON}\nPIP: ${PIP}\gam: ${gam}\ngampath: ${gampath}"
|
|
223
|
+
export gampath="$(readlink -e .)/gam"
|
|
224
|
+
echo -e "PYTHON: ${PYTHON}\ngam: ${gam}\ngampath: ${gampath}"
|
|
193
225
|
echo "PYTHON=${PYTHON}" >> $GITHUB_ENV
|
|
194
|
-
echo "PIP=${PIP}" >> $GITHUB_ENV
|
|
195
|
-
echo "gam=${gam}" >> $GITHUB_ENV
|
|
196
226
|
echo "gampath=${gampath}" >> $GITHUB_ENV
|
|
197
227
|
|
|
198
228
|
- name: Install necessary Github-hosted Linux packages
|
|
@@ -223,7 +253,7 @@ jobs:
|
|
|
223
253
|
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
|
|
224
254
|
|
|
225
255
|
- name: Windows Configure VCode
|
|
226
|
-
uses: ilammy/msvc-dev-cmd@
|
|
256
|
+
uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
|
|
227
257
|
if: runner.os == 'Windows' && steps.cache-python-ssl.outputs.cache-hit != 'true'
|
|
228
258
|
with:
|
|
229
259
|
arch: ${{ runner.arch }}
|
|
@@ -253,14 +283,15 @@ jobs:
|
|
|
253
283
|
MAKEOPT=""
|
|
254
284
|
PERL="c:\strawberry\perl\bin\perl.exe"
|
|
255
285
|
if [[ "$RUNNER_ARCH" == "ARM64" ]]; then
|
|
256
|
-
|
|
286
|
+
PYEXTERNALS_ARCH="arm64"
|
|
257
287
|
WIX_ARCH="arm64"
|
|
258
288
|
elif [[ "$RUNNER_ARCH" == "X64" ]]; then
|
|
259
|
-
|
|
289
|
+
PYEXTERNALS_ARCH="amd64"
|
|
260
290
|
WIX_ARCH="x64"
|
|
261
291
|
fi
|
|
262
|
-
|
|
263
|
-
|
|
292
|
+
PYEXTERNALS_PATH=$(cygpath -u "${PYTHON_SOURCE_PATH}/PCbuild/${PYEXTERNALS_ARCH}")
|
|
293
|
+
LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${PYEXTERNALS_PATH}"
|
|
294
|
+
echo "PYTHON=${PYTHON_SOURCE_PATH}/PCbuild/${PYEXTERNALS_ARCH}/python.exe" >> $GITHUB_ENV
|
|
264
295
|
echo "WIX_ARCH=${WIX_ARCH}" >> $GITHUB_ENV
|
|
265
296
|
fi
|
|
266
297
|
echo "We'll run make with: ${MAKEOPT}"
|
|
@@ -285,7 +316,7 @@ jobs:
|
|
|
285
316
|
echo "COMPILED_OPENSSL_VERSION=${COMPILED_OPENSSL_VERSION}" >> $GITHUB_ENV
|
|
286
317
|
|
|
287
318
|
- name: Windows NASM Install
|
|
288
|
-
uses: ilammy/setup-nasm@
|
|
319
|
+
uses: ilammy/setup-nasm@72793074d3c8cdda771dba85f6deafe00623038b # v1.5.2
|
|
289
320
|
if: matrix.goal == 'build' && runner.os == 'Windows' && runner.arch == 'X64' && steps.cache-python-ssl.outputs.cache-hit != 'true'
|
|
290
321
|
|
|
291
322
|
- name: Config OpenSSL
|
|
@@ -443,32 +474,50 @@ jobs:
|
|
|
443
474
|
"${PYTHON}" -V
|
|
444
475
|
"${PYTHON}" -c "import ssl; print(f'Using {ssl.OPENSSL_VERSION}')"
|
|
445
476
|
|
|
477
|
+
- name: Create and use Python venv
|
|
478
|
+
run: |
|
|
479
|
+
cd "$GITHUB_WORKSPACE"
|
|
480
|
+
curl -o get-pip.py https://bootstrap.pypa.io/get-pip.py
|
|
481
|
+
"$PYTHON" get-pip.py
|
|
482
|
+
"$PYTHON" -m venv venv
|
|
483
|
+
if [[ "$RUNNER_OS" == "Windows" ]]; then
|
|
484
|
+
# pyscard seems to build outside venv but not in it.
|
|
485
|
+
# build it so it's cached.
|
|
486
|
+
"$PYTHON" -m pip install --upgrade --force-reinstall pyscard
|
|
487
|
+
export PYTHON="${GITHUB_WORKSPACE}/venv/scripts/python.exe"
|
|
488
|
+
else
|
|
489
|
+
export PYTHON="${GITHUB_WORKSPACE}/venv/bin/python3"
|
|
490
|
+
fi
|
|
491
|
+
echo "PYTHON=${PYTHON}" >> $GITHUB_ENV
|
|
492
|
+
if [[ "$ACTIONS_GOAL" == "test" ]]; then
|
|
493
|
+
export gam="${PYTHON} gam.py"
|
|
494
|
+
echo "gam=${gam}" >> $GITHUB_ENV
|
|
495
|
+
fi
|
|
496
|
+
|
|
446
497
|
- name: Upgrade pip, wheel, etc
|
|
447
498
|
run: |
|
|
448
499
|
curl $curl_retry -O https://bootstrap.pypa.io/get-pip.py
|
|
449
500
|
"$PYTHON" get-pip.py
|
|
450
501
|
"$PYTHON" -m pip install --upgrade pip
|
|
451
502
|
"$PYTHON" -m pip install --upgrade wheel
|
|
452
|
-
"$PYTHON" -m pip install setuptools
|
|
503
|
+
"$PYTHON" -m pip install --upgrade setuptools
|
|
453
504
|
"$PYTHON" -m pip install --upgrade importlib-metadata
|
|
454
505
|
"$PYTHON" -m pip install --upgrade setuptools-scm
|
|
506
|
+
"$PYTHON" -m pip install --upgrade packaging
|
|
455
507
|
"$PYTHON" -m pip list
|
|
456
508
|
|
|
457
|
-
- name: Custom wheels for Win arm64
|
|
458
|
-
if: runner.os == 'Windows' && runner.arch == 'ARM64'
|
|
459
|
-
run: |
|
|
460
|
-
latest_crypt_whl=$(curl https://api.github.com/repos/jay0lee/cryptography/releases/latest -s | jq -r .assets.[0].browser_download_url)
|
|
461
|
-
echo "Downloading ${latest_crypt_whl}..."
|
|
462
|
-
curl -O -L "$latest_crypt_whl"
|
|
463
|
-
"$PYTHON" -m pip install cryptography*.whl
|
|
464
|
-
|
|
465
509
|
- name: Install pip requirements
|
|
466
510
|
run: |
|
|
467
511
|
echo "before anything..."
|
|
468
512
|
"$PYTHON" -m pip list
|
|
469
|
-
"
|
|
470
|
-
"$PYTHON" -m pip
|
|
471
|
-
|
|
513
|
+
echo "--info--"
|
|
514
|
+
"$PYTHON" -m pip cache info
|
|
515
|
+
echo "--list--"
|
|
516
|
+
"$PYTHON" -m pip cache list
|
|
517
|
+
echo "--pip debug verbose--"
|
|
518
|
+
"$PYTHON" -m pip debug --verbose
|
|
519
|
+
echo "--------"
|
|
520
|
+
"$PYTHON" -m pip install -vvv --upgrade ..[yubikey]
|
|
472
521
|
echo "after everything..."
|
|
473
522
|
"$PYTHON" -m pip list
|
|
474
523
|
|
|
@@ -538,7 +587,7 @@ jobs:
|
|
|
538
587
|
- name: Copy extra package files
|
|
539
588
|
if: matrix.goal == 'build'
|
|
540
589
|
run: |
|
|
541
|
-
cp -v cacerts.pem "$gampath"
|
|
590
|
+
cp -v gam/cacerts.pem "$gampath"
|
|
542
591
|
cp -v LICENSE "$gampath"
|
|
543
592
|
cp -v GamCommands.txt "$gampath"
|
|
544
593
|
cp -v GamUpdate.txt "$gampath"
|
|
@@ -588,7 +637,6 @@ jobs:
|
|
|
588
637
|
- name: Basic Tests all jobs
|
|
589
638
|
id: basictests
|
|
590
639
|
run: |
|
|
591
|
-
$PYTHON -m unittest discover --start-directory ./ --pattern "*_test.py" --buffer || if [ $? != 5 ]; then exit $?; fi # exit 5 is no tests
|
|
592
640
|
$gam version extended nooffseterror
|
|
593
641
|
export GAMVERSION=$($gam version simple)
|
|
594
642
|
echo "GAM Version ${GAMVERSION}"
|
|
@@ -750,6 +798,7 @@ jobs:
|
|
|
750
798
|
gam*.tar.xz
|
|
751
799
|
gam*.zip
|
|
752
800
|
gam*.msi
|
|
801
|
+
*.png
|
|
753
802
|
|
|
754
803
|
- name: Basic Tests build jobs only
|
|
755
804
|
if: matrix.goal != 'test' && steps.cache-python-ssl.outputs.cache-hit != 'true'
|
|
@@ -842,9 +891,10 @@ jobs:
|
|
|
842
891
|
$gam config enable_dasa false save
|
|
843
892
|
# 9/17/24 temp disable due to Google API sluggishness to see new users for admin commands
|
|
844
893
|
# $gam create admin $newuser _GROUPS_EDITOR_ROLE CUSTOMER # condition nonsecuritygroup
|
|
845
|
-
|
|
846
|
-
$gam
|
|
847
|
-
$gam config csv_output_row_filter "
|
|
894
|
+
# 9/13/25 temp disable due to hangs
|
|
895
|
+
# $gam create admin $newgroup _HELP_DESK_ADMIN_ROLE org_unit "${newou}"
|
|
896
|
+
# $gam config csv_output_row_filter "assignedToUser:regex:${newuser}" print admins | $gam csv - gam delete admin "~roleAssignmentId"
|
|
897
|
+
# $gam config csv_output_row_filter "assignedToGroup:regex:${newgroup}" print admins | $gam csv - gam delete admin "~roleAssignmentId"
|
|
848
898
|
$gam config enable_dasa false save
|
|
849
899
|
$gam csv sample.csv gam create user ~~email~~ firstname "GHA Bulk" lastname ~~email~~ gha.jid $JID ou "${newou}"
|
|
850
900
|
$gam csv sample.csv gam update user ~~email~~ recoveryphone 12125121110 recoveryemail jay0lee@gmail.com password random displayname "GitHub Actions Bulk ${JID}"
|
|
@@ -895,11 +945,11 @@ jobs:
|
|
|
895
945
|
$gam calendar $gam_user printevents after -0d
|
|
896
946
|
$gam config enable_dasa false save
|
|
897
947
|
matterid=uid:$($gam create vaultmatter name "GHA matter $newbase" description "test matter" returnidonly)
|
|
898
|
-
$gam create vaulthold matter $matterid name "GHA hold $newbase" corpus mail
|
|
948
|
+
$gam create vaulthold matter $matterid name "GHA hold ${newbase}" corpus mail ou "$newou"
|
|
899
949
|
$gam print vaultmatters matterstate open
|
|
900
950
|
$gam print vaultholds matter $matterid
|
|
901
951
|
$gam print vaultcount matter $matterid corpus mail everyone todrive tdnobrowser
|
|
902
|
-
$gam create vaultexport matter $matterid name "GHA export $newbase" corpus mail
|
|
952
|
+
$gam create vaultexport matter $matterid name "GHA export $newbase" corpus mail ou "$newou"
|
|
903
953
|
$gam print exports matter $matterid | $gam csv - gam info export $matterid id:~~id~~
|
|
904
954
|
$gam config enable_dasa true save
|
|
905
955
|
$gam csv sample.csv gam user ~email add calendar id:$newresource
|
|
@@ -939,7 +989,7 @@ jobs:
|
|
|
939
989
|
$gam report usageparameters customer
|
|
940
990
|
$gam report usage customer parameters gmail:num_emails_sent,accounts:num_1day_logins
|
|
941
991
|
$gam report customer todrive tdnobrowser
|
|
942
|
-
#$gam report users fields accounts:is_less_secure_apps_access_allowed,gmail:last_imap_time,gmail:last_pop_time filters "accounts:last_login_time>
|
|
992
|
+
#$gam report users fields accounts:is_less_secure_apps_access_allowed,gmail:last_imap_time,gmail:last_pop_time filters "accounts:last_login_time>2025-01-01T00:00:00.000Z" todrive tdnobrowser
|
|
943
993
|
$gam report users todrive tdnobrowser
|
|
944
994
|
$gam report admin start -3d todrive tdnobrowser
|
|
945
995
|
$gam print devices nopersonaldevices nodeviceusers filter "serial:$JID$JID$JID$JID-" | $gam csv - gam delete device id ~name
|
|
@@ -979,7 +1029,8 @@ jobs:
|
|
|
979
1029
|
else
|
|
980
1030
|
tar_folders="bin/"
|
|
981
1031
|
fi
|
|
982
|
-
|
|
1032
|
+
echo '.git*' > ./excludes.txt
|
|
1033
|
+
tar cJvvf cache.tar.xz --exclude-from=excludes.txt $tar_folders
|
|
983
1034
|
|
|
984
1035
|
merge:
|
|
985
1036
|
if: (github.event_name == 'push' || github.event_name == 'schedule' || github.event_name == 'workflow_dispatch')
|
|
@@ -1029,7 +1080,7 @@ jobs:
|
|
|
1029
1080
|
echo "dateversion=${dateversion}" >> $GITHUB_OUTPUT
|
|
1030
1081
|
|
|
1031
1082
|
- name: Publish draft release
|
|
1032
|
-
uses: softprops/action-gh-release@
|
|
1083
|
+
uses: softprops/action-gh-release@6cbd405e2c4e67a21c47fa9e383d020e4e28b836 # v2.3.3
|
|
1033
1084
|
with:
|
|
1034
1085
|
draft: true
|
|
1035
1086
|
prerelease: false
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gam7
|
|
3
|
-
Version: 7.
|
|
3
|
+
Version: 7.28.4
|
|
4
4
|
Summary: CLI tool to manage Google Workspace
|
|
5
5
|
Project-URL: Homepage, https://github.com/GAM-team/GAM
|
|
6
6
|
Project-URL: Issues, https://github.com/GAM-team/GAM/issues
|
|
@@ -17,7 +17,8 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.11
|
|
18
18
|
Classifier: Programming Language :: Python :: 3.12
|
|
19
19
|
Classifier: Programming Language :: Python :: 3.13
|
|
20
|
-
Requires-Python: >=3.
|
|
20
|
+
Requires-Python: >=3.10
|
|
21
|
+
Requires-Dist: arrow>=1.3.0
|
|
21
22
|
Requires-Dist: chardet>=5.2.0
|
|
22
23
|
Requires-Dist: cryptography>=44.0.2
|
|
23
24
|
Requires-Dist: distro; sys_platform == 'linux'
|
|
@@ -26,11 +27,11 @@ Requires-Dist: google-api-python-client>=2.167.0
|
|
|
26
27
|
Requires-Dist: google-auth-httplib2>=0.2.0
|
|
27
28
|
Requires-Dist: google-auth-oauthlib>=1.2.2
|
|
28
29
|
Requires-Dist: google-auth>=2.39.0
|
|
29
|
-
Requires-Dist: httplib2>=0.
|
|
30
|
+
Requires-Dist: httplib2>=0.31.0
|
|
30
31
|
Requires-Dist: lxml>=5.4.0
|
|
31
32
|
Requires-Dist: passlib>=1.7.4
|
|
32
33
|
Requires-Dist: pathvalidate>=3.2.3
|
|
33
|
-
Requires-Dist:
|
|
34
|
+
Requires-Dist: pysocks>=1.7.1
|
|
34
35
|
Provides-Extra: yubikey
|
|
35
36
|
Requires-Dist: yubikey-manager>=5.6.1; extra == 'yubikey'
|
|
36
37
|
Description-Content-Type: text/markdown
|
|
@@ -55,6 +56,11 @@ this will download GAM, install it and start setup.
|
|
|
55
56
|
|
|
56
57
|
Download the MSI Installer from the [GitHub Releases] page. Install the MSI and you'll be prompted to setup GAM.
|
|
57
58
|
|
|
59
|
+
## Use your own Python
|
|
60
|
+
If you'd prefer to install GAM as a Python package you can install with pip:
|
|
61
|
+
```
|
|
62
|
+
pip install gam7
|
|
63
|
+
```
|
|
58
64
|
# Documentation
|
|
59
65
|
|
|
60
66
|
The GAM documentation is hosted in the [GitHub Wiki]
|
|
@@ -18,6 +18,11 @@ this will download GAM, install it and start setup.
|
|
|
18
18
|
|
|
19
19
|
Download the MSI Installer from the [GitHub Releases] page. Install the MSI and you'll be prompted to setup GAM.
|
|
20
20
|
|
|
21
|
+
## Use your own Python
|
|
22
|
+
If you'd prefer to install GAM as a Python package you can install with pip:
|
|
23
|
+
```
|
|
24
|
+
pip install gam7
|
|
25
|
+
```
|
|
21
26
|
# Documentation
|
|
22
27
|
|
|
23
28
|
The GAM documentation is hosted in the [GitHub Wiki]
|
|
@@ -10,6 +10,7 @@ authors = [
|
|
|
10
10
|
# notice that yubikey-manager remains optional further down since it is less command and adds
|
|
11
11
|
#significant compile dependencies.
|
|
12
12
|
dependencies = [
|
|
13
|
+
"arrow>=1.3.0",
|
|
13
14
|
"chardet>=5.2.0",
|
|
14
15
|
"cryptography>=44.0.2",
|
|
15
16
|
"distro; sys_platform=='linux'",
|
|
@@ -18,15 +19,15 @@ dependencies = [
|
|
|
18
19
|
"google-auth-httplib2>=0.2.0",
|
|
19
20
|
"google-auth-oauthlib>=1.2.2",
|
|
20
21
|
"google-auth>=2.39.0",
|
|
21
|
-
"httplib2>=0.
|
|
22
|
+
"httplib2>=0.31.0",
|
|
22
23
|
"lxml>=5.4.0",
|
|
23
24
|
"passlib>=1.7.4",
|
|
24
25
|
"pathvalidate>=3.2.3",
|
|
25
|
-
"
|
|
26
|
+
"pysocks>=1.7.1",
|
|
26
27
|
]
|
|
27
28
|
description = "CLI tool to manage Google Workspace"
|
|
28
29
|
readme = "README.md"
|
|
29
|
-
requires-python = ">=3.
|
|
30
|
+
requires-python = ">=3.10"
|
|
30
31
|
classifiers = [
|
|
31
32
|
"Programming Language :: Python :: 3",
|
|
32
33
|
"Programming Language :: Python :: 3 :: Only",
|