1#!/usr/bin/env nix-shell
2#!nix-shell -i bash -p curl jq
3#shellcheck shell=bash
4
5set -eu -o pipefail
6
7version=$(curl -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \
8 https://api.github.com/repos/platformsh/cli/releases/latest | jq -e -r ".tag_name")
9
10linux_arm64_url=https://github.com/platformsh/cli/releases/download/$version/platform_${version}_linux_arm64.tar.gz
11linux_amd64_url=https://github.com/platformsh/cli/releases/download/$version/platform_${version}_linux_amd64.tar.gz
12darwin_all_url=https://github.com/platformsh/cli/releases/download/$version/platform_${version}_darwin_all.tar.gz
13linux_arm64_hash=$(nix --extra-experimental-features nix-command hash to-sri --type sha256 $(nix-prefetch-url --type sha256 "$linux_arm64_url"))
14linux_amd64_hash=$(nix --extra-experimental-features nix-command hash to-sri --type sha256 $(nix-prefetch-url --type sha256 "$linux_amd64_url"))
15darwin_all_hash=$(nix --extra-experimental-features nix-command hash to-sri --type sha256 $(nix-prefetch-url --type sha256 "$darwin_all_url"))
16jq -n \
17 --arg version "$version" \
18 --arg darwin_all_hash "$darwin_all_hash" \
19 --arg darwin_all_url "$darwin_all_url" \
20 --arg linux_amd64_hash "$linux_amd64_hash" \
21 --arg linux_amd64_url "$linux_amd64_url" \
22 --arg linux_arm64_hash "$linux_arm64_hash" \
23 --arg linux_arm64_url "$linux_arm64_url" \
24 '{ "version": $version,
25 "darwin-amd64": { "hash": $darwin_all_hash, "url": $darwin_all_url },
26 "darwin-arm64": { "hash": $darwin_all_hash, "url": $darwin_all_url },
27 "linux-amd64": { "hash": $linux_amd64_hash, "url": $linux_amd64_url },
28 "linux-arm64": { "hash": $linux_arm64_hash, "url": $linux_arm64_url }
29}' > pkgs/by-name/pl/platformsh/versions.json