diff --git a/scripts/cluster/bootstrap-platform.sh b/scripts/cluster/bootstrap-platform.sh index 74542b5..4e8d65f 100755 --- a/scripts/cluster/bootstrap-platform.sh +++ b/scripts/cluster/bootstrap-platform.sh @@ -57,15 +57,17 @@ operator_checksums=( e0c5ff41bf5b01c0775bf225929b8423d543cd23e9742e4274fe7de8499cf93a d2e71e7b06822448f1a421f05781846cfdb9cc621e7ef32eef5e20c5133213b0 ) -for index in 0 1 2; do - operator=${operators[$index]} - curl -fsSL "${operator_urls[$index]}" -o "$working_directory/$operator" - actual_checksum=$(shasum -a 256 "$working_directory/$operator" | awk '{print $1}') - [[ $actual_checksum == "${operator_checksums[$index]}" ]] || { - echo "operator manifest checksum mismatch: $operator" >&2 - exit 1 - } -done +if [[ $mode == prepare ]]; then + for index in 0 1 2; do + operator=${operators[$index]} + curl -fsSL "${operator_urls[$index]}" -o "$working_directory/$operator" + actual_checksum=$(shasum -a 256 "$working_directory/$operator" | awk '{print $1}') + [[ $actual_checksum == "${operator_checksums[$index]}" ]] || { + echo "operator manifest checksum mismatch: $operator" >&2 + exit 1 + } + done +fi cp -R "$cluster_root/deploy/kubernetes/production" "$working_directory/production" api_digest=${api_image##*@} @@ -126,7 +128,11 @@ stringData: EOF chmod 0600 "$working_directory/bootstrap-secrets.yaml" -for file in cert-manager.yaml cnpg.yaml barman.yaml easyai-production.yaml bootstrap-secrets.yaml; do +platform_files=(easyai-production.yaml bootstrap-secrets.yaml) +if [[ $mode == prepare ]]; then + platform_files=(cert-manager.yaml cnpg.yaml barman.yaml "${platform_files[@]}") +fi +for file in "${platform_files[@]}"; do cluster_scp "$working_directory/$file" "$CLUSTER_NINGBO_HOST:/root/$file" done @@ -151,14 +157,16 @@ cleanup_bootstrap_files() { } trap cleanup_bootstrap_files EXIT HUP INT TERM -$kubectl apply --server-side --force-conflicts -f /root/cert-manager.yaml >/dev/null -$kubectl rollout status deployment/cert-manager -n cert-manager --timeout=180s -$kubectl rollout status deployment/cert-manager-webhook -n cert-manager --timeout=180s -$kubectl rollout status deployment/cert-manager-cainjector -n cert-manager --timeout=180s -$kubectl apply --server-side --force-conflicts -f /root/cnpg.yaml >/dev/null -$kubectl rollout status deployment/cnpg-controller-manager -n cnpg-system --timeout=600s -$kubectl apply --server-side --force-conflicts -f /root/barman.yaml >/dev/null -$kubectl rollout status deployment/barman-cloud -n cnpg-system --timeout=600s +if [[ $mode == prepare ]]; then + $kubectl apply --server-side --force-conflicts -f /root/cert-manager.yaml >/dev/null + $kubectl rollout status deployment/cert-manager -n cert-manager --timeout=180s + $kubectl rollout status deployment/cert-manager-webhook -n cert-manager --timeout=180s + $kubectl rollout status deployment/cert-manager-cainjector -n cert-manager --timeout=180s + $kubectl apply --server-side --force-conflicts -f /root/cnpg.yaml >/dev/null + $kubectl rollout status deployment/cnpg-controller-manager -n cnpg-system --timeout=600s + $kubectl apply --server-side --force-conflicts -f /root/barman.yaml >/dev/null + $kubectl rollout status deployment/barman-cloud -n cnpg-system --timeout=600s +fi $kubectl create namespace easyai --dry-run=client -o yaml | $kubectl apply -f - >/dev/null $kubectl apply -f /root/bootstrap-secrets.yaml >/dev/null