From bb00114053354efcaac05997c798422d5eaac4b2 Mon Sep 17 00:00:00 2001 From: yy Date: Thu, 17 Oct 2024 14:32:58 +0800 Subject: [PATCH] add devbox offline install scripts --- deploy/devbox/Kubefile | 11 ++++++++ deploy/devbox/init.sh | 51 +++++++++++++++++++++++++++++++++++ deploy/devbox/scripts/init.sh | 3 +++ deploy/objectstorage/init.sh | 2 +- 4 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 deploy/devbox/Kubefile create mode 100644 deploy/devbox/init.sh create mode 100644 deploy/devbox/scripts/init.sh diff --git a/deploy/devbox/Kubefile b/deploy/devbox/Kubefile new file mode 100644 index 00000000000..cca1b0f4c0a --- /dev/null +++ b/deploy/devbox/Kubefile @@ -0,0 +1,11 @@ +FROM scratch +COPY tars tars +COPY etc etc +COPY scripts scripts +COPY manifests manifests +COPY registry registry + +ENV cloudDomain=${cloudDomain:-"127.0.0.1.nip.io"} +ENV cloudPort="" + +CMD ["bash scripts/init.sh"] diff --git a/deploy/devbox/init.sh b/deploy/devbox/init.sh new file mode 100644 index 00000000000..c9b84a1d3dc --- /dev/null +++ b/deploy/devbox/init.sh @@ -0,0 +1,51 @@ +#!/bin/bash +readonly ARCH=${1:-amd64} +set -e + +mkdir -p tars + +RetryPullImageInterval=3 +RetryPullFileInterval=3 +RetrySleepSeconds=3 + +retryPullFile() { + local file=$1 + local retry=0 + local retryMax=3 + set +e + while [ $retry -lt $RetryPullFileInterval ]; do + curl $file --create-dirs -o ./etc/minio-binaries/mc >/dev/null && break + retry=$(($retry + 1)) + echo "retry pull file $file, retry times: $retry" + sleep $RetrySleepSeconds + done + set -e + if [ $retry -eq $retryMax ]; then + echo "pull file $file failed" + exit 1 + fi +} + +retryPullImage() { + local image=$1 + local retry=0 + local retryMax=3 + set +e + while [ $retry -lt $RetryPullImageInterval ]; do + sealos pull --policy=always --platform=linux/"${ARCH}" $image >/dev/null && break + retry=$(($retry + 1)) + echo "retry pull image $image, retry times: $retry" + sleep $RetrySleepSeconds + done + set -e + if [ $retry -eq $retryMax ]; then + echo "pull image $image failed" + exit 1 + fi +} + +retryPullImage ghcr.io/labring/sealos-cloud-devbox-controller:latest +retryPullImage ghcr.io/labring/sealos-cloud-devbox-frontend:latest + +sealos save -o tars/devbox-controller.tar ghcr.io/labring/sealos-cloud-devbox-controller:latest +sealos save -o tars/devbox-frontend.tar ghcr.io/labring/sealos-cloud-devbox-frontend:latest diff --git a/deploy/devbox/scripts/init.sh b/deploy/devbox/scripts/init.sh new file mode 100644 index 00000000000..d9628ae71d6 --- /dev/null +++ b/deploy/devbox/scripts/init.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +set -e diff --git a/deploy/objectstorage/init.sh b/deploy/objectstorage/init.sh index 5fbe719077d..9e1b22eba1c 100644 --- a/deploy/objectstorage/init.sh +++ b/deploy/objectstorage/init.sh @@ -1,6 +1,6 @@ #!/bin/bash set -e -export readonly ARCH=${1:-amd64} +readonly ARCH=${1:-amd64} mkdir -p tars RetryPullImageInterval=3