fix: generate Talconfig during reconcile #31

Merged
eding merged 1 commit from fix/reconcile-talconfig into main 2026-09-06 20:39:37 +02:00
2 changed files with 5 additions and 5 deletions

View file

@ -1385,7 +1385,7 @@ func (r Runner) reconcileTerraform(terraformDir string) error {
} }
func terraformReconcileTargets(cfg config.Config) []string { func terraformReconcileTargets(cfg config.Config) []string {
targets := []string{"-target=proxmox_virtual_environment_download_file.talos_iso"} targets := []string{"-target=proxmox_virtual_environment_download_file.talos_iso", "-target=local_file.talconfig"}
if cfg.Talos.Cluster.ManageNetworkBridges { if cfg.Talos.Cluster.ManageNetworkBridges {
targets = append(targets, "-target=proxmox_virtual_environment_network_linux_bridge.cluster_bridge") targets = append(targets, "-target=proxmox_virtual_environment_network_linux_bridge.cluster_bridge")
} }

View file

@ -1109,13 +1109,13 @@ func TestTerraformPlanPathIsAbsolute(t *testing.T) {
} }
} }
func TestTerraformReconcileTargetsStageImageAndManagedBridgesOnly(t *testing.T) { func TestTerraformReconcileTargetsStageImageTalconfigAndManagedBridgesOnly(t *testing.T) {
if targets := strings.Join(terraformReconcileTargets(config.Config{}), " "); targets != "-target=proxmox_virtual_environment_download_file.talos_iso" { if targets := strings.Join(terraformReconcileTargets(config.Config{}), " "); targets != "-target=proxmox_virtual_environment_download_file.talos_iso -target=local_file.talconfig" {
t.Fatalf("default reconcile targets = %q", targets) t.Fatalf("default reconcile targets = %q", targets)
} }
cfg := config.Config{Talos: config.TalosConfig{Cluster: config.TalosClusterConfig{ManageNetworkBridges: true}}} cfg := config.Config{Talos: config.TalosConfig{Cluster: config.TalosClusterConfig{ManageNetworkBridges: true}}}
targets := strings.Join(terraformReconcileTargets(cfg), " ") targets := strings.Join(terraformReconcileTargets(cfg), " ")
if !strings.Contains(targets, "-target=proxmox_virtual_environment_download_file.talos_iso") || !strings.Contains(targets, "-target=proxmox_virtual_environment_network_linux_bridge.cluster_bridge") || strings.Contains(targets, "proxmox_virtual_environment_vm.vm") { if !strings.Contains(targets, "-target=proxmox_virtual_environment_download_file.talos_iso") || !strings.Contains(targets, "-target=local_file.talconfig") || !strings.Contains(targets, "-target=proxmox_virtual_environment_network_linux_bridge.cluster_bridge") || strings.Contains(targets, "proxmox_virtual_environment_vm.vm") {
t.Fatalf("managed bridge reconcile targets = %q", targets) t.Fatalf("managed bridge reconcile targets = %q", targets)
} }
} }
@ -1197,7 +1197,7 @@ func TestReconcileTerraformImportsConfiguredTalosVMsBeforePlan(t *testing.T) {
if len(state) != 1 || state[0] != importedAddress { if len(state) != 1 || state[0] != importedAddress {
return errors.New("VM create collision") return errors.New("VM create collision")
} }
if strings.Contains(strings.Join(args, " "), "proxmox_virtual_environment_vm.vm") || !strings.Contains(strings.Join(args, " "), "-target=proxmox_virtual_environment_download_file.talos_iso") { if strings.Contains(strings.Join(args, " "), "proxmox_virtual_environment_vm.vm") || !strings.Contains(strings.Join(args, " "), "-target=proxmox_virtual_environment_download_file.talos_iso") || !strings.Contains(strings.Join(args, " "), "-target=local_file.talconfig") {
t.Fatalf("reconcile plan did not exclude the Talos VM: %q", args) t.Fatalf("reconcile plan did not exclude the Talos VM: %q", args)
} }
events = append(events, "plan") events = append(events, "plan")