@@ -17,15 +17,47 @@ function get_bosh_environment {
1717mv bosh-cli/bosh-cli-* /usr/local/bin/bosh-cli
1818chmod +x /usr/local/bin/bosh-cli
1919
20- export BOSH_ENVIRONMENT=$( get_bosh_environment)
21- export BOSH_CLIENT=admin
22- export BOSH_CLIENT_SECRET=$( bosh-cli int director-state/director-creds.yml --path /admin_password)
23- export BOSH_CA_CERT=$( bosh-cli int director-state/director-creds.yml --path /director_ssl/ca)
20+ export BOSH_CLIENT=" admin"
21+ BOSH_CLIENT_SECRET=$( bosh-cli int director-state/director-creds.yml --path /admin_password)
22+ BOSH_ENVIRONMENT=$( get_bosh_environment)
23+ BOSH_CA_CERT=$( bosh-cli int director-state/director-creds.yml --path /director_ssl/ca)
24+ export BOSH_ENVIRONMENT
25+ export BOSH_CA_CERT
26+ export BOSH_CLIENT_SECRET
2427export BOSH_NON_INTERACTIVE=true
2528
2629bosh-cli update-cloud-config " bosh-deployment/${CPI} /cloud-config.yml" \
2730 --vars-file director-state/director-vars.json
2831
2932bosh-cli upload-stemcell stemcell/* .tgz
30- bosh-cli -d zookeeper deploy --recreate " ${bosh_repo_dir} /ci/tasks/deploy-zookeeper/zookeeper-manifest.yml"
33+
34+ MAX_DEPLOY_ATTEMPTS=${MAX_DEPLOY_ATTEMPTS:- 3}
35+ DEPLOY_RETRY_DELAY=${DEPLOY_RETRY_DELAY:- 60}
36+
37+ for attempt in $( seq 1 " $MAX_DEPLOY_ATTEMPTS " ) ; do
38+ echo " Deploy attempt ${attempt} /${MAX_DEPLOY_ATTEMPTS} ..."
39+ set +e
40+ # DEPLOY_EXTRA_ARGS is intentionally unquoted to allow multiple space-separated arguments
41+ # shellcheck disable=SC2086
42+ bosh-cli -d zookeeper deploy --recreate ${DEPLOY_EXTRA_ARGS:- } \
43+ " ${bosh_repo_dir} /ci/tasks/deploy-zookeeper/zookeeper-manifest.yml"
44+ deploy_exit=$?
45+ set -e
46+
47+ if [ $deploy_exit -eq 0 ]; then
48+ echo " Deploy succeeded on attempt ${attempt} ."
49+ break
50+ fi
51+
52+ echo " Deploy failed on attempt ${attempt} ."
53+ echo " Current VM state:"
54+ bosh-cli -d zookeeper vms || true
55+ if [ " ${attempt} " -eq " ${MAX_DEPLOY_ATTEMPTS} " ]; then
56+ echo " Deploy failed after ${MAX_DEPLOY_ATTEMPTS} attempts."
57+ exit 1
58+ fi
59+ echo " Waiting ${DEPLOY_RETRY_DELAY} s before retry..."
60+ sleep " ${DEPLOY_RETRY_DELAY} "
61+ done
62+
3163bosh-cli -d zookeeper run-errand smoke-tests
0 commit comments