add script to download k8s tooling with back-off mechanism

make fetch timeout configurable

add CNG image building pipeline
This commit is contained in:
Dmitry Makovey 2021-12-21 10:57:00 -07:00
parent d137b4ba28
commit 0493539020
2 changed files with 50 additions and 0 deletions

18
.gitlab/ci/cng-images.yml Normal file
View file

@ -0,0 +1,18 @@
# Used by GitLab: https://gitlab.com/gitlab-org/gitlab/blob/master/.gitlab-ci.yml
.gitlab-cng-matrix:
# image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.7.patched-golang-1.14-git-2.31-lfs-2.9-chrome-89-node-14.15-yarn-1.22-postgresql-11-graphicsmagick-1.3.36
variables:
LFS: '2.9'
CHROME: '89'
NODE: '14.15'
YARN: '1.22'
GRAPHICSMAGICK: '1.3.36'
POSTGRESQL: '11'
RUBY: '2.7.patched'
GIT: '2.31'
GOLANG: '1.14'
gitlab-cng push:
extends:
- .gitlab-cng-matrix
- .build_and_deploy_custom

View file

@ -0,0 +1,32 @@
#!/bin/bash
export KUBECTL_VERSION=${KUBECTL_VERSION:-"v1.19.7"}
export HELM_VERSION=${HELM_VERSION:-"3.3.1"}
export FETCH_TIMEOUT=${FETCH_TIMEOUT:-"5m"}
_fetch_helm(){
curl -Ls https://get.helm.sh/helm-v${HELM_VERSION}-linux-amd64.tar.gz | tar zxf - \
&& chmod +x linux-amd64/helm \
&& mv linux-amd64/helm /usr/local/bin/ \
&& rm -rf linux-amd64/
}
fetch_helm(){
until _fetch_helm ; do sleep 30; done
}
export -f fetch_helm _fetch_helm
timeout ${FETCH_TIMEOUT} bash -xc fetch_helm
_fetch_kubectl(){
curl -LsO https://storage.googleapis.com/kubernetes-release/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl \
&& chmod +x kubectl \
&& mv kubectl /usr/local/bin/kubectl
}
fetch_kubectl(){
until _fetch_kubectl ; do sleep 30 ; done
}
export -f fetch_kubectl _fetch_kubectl
timeout ${FETCH_TIMEOUT} bash -xc fetch_kubectl