chore: Integrate kustomize installation in localized toolchain (#9027)

* chore: fix kustomize installation in MacOS

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* Install Kustomize in dist folder

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* Create $BIN folder if does not exist

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* Change dist just for kustomize

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* display kustomize binary used

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* Fix kustomize used for manifest generation

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* Fix kustomize installation in docker

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

Co-authored-by: Michael Crenshaw <michael@crenshaw.dev>
This commit is contained in:
Leonardo Luz Almeida 2022-04-08 15:42:21 -04:00 committed by GitHub
parent 2cdfafee4b
commit 7fe25c3d3a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 36 additions and 21 deletions

View file

@ -30,7 +30,7 @@ ADD hack/tool-versions.sh .
RUN ./install.sh helm2-linux
RUN ./install.sh helm-linux
RUN ./install.sh kustomize-linux
RUN INSTALL_PATH=/usr/local/bin ./install.sh kustomize
RUN ./install.sh awscli-linux
####################################################################################################

View file

@ -531,7 +531,7 @@ install-tools-local: install-test-tools-local install-codegen-tools-local instal
# Installs all tools required for running unit & end-to-end tests (Linux packages)
.PHONY: install-test-tools-local
install-test-tools-local:
./hack/install.sh kustomize-linux
./hack/install.sh kustomize
./hack/install.sh helm2-linux
./hack/install.sh helm-linux

View file

@ -13,11 +13,13 @@ case $(uname -m) in
arm|armv7l|armv8l|aarch64) dpkg --print-architecture | grep -q "arm64" && ARCHITECTURE="arm64" || ARCHITECTURE="arm" ;;
esac
if [ -z "$ARCHITECTURE" ]; then
echo "Could not detect the architecture of the system"
exit 1
fi
INSTALL_OS=""
unameOut="$(uname -s)"
case "${unameOut}" in
Linux*) INSTALL_OS=linux;;
Darwin*) INSTALL_OS=darwin;;
esac
for product in $*; do
ARCHITECTURE=$ARCHITECTURE "$(dirname $0)/installers/install-${product}.sh"
ARCHITECTURE=$ARCHITECTURE INSTALL_OS=$INSTALL_OS "$(dirname $0)/installers/install-${product}.sh"
done

View file

@ -0,0 +1 @@
1b0eba143cd684f98341d58100c17a2dfb9658375302fe38d725752ea92012ac kustomize_4.4.1_darwin_amd64.tar.gz

View file

@ -23,4 +23,4 @@ if ! grep -q "${TARGET_FILE}" ${CHKSUM_FILE}; then
exit 1
fi
shasum -a 256 -c ${CHKSUM_FILE}
shasum -a 256 -c ${CHKSUM_FILE}

View file

@ -1,4 +1,4 @@
#!/bin/bash
set -eux -o pipefail
KUSTOMIZE_VERSION=4.2.0 "$(dirname $0)/../install.sh" helm2-linux kustomize-linux protoc
KUSTOMIZE_VERSION=4.2.0 "$(dirname $0)/../install.sh" helm2-linux kustomize protoc

View file

