chore(opentofu): drop the spent removed block for module.k8s_3
ci/woodpecker/pr/ci-scripts-test Pipeline was successful
ci/woodpecker/pr/pr-review Pipeline was successful

The removal has been applied:

  Apply complete! Resources: 0 added, 0 changed, 0 destroyed, 1 forgotten.

`tofu state list` now returns no Proxmox resources at all, and a full plan with
refresh enabled produces no Proxmox errors — the "no route to host" against
10.2.40.201:8006 that failed every infrastructure plan since the conversion is
gone.

The block was always one-shot. Left in place it refers to a state entry that no
longer exists, which is harmless but misleading: it reads as pending work.

Worth recording for the next time this shape comes up, because it cost a failed
merge to learn. A `removed` block alone does not fix an unreachable provider:
OpenTofu still refreshes the resource before it can forget it, and that refresh
is exactly what cannot succeed. It takes one run with `-refresh=false` to
process. `-target` does not help — targeting does not reach `removed` blocks, so
a targeted plan reports "No changes" while the state entry sits there untouched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-26 08:07:45 +02:00
co-authored by Claude Opus 5
parent 0653361bc4
commit 4938f8f5a2
-27
View File
@@ -1,27 +0,0 @@
# k8s-3 was the last Proxmox VM. neptune now runs Talos on bare metal, and its
# disks were wiped during the conversion, so the VM this module described does
# not exist in any form.
#
# `removed` rather than simply deleting vm_152_k8s_3.tf: dropping the resource
# from configuration alone makes OpenTofu plan a DESTROY, and planning a destroy
# refreshes the resource through the bpg/proxmox provider — which now has no
# endpoint to reach. That is exactly what has been failing every infrastructure
# plan since the conversion:
#
# Error: failed to get resources list of type ("vm") for cluster:
# dial tcp 10.2.40.201:8006: connect: no route to host
# with module.k8s_3.proxmox_virtual_environment_vm.this
#
# `lifecycle { destroy = false }` forgets the state entry without attempting to
# contact Proxmox. Nothing is orphaned by doing so: the guest, its disks and the
# hypervisor underneath it are all already gone.
#
# This block can be deleted once one plan has run cleanly with it — it is a
# one-shot instruction, not standing configuration.
removed {
from = module.k8s_3
lifecycle {
destroy = false
}
}