Skip to content

fix: take a Debian cloud image from the newest build that has it - #261

Merged
MickLesk merged 2 commits into
mainfrom
fix/debian-image-latest-fallback
Nov 13, 2026
Merged

MickLesk merged 2 commits into
mainfrom
fix/debian-image-latest-fallback

Conversation

@MickLesk

Copy link
Copy Markdown
Member

✍️ Description

cloud.debian.org points latest/ at its newest build even when that build lacks an image: 20261111-2659 has no nocloud-amd64, so docker-vm, debian-vm and every other VM script on the nocloud image failed with 404 (VE #18702, 33 runs in three days). A mirror that has not synced yet did the same to the generic images. vm_fetch_image now falls back to the newest of the last five dated builds that has the file and verifies it against that build's SHA512SUMS.

🔗 Related Issue

Fixes community-scripts/ProxmoxVE#18702

✅ Prerequisites (X in brackets)

  • Self-review completed – Code follows project standards.
  • Tested thoroughly – Changes work as expected (Proxmox VE and/or Incus, as applicable).
  • No security risks – No hardcoded secrets, unnecessary privilege escalations, or permission issues.
  • API.txt regenerated – If a function signature or behavior changed, API.txt was updated to match.

🛠️ Type of Change (X in brackets)

  • 🐞 Bug fix – Resolves an issue without breaking functionality.
  • ✨ New feature – Adds new, non-breaking functionality.
  • 💥 Breaking change – Alters existing behavior in a way that may require updates in every downstream script.
  • 🔧 Refactoring / Code Cleanup – Improves readability or maintainability without changing functionality.
  • 📝 Documentation update – Changes to README, docs/, CONTRIBUTING.md, or other docs.

🤖 AI Assistance (X in brackets)

If you used an AI tool (GitHub Copilot, Claude, ChatGPT, etc.) to write or generate any code in this PR, you must confirm compliance below.
Select exactly one option.

  • No AI used – Code was written without AI assistance.
  • AI was used – The output has been reviewed and corrected, and I take responsibility for it matching this repo's conventions.

cloud.debian.org points latest/ at its newest build even when that
build lacks an image: 20261111-2659 has no nocloud-amd64, so docker-vm,
debian-vm and every other VM script on the nocloud image failed with
404 (VE #18702, 33 runs in three days). A mirror that has not synced
yet did the same to the generic images. vm_fetch_image now falls back
to the newest of the last five dated builds that has the file and
verifies it against that build's SHA512SUMS.
@github-actions

Copy link
Copy Markdown
Contributor

Try this branch

The engine and the scripts resolve independently, so a production script can
be run against the engine from this PR by setting one variable:

COMMUNITY_SCRIPTS_CORE_URL=https://raw.githubusercontent.com/community-scripts/core/fix/debian-image-latest-fallback \
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/debian.sh)"

Swap ct/debian.sh for whatever exercises the change.

This PR touches pve/, so it needs a Proxmox VE host.

Run a script from a fork as well
curl -fsSL https://raw.githubusercontent.com/community-scripts/core/fix/debian-image-latest-fallback/tools/run.sh |
  bash -s -- https://raw.githubusercontent.com/YOU/DevScripts/your-branch ct/debian.sh \
             https://raw.githubusercontent.com/community-scripts/core/fix/debian-image-latest-fallback

Note that run.sh is reached through a pipe, so the script it starts inherits
an exhausted stdin. Whiptail is fine — it opens /dev/tty — but a plain read
would see EOF. The single-variable form above does not have that problem.

Useful flags while testing

dev_mode=net logs every engine fetch with status and duration, which is the
quickest way to confirm the branch is really being used. dev_mode=keep stops a
failed build from deleting the container along with the evidence.

waydroid-vm asked for daily/latest/debian-13-generic-amd64.qcow2, which
Debian publishes as debian-13-generic-amd64-daily.qcow2: 7 runs failed
with 404 independent of the latest/ change.
@MickLesk
MickLesk merged commit 2fc2e2f into main Nov 13, 2026
4 checks passed
@github-actions
github-actions Bot deleted the fix/debian-image-latest-fallback branch November 14, 2026 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Docker] Debian url does not exist

1 participant