Add helm install script
parent
465f393a32
commit
ff0a131e55
@ -0,0 +1,37 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# shellcheck disable=SC1090
|
||||||
|
source "${XDG_DATA_HOME}/buddy-up/includes/utils.sh"
|
||||||
|
|
||||||
|
APP=helm
|
||||||
|
VERSION=${VERSION:-3.6.0}
|
||||||
|
DEST="${XDG_DATA_HOME}/apps/releases/${APP}"
|
||||||
|
|
||||||
|
if [[ ! -d "${DEST}/${VERSION}" ]]; then
|
||||||
|
URL_TAR=https://get.helm.sh/helm-v${VERSION}-$(get_os)-$(get_arch).tar.gz
|
||||||
|
URL_SHA=https://get.helm.sh/helm-v${VERSION}-$(get_os)-$(get_arch).tar.gz.sha256
|
||||||
|
|
||||||
|
DL_DIR="$(mktemp -d)"
|
||||||
|
SHA_PATH=${DL_DIR}/helm.tar.gz.sha256
|
||||||
|
TAR_PATH=${DL_DIR}/helm.tar.gz
|
||||||
|
|
||||||
|
curl --silent --location --output "${SHA_PATH}" "${URL_SHA}"
|
||||||
|
curl --silent --location --output "${TAR_PATH}" "${URL_TAR}"
|
||||||
|
|
||||||
|
if [[ $(cat "${SHA_PATH}") != $(openssl dgst -sha256 "${TAR_PATH}" | sed -e 's/^.* //') ]]; then
|
||||||
|
echo 'checksum does not match'
|
||||||
|
rm -rf "${DL_DIR}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir_if_missing "${DEST}/${VERSION}"
|
||||||
|
tar xzf "${TAR_PATH}" --directory "${DEST}/${VERSION}" --strip-component 1
|
||||||
|
rm -rf "${DL_DIR}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
set_current_link "${DEST}" "${VERSION}"
|
||||||
|
unlink_if_set "$XDG_BIN_HOME/${APP}"
|
||||||
|
|
||||||
|
cd "$XDG_BIN_HOME" || exit 1
|
||||||
|
ln -s "$(relative_path "${XDG_BIN_HOME}" "${DEST}/current/${APP}")" ${APP}
|
||||||
|
cd - >/dev/null || exit 1
|
Loading…
Reference in New Issue