Skip to content

Commit 97b97e7

Browse files
author
Sunil Thaha
committed
chore(tools): install helm
Signed-off-by: Sunil Thaha <[email protected]>
1 parent 4f52a99 commit 97b97e7

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,7 @@ CRDOC ?= $(LOCALBIN)/crdoc
309309
TOOLS = controller-gen \
310310
crdoc \
311311
govulncheck \
312+
helm \
312313
jq \
313314
kubectl \
314315
kustomize \

hack/tools.sh

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,15 @@ declare -r OC_VERSION=${OC_VERSION:-4.18.1}
2020
declare -r KUBECTL_VERSION=${KUBECTL_VERSION:-v1.28.4}
2121
declare -r SHFMT_VERSION=${SHFMT_VERSION:-v3.7.0}
2222
declare -r JQ_VERSION=${JQ_VERSION:-1.7}
23+
declare -r HELM_VERSION=${HELM_VERSION:-v3.18.1}
2324

2425
# install
2526
declare -r KUSTOMIZE_INSTALL_SCRIPT="https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh"
2627
declare -r OPERATOR_SDK_INSTALL="https://github.com/operator-framework/operator-sdk/releases/download/$OPERATOR_SDK_VERSION/operator-sdk_${GOOS}_${GOARCH}"
2728
declare -r YQ_INSTALL="https://github.com/mikefarah/yq/releases/download/$YQ_VERSION/yq_${GOOS}_${GOARCH}"
2829
declare -r OC_URL="https://mirror.openshift.com/pub/openshift-v4/clients/ocp/$OC_VERSION"
2930
declare -r JQ_INSTALL_URL="https://github.com/jqlang/jq/releases/download/jq-$JQ_VERSION"
31+
declare -r HELM_INSTALL_URL="https://get.helm.sh"
3032

3133
source "$PROJECT_ROOT/hack/utils.bash"
3234

@@ -225,6 +227,33 @@ install_jq() {
225227
ok "jq was installed successfully"
226228
}
227229

230+
version_helm() {
231+
helm version
232+
}
233+
234+
install_helm() {
235+
local version_regex="Version:\"$HELM_VERSION\""
236+
validate_version helm version "$version_regex" && return 0
237+
238+
info "installing helm version: $HELM_VERSION"
239+
local helm_tar="helm-${HELM_VERSION}-${GOOS}-${GOARCH}.tar.gz"
240+
local install_url="$HELM_INSTALL_URL/$helm_tar"
241+
242+
local helm_tmp="$LOCAL_BIN/tmp-helm"
243+
mkdir -p "$helm_tmp"
244+
245+
curl -sSL "$install_url" | tar -xzf - -C "$helm_tmp" || {
246+
fail "failed to install helm"
247+
return 1
248+
}
249+
250+
mv "$helm_tmp/$GOOS-$GOARCH/helm" "$LOCAL_BIN/"
251+
chmod +x "$LOCAL_BIN/helm"
252+
rm -rf "$helm_tmp"
253+
254+
ok "helm was installed successfully"
255+
}
256+
228257
install_all() {
229258
info "installing all tools ..."
230259
local ret=0

0 commit comments

Comments
 (0)