fix: retain existing Talos bridges

This commit is contained in:
eding 2026-07-26 21:09:37 +02:00
parent 7ed39b254e
commit 9816bc45bc

View file

@ -20,6 +20,7 @@ var bootstrapPromptOperationalSecrets bool
var bootstrapInitializeOpenBaoRecovery bool var bootstrapInitializeOpenBaoRecovery bool
var bootstrapPublishAppFrom string var bootstrapPublishAppFrom string
var bootstrapMergeBootstrapPR bool var bootstrapMergeBootstrapPR bool
var bootstrapManageNetworkBridges bool
var bootstrapCmd = &cobra.Command{ var bootstrapCmd = &cobra.Command{
Use: "bootstrap", Use: "bootstrap",
@ -38,6 +39,7 @@ func init() {
bootstrapCmd.Flags().BoolVar(&bootstrapInitializeOpenBaoRecovery, "initialize-openbao-recovery", false, "Create and save a separate OpenBao recovery age identity for --config") bootstrapCmd.Flags().BoolVar(&bootstrapInitializeOpenBaoRecovery, "initialize-openbao-recovery", false, "Create and save a separate OpenBao recovery age identity for --config")
bootstrapCmd.Flags().StringVar(&bootstrapPublishAppFrom, "publish-app-from", "", "Push this app checkout's current branch and create a Forgejo delivery PR") bootstrapCmd.Flags().StringVar(&bootstrapPublishAppFrom, "publish-app-from", "", "Push this app checkout's current branch and create a Forgejo delivery PR")
bootstrapCmd.Flags().BoolVar(&bootstrapMergeBootstrapPR, "merge-bootstrap-pr", false, "Merge the generated Flux repository migration PR before bootstrapping") bootstrapCmd.Flags().BoolVar(&bootstrapMergeBootstrapPR, "merge-bootstrap-pr", false, "Merge the generated Flux repository migration PR before bootstrapping")
bootstrapCmd.Flags().BoolVar(&bootstrapManageNetworkBridges, "manage-network-bridges", false, "Persist Terraform management for existing Talos network bridges")
} }
func runBootstrap(cmd *cobra.Command, args []string) error { func runBootstrap(cmd *cobra.Command, args []string) error {
@ -93,12 +95,15 @@ func runBootstrap(cmd *cobra.Command, args []string) error {
} }
if bootstrapConfigPath != "" { if bootstrapConfigPath != "" {
if bootstrapPromptDemocraticCSI || bootstrapPromptOperationalSecrets || bootstrapInitializeOpenBaoRecovery { if bootstrapPromptDemocraticCSI || bootstrapPromptOperationalSecrets || bootstrapInitializeOpenBaoRecovery || bootstrapManageNetworkBridges {
cfg, err = config.LoadRaw(bootstrapConfigPath) cfg, err = config.LoadRaw(bootstrapConfigPath)
if err == nil { if err == nil {
if bootstrapPromptDemocraticCSI { if bootstrapPromptDemocraticCSI {
cfg = ui.PromptDemocraticCSI(cfg) cfg = ui.PromptDemocraticCSI(cfg)
} }
if bootstrapManageNetworkBridges {
cfg.Talos.Cluster.ManageNetworkBridges = true
}
cfg, err = config.Resolve(cfg) cfg, err = config.Resolve(cfg)
} }
if err == nil && bootstrapPromptOperationalSecrets { if err == nil && bootstrapPromptOperationalSecrets {