pkg/workflows/management/delete_install_capi.go (32 lines of code) (raw):

package management import ( "context" "github.com/aws/eks-anywhere/pkg/cluster" "github.com/aws/eks-anywhere/pkg/logger" "github.com/aws/eks-anywhere/pkg/task" "github.com/aws/eks-anywhere/pkg/workflows" ) type installCAPIComponentsForDeleteTask struct{} func (s *installCAPIComponentsForDeleteTask) Run(ctx context.Context, commandContext *task.CommandContext) task.Task { logger.Info("Provider specific pre-capi-install-setup on bootstrap cluster") if err := commandContext.Provider.PreCAPIInstallOnBootstrap(ctx, commandContext.BootstrapCluster, commandContext.ClusterSpec); err != nil { commandContext.SetError(err) return &workflows.CollectMgmtClusterDiagnosticsTask{} } logger.Info("Installing cluster-api providers on bootstrap cluster") managementComponents := cluster.ManagementComponentsFromBundles(commandContext.ClusterSpec.Bundles) if err := commandContext.ClusterManager.InstallCAPI(ctx, managementComponents, commandContext.ClusterSpec, commandContext.BootstrapCluster, commandContext.Provider); err != nil { commandContext.SetError(err) return &deleteManagementCluster{} } return &moveClusterManagementForDeleteTask{} } func (s *installCAPIComponentsForDeleteTask) Name() string { return "install-capi-components-bootstrap-for-delete" } func (s *installCAPIComponentsForDeleteTask) Restore(ctx context.Context, commandContext *task.CommandContext, completedTask *task.CompletedTask) (task.Task, error) { return nil, nil } func (s *installCAPIComponentsForDeleteTask) Checkpoint() *task.CompletedTask { return nil }