@ -3,8 +3,18 @@ set -eux -o pipefail
. $(dirname $0)/../tool-versions.sh
PROJECT_ROOT=$(cd $(dirname ${BASH_SOURCE})/../..; pwd)
INSTALL_PATH="${INSTALL_PATH:-$PROJECT_ROOT/dist}"
PATH="${INSTALL_PATH}:${PATH}"
[ -d $INSTALL_PATH ] || mkdir -p $INSTALL_PATH
KUSTOMIZE_VERSION=${KUSTOMIZE_VERSION:-$kustomize4_version}
if [ -z $INSTALL_OS ]; then
echo "install kustomize error: unsupported operating system"
exit 1
fi
# Note that kustomize release URIs have changed for v3.2.1. Then again for
# v3.3.0. When upgrading to versions >= v3.3.0 please change the URI format. And
# also note that as of version v3.3.0, assets are in .tar.gz form.
@ -13,32 +23,32 @@ KUSTOMIZE_VERSION=${KUSTOMIZE_VERSION:-$kustomize4_version}
# v3.3.0 = https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v3.3.0/kustomize_v3.3.0_linux_amd64.tar.gz
case $ARCHITECTURE in
arm|arm64)
export TARGET_FILE=kustomize_${KUSTOMIZE_VERSION}_linux_${ARCHITECTURE}.tar.gz
URL=https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v${KUSTOMIZE_VERSION}/kustomize_v${KUSTOMIZE_VERSION}_linux_$ARCHITECTURE.tar.gz
export TARGET_FILE=kustomize_${KUSTOMIZE_VERSION}_${INSTALL_OS}_${ARCHITECTURE}.tar.gz
URL=https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v${KUSTOMIZE_VERSION}/kustomize_v${KUSTOMIZE_VERSION}_${INSTALL_OS}_$ARCHITECTURE.tar.gz
BINNAME=kustomize
[ -e ${DOWNLOADS}/${TARGET_FILE} ] || curl -sLf --retry 3 -o ${DOWNLOADS}/${TARGET_FILE} "$URL"
$(dirname $0)/compare-chksum.sh
tar -C /tmp -xf ${DOWNLOADS}/${TARGET_FILE}
sudo install -m 0755 /tmp/kustomize $BIN/$BINNAME
sudo install -m 0755 /tmp/kustomize $INSTALL_PATH/$BINNAME
;;
*)
case $KUSTOMIZE_VERSION in
2.*)
export TARGET_FILE=kustomize_${KUSTOMIZE_VERSION}_linux_${ARCHITECTURE}
URL=https://github.com/kubernetes-sigs/kustomize/releases/download/v${KUSTOMIZE_VERSION}/kustomize_${KUSTOMIZE_VERSION}_linux_$ARCHITECTURE
export TARGET_FILE=kustomize_${KUSTOMIZE_VERSION}_${INSTALL_OS}_${ARCHITECTURE}
URL=https://github.com/kubernetes-sigs/kustomize/releases/download/v${KUSTOMIZE_VERSION}/kustomize_${KUSTOMIZE_VERSION}_${INSTALL_OS}_$ARCHITECTURE
BINNAME=kustomize2
[ -e ${DOWNLOADS}/${TARGET_FILE} ] || curl -sLf --retry 3 -o ${DOWNLOADS}/${TARGET_FILE} "$URL"
$(dirname $0)/compare-chksum.sh
sudo install -m 0755 ${DOWNLOADS}/${TARGET_FILE} $BIN/$BINNAME
sudo install -m 0755 ${DOWNLOADS}/${TARGET_FILE} $INSTALL_PATH/$BINNAME
;;
*)
export TARGET_FILE=kustomize_${KUSTOMIZE_VERSION}_linux_${ARCHITECTURE}.tar.gz
URL=https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v${KUSTOMIZE_VERSION}/kustomize_v${KUSTOMIZE_VERSION}_linux_$ARCHITECTURE.tar.gz
export TARGET_FILE=kustomize_${KUSTOMIZE_VERSION}_${INSTALL_OS}_${ARCHITECTURE}.tar.gz
URL=https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v${KUSTOMIZE_VERSION}/kustomize_v${KUSTOMIZE_VERSION}_${INSTALL_OS}_$ARCHITECTURE.tar.gz
BINNAME=kustomize
[ -e ${DOWNLOADS}/${TARGET_FILE} ] || curl -sLf --retry 3 -o ${DOWNLOADS}/${TARGET_FILE} "$URL"
$(dirname $0)/compare-chksum.sh
tar -C /tmp -xf ${DOWNLOADS}/${TARGET_FILE}
sudo install -m 0755 /tmp/kustomize $BIN/$BINNAME
sudo install -m 0755 /tmp/kustomize $INSTALL_PATH/$BINNAME
;;
esac
;;

View file

@ -4,11 +4,12 @@ set -o errexit
set -o nounset
set -o pipefail
KUSTOMIZE=kustomize
SRCROOT="$( CDPATH='' cd -- "$(dirname "$0")/.." && pwd -P )"
AUTOGENMSG="# This is an auto-generated file. DO NOT EDIT"
KUSTOMIZE=kustomize
[ -f "$SRCROOT/dist/kustomize" ] && KUSTOMIZE="$SRCROOT/dist/kustomize"
cd ${SRCROOT}/manifests/ha/base/redis-ha && ./generate.sh
IMAGE_NAMESPACE="${IMAGE_NAMESPACE:-quay.io/argoproj}"
@ -28,6 +29,7 @@ if [ "$IMAGE_TAG" = "" ]; then
fi
$KUSTOMIZE version
which $KUSTOMIZE
cd ${SRCROOT}/manifests/base && $KUSTOMIZE edit set image quay.io/argoproj/argocd=${IMAGE_NAMESPACE}/argocd:${IMAGE_TAG}
cd ${SRCROOT}/manifests/ha/base && $KUSTOMIZE edit set image quay.io/argoproj/argocd=${IMAGE_NAMESPACE}/argocd:${IMAGE_TAG}

View file

@ -44,7 +44,7 @@ ADD go.sum go.sum
RUN ./install.sh helm2-linux && \
./install.sh helm-linux && \
./install.sh kubectl-linux && \
./install.sh kustomize-linux && \
./install.sh kustomize && \
./install.sh codegen-tools && \
./install.sh codegen-go-tools && \
./install.sh lint-tools && \