diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index e4cc85a..a5cc1fc 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -611,62 +611,12 @@ jobs: exit 1 } - pull_image_on_node() { - local image="$1" - local host_ip="$2" - local attempts="$3" - local sleep_seconds="$4" - local pulled=false - - for attempt in $(seq 1 "${attempts}"); do - echo "Pre-pulling ${image} on ${host_ip} (${attempt}/${attempts})" - if ssh -i "$HOME/.ssh/id_ed25519" -o StrictHostKeyChecking=no -o ConnectTimeout=10 "ubuntu@${host_ip}" \ - "sudo k3s crictl inspecti '${image}' >/dev/null 2>&1 || (sudo k3s crictl pull '${image}' && sudo k3s crictl inspecti '${image}' >/dev/null 2>&1)"; then - pulled=true - break - fi - sleep "${sleep_seconds}" - done - - if [ "${pulled}" != "true" ]; then - echo "Failed to pre-pull required Rancher image ${image} on ${host_ip}" >&2 - exit 1 - fi - } - - pull_image_on_all_nodes() { - local image="$1" - local ips - local pids="" - local failed=false - ips="$(python3 -c 'import json; outputs=json.load(open("outputs/terraform_outputs.json")); print(" ".join(outputs["control_plane_ips"]["value"] + outputs["worker_ips"]["value"]))')" - - for ip in ${ips}; do - pull_image_on_node "${image}" "${ip}" 30 10 & - pids="${pids} $!" - done - - for pid in ${pids}; do - if ! wait "${pid}"; then - failed=true - fi - done - - if [ "${failed}" = "true" ]; then - echo "Failed to pre-pull required Rancher image ${image} on one or more nodes" >&2 - exit 1 - fi - } - echo "Waiting for Rancher..." wait_for_resource flux-system kustomization.kustomize.toolkit.fluxcd.io/addon-rancher 600 kubectl -n flux-system annotate kustomization/addon-rancher reconcile.fluxcd.io/requestedAt="$(date +%s)" --overwrite wait_for_resource flux-system helmrelease.helm.toolkit.fluxcd.io/rancher 600 reconcile_helmrelease rancher wait_for_helmchart_ready flux-system-rancher rancher 180s 5 - pull_image_on_all_nodes rancher/shell:v0.6.2 - pull_image_on_all_nodes rancher/rancher-webhook:v0.9.3 - pull_image_on_all_nodes rancher/system-upgrade-controller:v0.17.0 wait_for_helmrelease_ready rancher cattle-system 900 wait_for_resource "" namespace/cattle-system 600 wait_for_resource cattle-system deployment/cattle-system-rancher 600