diff options
Diffstat (limited to 'pkgs/tools/admin/pulumi/update.sh')
-rw-r--r-- | pkgs/tools/admin/pulumi/update.sh | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/pkgs/tools/admin/pulumi/update.sh b/pkgs/tools/admin/pulumi/update.sh new file mode 100644 index 00000000000..7cb500ee9d3 --- /dev/null +++ b/pkgs/tools/admin/pulumi/update.sh @@ -0,0 +1,55 @@ +#!/usr/bin/env bash + +VERSION="1.4.0" + +declare -A plugins +plugins=( + ["aws"]="1.7.0" + ["gcp"]="1.4.1" + ["kubernetes"]="1.2.3" + ["random"]="0.2.0" +) + +function genMainSrc() { + local url="https://get.pulumi.com/releases/sdk/pulumi-v${VERSION}-$1-x64.tar.gz" + local sha256 + sha256=$(nix-prefetch-url "$url") + echo " {" + echo " url = \"${url}\";" + echo " sha256 = \"$sha256\";" + echo " }" +} + +function genSrcs() { + for plug in "${!plugins[@]}"; do + local version=${plugins[$plug]} + # url as defined here + # https://github.com/pulumi/pulumi/blob/06d4dde8898b2a0de2c3c7ff8e45f97495b89d82/pkg/workspace/plugins.go#L197 + local url="https://api.pulumi.com/releases/plugins/pulumi-resource-${plug}-v${version}-$1-amd64.tar.gz" + local sha256 + sha256=$(nix-prefetch-url "$url") + echo " {" + echo " url = \"${url}\";" + echo " sha256 = \"$sha256\";" + echo " }" + done +} + +cat <<EOF +# DO NOT EDIT! This file is generated automatically by update.sh +{ }: +{ + version = "${VERSION}"; + pulumiPkgs = { + x86_64-linux = [ +EOF +genMainSrc "linux" +genSrcs "linux" +echo " ];" + +echo " x86_64-darwin = [" +genMainSrc "darwin" +genSrcs "darwin" +echo " ];" +echo " };" +echo "}" |