diff --git a/scripts/proxmox/create-proxmox-resource.sh b/scripts/proxmox/create-proxmox-resource.sh index fd4f3a0..515f3aa 100755 --- a/scripts/proxmox/create-proxmox-resource.sh +++ b/scripts/proxmox/create-proxmox-resource.sh @@ -487,6 +487,17 @@ nix_extra_opts # --- make sure this target has a registered host key -------------------- echo echo "==> Ensuring host key exists and is registered..." +_host_keyfile="${repo_root}/host-keys/${flake_target}_ssh_host_ed25519_key" +if [[ ! -f "$_host_keyfile" ]]; then + echo " No host key found for ${flake_target}; generating one via prepare-host-key.sh..." + _prepare_host_key="${repo_root}/scripts/secrets/prepare-host-key.sh" + if [[ "$dry_run" -eq 1 ]]; then + echo "[dry-run] would run: bash ${_prepare_host_key} ${flake_target}" + else + bash "$_prepare_host_key" "$flake_target" + fi +fi +unset _host_keyfile _prepare_host_key sync_args=("$flake_target") [[ "$dry_run" -eq 1 ]] && sync_args+=(--dry-run) bash "$sync_keys" "${sync_args[@]}"