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