proxmox: review fixes, real-host validation record, changelog
Phase 10. Two review passes (go-operator-reviewer, /code-review high) over the branch, recorded in docs/reviews/2026-09-23-proxmox-provider-review/: 9 findings fixed, 3 accepted as documented limits, 7 rejected with a reason. - Delete removes the seed between the stop and the destroy, so a failed seed delete leaves the VM for the next Delete instead of leaking the ISO; a Permanent refusal on the every-node path fails the call. - Create skips a probe VMID whose listed name is someone else's without waiting on its lock. - The three answers Phase 0 never captured are fixtures now: a missing storage is a 400 (the Checker reports StorageNotFound), a hibernated VM is destroyable (Delete destroys ours), a paused VM stops. - TestProxmox_lifecycle and TestProxmoxCheck_realHost passed on pv1-1 (PVE 9.2.20); the docs record the run and drop "not yet run". Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,24 @@
|
||||
# Changelog
|
||||
|
||||
## 2026-09-24 10:28 UTC — proxmox provider: reviewed, fixed, proven on a real Proxmox VE 9.2 host
|
||||
|
||||
The `proxmox` provider (VMs cloned from a template on Proxmox VE through its REST API)
|
||||
finished its last phase: a two-pass review, a real-host run on pv1-1, and captures of the
|
||||
three API answers the design had only guessed.
|
||||
|
||||
- Delete now removes the seed ISO **before** destroying the VM. Before, a seed delete that
|
||||
failed after the destroy was never retried (the next Get is NotFound), so the ISO leaked.
|
||||
A 403 for `Datastore.Allocate` now fails Delete on every path instead of being skipped.
|
||||
- Create skips a probe VMID held by someone else's VM at once, instead of waiting up to 10
|
||||
minutes on that VM's lock on every retry.
|
||||
- The captures corrected two assumptions: a missing ISO storage is a 400 (the health check
|
||||
now says `StorageNotFound`, not `APIError`), and a hibernated VM can be destroyed (Delete
|
||||
destroys ours instead of latching the Proxy).
|
||||
- `TestProxmox_lifecycle` and `TestProxmoxCheck_realHost` passed on PVE 9.2.20: Create 6.2 s,
|
||||
an address 50 s later. A kind pass took a sample Proxy to Ready and back.
|
||||
- Review record: `docs/reviews/2026-09-23-proxmox-provider-review/REPORT.md`. Timings:
|
||||
`docs/testing.md`. Code: `internal/provider/proxmox/{delete,create,check,errors}.go`.
|
||||
|
||||
## 2026-09-18 07:52 UTC — docs/operating.md, starting with the libvirt-RPC log query
|
||||
|
||||
New home for day-to-day helpers against a running operator, seeded with the `jq` query
|
||||
|
||||
Reference in New Issue
Block a user