about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools/admin/google-cloud-sdk/update.sh
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/tools/admin/google-cloud-sdk/update.sh')
-rwxr-xr-xnixpkgs/pkgs/tools/admin/google-cloud-sdk/update.sh15
1 files changed, 9 insertions, 6 deletions
diff --git a/nixpkgs/pkgs/tools/admin/google-cloud-sdk/update.sh b/nixpkgs/pkgs/tools/admin/google-cloud-sdk/update.sh
index d58220dc10c0..5b400dba3348 100755
--- a/nixpkgs/pkgs/tools/admin/google-cloud-sdk/update.sh
+++ b/nixpkgs/pkgs/tools/admin/google-cloud-sdk/update.sh
@@ -1,11 +1,12 @@
 #!/usr/bin/env nix-shell
-#! nix-shell -i bash -p nix
+#! nix-shell -i bash -p nix jq curl
 
-BASE_URL="https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk"
+CHANNEL_URL="https://dl.google.com/dl/cloudsdk/channels/rapid"
+BASE_URL="$CHANNEL_URL/downloads/google-cloud-sdk"
 
-# Version of Google Cloud SDK from
-# https://cloud.google.com/sdk/docs/release-notes
-VERSION="397.0.0"
+PACKAGE_DIR=$(dirname -- "$0")
+
+VERSION=$(curl "https://storage.googleapis.com/storage/v1/b/cloud-sdk-release/o?delimiter=/&startOffset=google-cloud-sdk-${UPDATE_NIX_OLD_VERSION}&endOffset=google-cloud-sdk-9" | jq --raw-output '.items[-1].name | scan("\\d+\\.\\d+\\.\\d+")')
 
 function genMainSrc() {
     local url="${BASE_URL}-${VERSION}-${1}-${2}.tar.gz"
@@ -44,4 +45,6 @@ EOF
     echo "  };"
     echo "}"
 
-} >data.nix
+} > "${PACKAGE_DIR}/data.nix"
+
+curl "${CHANNEL_URL}/components-v${VERSION}.json" -w "\n" > "${PACKAGE_DIR}/components.json"