mirror of
https://github.com/GAM-team/GAM.git
synced 2026-07-04 04:41:35 +00:00
Compare commits
6 Commits
v7.05.12
...
20250325.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0e82964068 | ||
|
|
6394207c2f | ||
|
|
f12b367019 | ||
|
|
9b130ac8bf | ||
|
|
f35bde4f8b | ||
|
|
9ffabc15ff |
@@ -266,6 +266,7 @@ If an item contains spaces, it should be surrounded by ".
|
|||||||
appsheetstandard | appsheetenterprisestandard | 1010380002 | AppSheet Enterprise Standard |
|
appsheetstandard | appsheetenterprisestandard | 1010380002 | AppSheet Enterprise Standard |
|
||||||
appsheetplus | appsheetenterpriseplus | 1010380003 | AppSheet Enterprise Plus |
|
appsheetplus | appsheetenterpriseplus | 1010380003 | AppSheet Enterprise Plus |
|
||||||
assuredcontrols | 1010390001 | Assured Controls |
|
assuredcontrols | 1010390001 | Assured Controls |
|
||||||
|
assuredcontrolsplus | 1010390002 | Assured Controls Plus |
|
||||||
bce | beyondcorp | beyondcorpenterprise | cep | chromeenterprisepremium | 1010400001 | Chrome Enterprise Premium |
|
bce | beyondcorp | beyondcorpenterprise | cep | chromeenterprisepremium | 1010400001 | Chrome Enterprise Premium |
|
||||||
cdm | chrome | googlechromedevicemanagement | Google-Chrome-Device-Management |
|
cdm | chrome | googlechromedevicemanagement | Google-Chrome-Device-Management |
|
||||||
cloudidentity | identity | 1010010001 | Cloud Identity |
|
cloudidentity | identity | 1010010001 | Cloud Identity |
|
||||||
|
|||||||
@@ -1,3 +1,15 @@
|
|||||||
|
7.05.14
|
||||||
|
|
||||||
|
Added the following License SKU:
|
||||||
|
```
|
||||||
|
ProductId SKUId Display Name
|
||||||
|
101039 1010390002 Assured Controls Plus
|
||||||
|
```
|
||||||
|
|
||||||
|
7.05.13
|
||||||
|
|
||||||
|
Updated license product names to match Google.
|
||||||
|
|
||||||
7.05.12
|
7.05.12
|
||||||
|
|
||||||
Fixed bug in `gam update chromepolicy` where `appid` was misinterpreted for `chrome.devices.kiosk` policies
|
Fixed bug in `gam update chromepolicy` where `appid` was misinterpreted for `chrome.devices.kiosk` policies
|
||||||
@@ -6,7 +18,7 @@ and an error was generated.
|
|||||||
ERROR: Chrome Policy Schema: customers/C123abc456/policySchemas/<Field>, Does not exist
|
ERROR: Chrome Policy Schema: customers/C123abc456/policySchemas/<Field>, Does not exist
|
||||||
```
|
```
|
||||||
|
|
||||||
!7.05.11
|
7.05.11
|
||||||
|
|
||||||
Added the following License SKUs:
|
Added the following License SKUs:
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ EOF
|
|||||||
}
|
}
|
||||||
|
|
||||||
target_dir="$HOME/bin"
|
target_dir="$HOME/bin"
|
||||||
target_gam="gam7/gam"
|
target_folder="$target_dir/gam7"
|
||||||
gamarch=$(uname -m)
|
gamarch=$(uname -m)
|
||||||
gamos=$(uname -s)
|
gamos=$(uname -s)
|
||||||
osversion=""
|
osversion=""
|
||||||
@@ -36,7 +36,7 @@ while getopts "hd:a:o:b:lp:u:r:v:s" OPTION
|
|||||||
do
|
do
|
||||||
case $OPTION in
|
case $OPTION in
|
||||||
h) usage; exit;;
|
h) usage; exit;;
|
||||||
d) target_dir="$OPTARG";;
|
d) target_dir="${OPTARG%/}"; target_folder="$target_dir/gam7";;
|
||||||
a) gamarch="$OPTARG";;
|
a) gamarch="$OPTARG";;
|
||||||
o) gamos="$OPTARG";;
|
o) gamos="$OPTARG";;
|
||||||
b) osversion="$OPTARG";;
|
b) osversion="$OPTARG";;
|
||||||
@@ -45,13 +45,11 @@ do
|
|||||||
u) adminuser="$OPTARG";;
|
u) adminuser="$OPTARG";;
|
||||||
r) regularuser="$OPTARG";;
|
r) regularuser="$OPTARG";;
|
||||||
v) gamversion="$OPTARG";;
|
v) gamversion="$OPTARG";;
|
||||||
s) strip_gam="--strip-components 1"; target_gam="gam";;
|
s) strip_gam="--strip-components 1"; target_folder="$target_dir";;
|
||||||
?) usage; exit;;
|
?) usage; exit;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
target_gam="$target_folder/gam"
|
||||||
# remove possible / from end of target_dir
|
|
||||||
target_dir=${target_dir%/}
|
|
||||||
|
|
||||||
update_profile() {
|
update_profile() {
|
||||||
[ "$2" -eq 1 ] || [ -f "$1" ] || return 1
|
[ "$2" -eq 1 ] || [ -f "$1" ] || return 1
|
||||||
@@ -328,9 +326,9 @@ echo_yellow "Downloading ${download_url} to $temp_archive_dir ($check_type)..."
|
|||||||
# Save archive to temp w/o losing our path
|
# Save archive to temp w/o losing our path
|
||||||
(cd "$temp_archive_dir" && curl -O -L -s "${curl_opts[@]}" "$download_url")
|
(cd "$temp_archive_dir" && curl -O -L -s "${curl_opts[@]}" "$download_url")
|
||||||
|
|
||||||
mkdir -p "$target_dir"
|
mkdir -p "$target_folder"
|
||||||
echo_yellow "Deleting contents of $target_dir/gam7/lib"
|
echo_yellow "Deleting contents of $target_folder/lib"
|
||||||
rm -frv "$target_dir/gam7/lib"
|
rm -frv "$target_folder/lib"
|
||||||
|
|
||||||
echo_yellow "Extracting archive to $target_dir"
|
echo_yellow "Extracting archive to $target_dir"
|
||||||
if [[ "$name" =~ tar.xz|tar.gz|tar ]]; then
|
if [[ "$name" =~ tar.xz|tar.gz|tar ]]; then
|
||||||
@@ -351,7 +349,7 @@ fi
|
|||||||
|
|
||||||
# Update profile to add gam command
|
# Update profile to add gam command
|
||||||
if [ "$update_profile" = true ]; then
|
if [ "$update_profile" = true ]; then
|
||||||
alias_line="alias gam=\"${target_dir// /\\ }/$target_gam\""
|
alias_line="alias gam=\"$target_gam\""
|
||||||
if [ "$gamos" == "linux" ]; then
|
if [ "$gamos" == "linux" ]; then
|
||||||
update_profile "$HOME/.bash_aliases" 0 || update_profile "$HOME/.bash_profile" 0 || update_profile "$HOME/.bashrc" 0
|
update_profile "$HOME/.bash_aliases" 0 || update_profile "$HOME/.bash_profile" 0 || update_profile "$HOME/.bashrc" 0
|
||||||
update_profile "$HOME/.zshrc" 0
|
update_profile "$HOME/.zshrc" 0
|
||||||
@@ -365,7 +363,7 @@ fi
|
|||||||
|
|
||||||
if [ "$upgrade_only" = true ]; then
|
if [ "$upgrade_only" = true ]; then
|
||||||
echo_green "Here's information about your GAM upgrade:"
|
echo_green "Here's information about your GAM upgrade:"
|
||||||
"$target_dir/$target_gam" version extended
|
"$target_gam" version extended
|
||||||
rc=$?
|
rc=$?
|
||||||
if (( $rc != 0 )); then
|
if (( $rc != 0 )); then
|
||||||
echo_red "ERROR: Failed running GAM for the first time with return code $rc. Please report this error to GAM mailing list. Exiting."
|
echo_red "ERROR: Failed running GAM for the first time with return code $rc. Please report this error to GAM mailing list. Exiting."
|
||||||
@@ -387,7 +385,7 @@ while true; do
|
|||||||
;;
|
;;
|
||||||
[Nn]*)
|
[Nn]*)
|
||||||
# config_cmd="config no_browser true"
|
# config_cmd="config no_browser true"
|
||||||
touch "$target_dir/gam7/nobrowser.txt" > /dev/null 2>&1
|
touch "$target_folder/nobrowser.txt" > /dev/null 2>&1
|
||||||
break
|
break
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
@@ -405,8 +403,8 @@ while true; do
|
|||||||
if [ "$adminuser" == "" ]; then
|
if [ "$adminuser" == "" ]; then
|
||||||
read -p "Please enter your Google Workspace admin email address: " adminuser
|
read -p "Please enter your Google Workspace admin email address: " adminuser
|
||||||
fi
|
fi
|
||||||
# "$target_dir/$target_gam" $config_cmd create project $adminuser
|
# "$target_gam" $config_cmd create project $adminuser
|
||||||
"$target_dir/$target_gam" create project $adminuser
|
"$target_gam" create project $adminuser
|
||||||
rc=$?
|
rc=$?
|
||||||
if (( $rc == 0 )); then
|
if (( $rc == 0 )); then
|
||||||
echo_green "Project creation complete."
|
echo_green "Project creation complete."
|
||||||
@@ -431,8 +429,8 @@ while $project_created; do
|
|||||||
read -p "Are you ready to authorize GAM to perform Google Workspace management operations as your admin account? (yes or no) " yn
|
read -p "Are you ready to authorize GAM to perform Google Workspace management operations as your admin account? (yes or no) " yn
|
||||||
case $yn in
|
case $yn in
|
||||||
[Yy]*)
|
[Yy]*)
|
||||||
# "$target_dir/$target_gam" $config_cmd oauth create $adminuser
|
# "$target_gam" $config_cmd oauth create $adminuser
|
||||||
"$target_dir/$target_gam" oauth create $adminuser
|
"$target_gam" oauth create $adminuser
|
||||||
rc=$?
|
rc=$?
|
||||||
if (( $rc == 0 )); then
|
if (( $rc == 0 )); then
|
||||||
echo_green "Admin authorization complete."
|
echo_green "Admin authorization complete."
|
||||||
@@ -461,8 +459,8 @@ while $admin_authorized; do
|
|||||||
read -p "Please enter the email address of a regular Google Workspace user: " regularuser
|
read -p "Please enter the email address of a regular Google Workspace user: " regularuser
|
||||||
fi
|
fi
|
||||||
echo_yellow "Great! Checking service account scopes.This will fail the first time. Follow the steps to authorize and retry. It can take a few minutes for scopes to PASS after they've been authorized in the admin console."
|
echo_yellow "Great! Checking service account scopes.This will fail the first time. Follow the steps to authorize and retry. It can take a few minutes for scopes to PASS after they've been authorized in the admin console."
|
||||||
# "$target_dir/$target_gam" $config_cmd user $regularuser check serviceaccount
|
# "$target_gam" $config_cmd user $regularuser check serviceaccount
|
||||||
"$target_dir/$target_gam" user $regularuser check serviceaccount
|
"$target_gam" user $regularuser check serviceaccount
|
||||||
rc=$?
|
rc=$?
|
||||||
if (( $rc == 0 )); then
|
if (( $rc == 0 )); then
|
||||||
echo_green "Service account authorization complete."
|
echo_green "Service account authorization complete."
|
||||||
@@ -483,8 +481,8 @@ while $admin_authorized; do
|
|||||||
done
|
done
|
||||||
|
|
||||||
echo_green "Here's information about your new GAM installation:"
|
echo_green "Here's information about your new GAM installation:"
|
||||||
#"$target_dir/$target_gam" $config_cmd save version extended
|
#"$target_gam" $config_cmd save version extended
|
||||||
"$target_dir/$target_gam" version extended
|
"$target_gam" version extended
|
||||||
rc=$?
|
rc=$?
|
||||||
if (( $rc != 0 )); then
|
if (( $rc != 0 )); then
|
||||||
echo_red "ERROR: Failed running GAM for the first time with $rc. Please report this error to GAM mailing list. Exiting."
|
echo_red "ERROR: Failed running GAM for the first time with $rc. Please report this error to GAM mailing list. Exiting."
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ https://github.com/GAM-team/GAM/wiki
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
__author__ = 'GAM Team <google-apps-manager@googlegroups.com>'
|
__author__ = 'GAM Team <google-apps-manager@googlegroups.com>'
|
||||||
__version__ = '7.05.12'
|
__version__ = '7.05.14'
|
||||||
__license__ = 'Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)'
|
__license__ = 'Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)'
|
||||||
|
|
||||||
#pylint: disable=wrong-import-position
|
#pylint: disable=wrong-import-position
|
||||||
|
|||||||
@@ -108,7 +108,7 @@ class MockHttpClient(atom.http_interface.GenericHttpClient):
|
|||||||
for recording in self.recordings:
|
for recording in self.recordings:
|
||||||
if recording[0].operation == operation and recording[0].url == url:
|
if recording[0].operation == operation and recording[0].url == url:
|
||||||
return recording[1]
|
return recording[1]
|
||||||
raise NoRecordingFound('No recodings found for %s %s' % (
|
raise NoRecordingFound('No recordings found for %s %s' % (
|
||||||
operation, url))
|
operation, url))
|
||||||
else:
|
else:
|
||||||
# There is a real HTTP client, so make the request, and record the
|
# There is a real HTTP client, so make the request, and record the
|
||||||
|
|||||||
@@ -118,7 +118,7 @@ Your workspace is configured to disable service account private key uploads.
|
|||||||
|
|
||||||
Please go to:
|
Please go to:
|
||||||
|
|
||||||
https://github.com/taers232c/GAMADV-XTD3/wiki/Authorization#authorize-service-account-key-uploads
|
https://github.com/GAM-team/GAM/wiki/Authorization#authorize-service-account-key-uploads
|
||||||
|
|
||||||
Follow the steps to allow a service account private key upload for the project ({0}) just created.
|
Follow the steps to allow a service account private key upload for the project ({0}) just created.
|
||||||
Once those steps are completed, you can continue with your project authentication.
|
Once those steps are completed, you can continue with your project authentication.
|
||||||
@@ -322,7 +322,7 @@ INVALID_NUMBER_OF_CHAT_SPACE_MEMBERS = '{0} type {1} number of members, {2}, mus
|
|||||||
INVALID_ORGUNIT = 'Invalid Organizational Unit'
|
INVALID_ORGUNIT = 'Invalid Organizational Unit'
|
||||||
INVALID_PATH = 'Invalid Path'
|
INVALID_PATH = 'Invalid Path'
|
||||||
INVALID_PERMISSION_ATTRIBUTE_TYPE = 'permission attribute {0} not allowed with type {1}'
|
INVALID_PERMISSION_ATTRIBUTE_TYPE = 'permission attribute {0} not allowed with type {1}'
|
||||||
INVALID_REGION = 'See: https://github.com/taers232c/GAMADV-XTD3/wiki/Context-Aware-Access-Levels#caa-region-codes'
|
INVALID_REGION = 'See: https://github.com/GAM-team/GAM/wiki/Context-Aware-Access-Levels#caa-region-codes'
|
||||||
INVALID_QUERY = 'Invalid Query'
|
INVALID_QUERY = 'Invalid Query'
|
||||||
INVALID_RE = 'Invalid RE'
|
INVALID_RE = 'Invalid RE'
|
||||||
INVALID_REQUEST = 'Invalid Request'
|
INVALID_REQUEST = 'Invalid Request'
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
# Products/SKUs
|
# Products/SKUs
|
||||||
_PRODUCTS = {
|
_PRODUCTS = {
|
||||||
'101001': 'Cloud Identity Free',
|
'101001': 'Cloud Identity',
|
||||||
'101005': 'Cloud Identity Premium',
|
'101005': 'Cloud Identity Premium',
|
||||||
'101031': 'Google Workspace for Education',
|
'101031': 'Google Workspace for Education',
|
||||||
'101033': 'Google Voice',
|
'101033': 'Google Voice',
|
||||||
@@ -87,6 +87,8 @@ _SKUS = {
|
|||||||
'product': '101038', 'aliases': ['appsheetplus', 'appsheetenterpriseplus'], 'displayName': 'AppSheet Enterprise Plus'},
|
'product': '101038', 'aliases': ['appsheetplus', 'appsheetenterpriseplus'], 'displayName': 'AppSheet Enterprise Plus'},
|
||||||
'1010390001': {
|
'1010390001': {
|
||||||
'product': '101039', 'aliases': ['assuredcontrols'], 'displayName': 'Assured Controls'},
|
'product': '101039', 'aliases': ['assuredcontrols'], 'displayName': 'Assured Controls'},
|
||||||
|
'1010390002': {
|
||||||
|
'product': '101039', 'aliases': ['assuredcontrolsplus'], 'displayName': 'Assured Controls Plus'},
|
||||||
'1010400001': {
|
'1010400001': {
|
||||||
'product': '101040', 'aliases': ['beyondcorp', 'beyondcorpenterprise', 'bce', 'cep', 'chromeenterprisepremium'], 'displayName': 'Chrome Enterprise Premium'},
|
'product': '101040', 'aliases': ['beyondcorp', 'beyondcorpenterprise', 'bce', 'cep', 'chromeenterprisepremium'], 'displayName': 'Chrome Enterprise Premium'},
|
||||||
'1010430001': {
|
'1010430001': {
|
||||||
@@ -127,7 +129,7 @@ _SKUS = {
|
|||||||
'product': 'Google-Apps', 'aliases': ['gau', 'gsb', 'unlimited', 'gsuitebusiness'], 'displayName': 'G Suite Business'},
|
'product': 'Google-Apps', 'aliases': ['gau', 'gsb', 'unlimited', 'gsuitebusiness'], 'displayName': 'G Suite Business'},
|
||||||
'1010020020': {
|
'1010020020': {
|
||||||
'product': 'Google-Apps', 'aliases': ['gae', 'gse', 'enterprise', 'gsuiteenterprise',
|
'product': 'Google-Apps', 'aliases': ['gae', 'gse', 'enterprise', 'gsuiteenterprise',
|
||||||
'wsentplus', 'workspaceenterpriseplus'], 'displayName': 'Google Workspace Enterprise Plus'},
|
'wsentplus', 'workspaceenterpriseplus'], 'displayName': 'Google Workspace Enterprise Plus (formerly G Suite Enterprise)'},
|
||||||
'1010020025': {
|
'1010020025': {
|
||||||
'product': 'Google-Apps', 'aliases': ['wsbizplus', 'workspacebusinessplus'], 'displayName': 'Google Workspace Business Plus'},
|
'product': 'Google-Apps', 'aliases': ['wsbizplus', 'workspacebusinessplus'], 'displayName': 'Google Workspace Business Plus'},
|
||||||
'1010020026': {
|
'1010020026': {
|
||||||
@@ -159,11 +161,11 @@ _SKUS = {
|
|||||||
'1010060001': {
|
'1010060001': {
|
||||||
'product': '101006', 'aliases': ['gsuiteessentials', 'essentials',
|
'product': '101006', 'aliases': ['gsuiteessentials', 'essentials',
|
||||||
'd4e', 'driveenterprise', 'drive4enterprise',
|
'd4e', 'driveenterprise', 'drive4enterprise',
|
||||||
'wsess', 'workspaceesentials'], 'displayName': 'Google Workspace Essentials'},
|
'wsess', 'workspaceesentials'], 'displayName': 'Google Workspace Essentials (formerly G Suite Essentials)'},
|
||||||
'1010060003': {
|
'1010060003': {
|
||||||
'product': 'Google-Apps', 'aliases': ['wsentess', 'workspaceenterpriseessentials'], 'displayName': 'Google Workspace Enterprise Essentials'},
|
'product': 'Google-Apps', 'aliases': ['wsentess', 'workspaceenterpriseessentials'], 'displayName': 'Google Workspace Enterprise Essentials'},
|
||||||
'1010060005': {
|
'1010060005': {
|
||||||
'product': 'Google-Apps', 'aliases': ['wsessplus', 'workspaceessentialsplus'], 'displayName': 'Google Workspace Essentials Plus'},
|
'product': 'Google-Apps', 'aliases': ['wsessplus', 'workspaceessentialsplus'], 'displayName': 'Google Workspace Enterprise Essentials Plus'},
|
||||||
'Google-Drive-storage-20GB': {
|
'Google-Drive-storage-20GB': {
|
||||||
'product': 'Google-Drive-storage', 'aliases': ['drive20gb', '20gb', 'googledrivestorage20gb'], 'displayName': 'Google Drive Storage 20GB'},
|
'product': 'Google-Drive-storage', 'aliases': ['drive20gb', '20gb', 'googledrivestorage20gb'], 'displayName': 'Google Drive Storage 20GB'},
|
||||||
'Google-Drive-storage-50GB': {
|
'Google-Drive-storage-50GB': {
|
||||||
|
|||||||
@@ -1,23 +0,0 @@
|
|||||||
accesscontextmanager.googleapis.com
|
|
||||||
admin.googleapis.com
|
|
||||||
alertcenter.googleapis.com
|
|
||||||
calendar-json.googleapis.com
|
|
||||||
chat.googleapis.com
|
|
||||||
chromemanagement.googleapis.com
|
|
||||||
chromepolicy.googleapis.com
|
|
||||||
classroom.googleapis.com
|
|
||||||
cloudidentity.googleapis.com
|
|
||||||
cloudresourcemanager.googleapis.com
|
|
||||||
contacts.googleapis.com
|
|
||||||
drive.googleapis.com
|
|
||||||
driveactivity.googleapis.com
|
|
||||||
iap.googleapis.com
|
|
||||||
gmail.googleapis.com
|
|
||||||
groupssettings.googleapis.com
|
|
||||||
iam.googleapis.com
|
|
||||||
licensing.googleapis.com
|
|
||||||
reseller.googleapis.com
|
|
||||||
sheets.googleapis.com
|
|
||||||
siteverification.googleapis.com
|
|
||||||
storage-api.googleapis.com
|
|
||||||
vault.googleapis.com
|
|
||||||
Reference in New Issue
Block a user