Documentation
¶
Index ¶
- func CheckCPUStep(nodeType string, profile string) automa.Builder
- func CheckHostProfileStep(nodeType string, profile string) automa.Builder
- func CheckMemoryStep(nodeType string, profile string) automa.Builder
- func CheckOSStep(nodeType string, profile string) automa.Builder
- func CheckPrivilegesStep() automa.Builder
- func CheckStorageStep(nodeType string, profile string) automa.Builder
- func CheckWeaverInstallationWorkflow() *automa.WorkflowBuilder
- func CheckWeaverUserStep() automa.Builder
- func DefaultWorkflowExecutionOptions() *models.WorkflowExecutionOptions
- func InstallClusterWorkflow(nodeType string, profile string, skipHardwareChecks bool, ...) *automa.WorkflowBuilder
- func NewAlloyInstallWorkflow() *automa.WorkflowBuilder
- func NewAlloyUninstallWorkflow() *automa.WorkflowBuilder
- func NewBlockNodePreflightCheckWorkflow(profile string) *automa.WorkflowBuilder
- func NewNodeSafetyCheckWorkflow(nodeType string, profile string, skipHardwareChecks bool) *automa.WorkflowBuilder
- func NewSelfInstallWorkflow() *automa.WorkflowBuilder
- func NewSelfUninstallWorkflow() *automa.WorkflowBuilder
- func NewTeleportClusterAgentInstallWorkflow() *automa.WorkflowBuilder
- func NewTeleportClusterAgentUninstallWorkflow() *automa.WorkflowBuilder
- func NewTeleportNodeAgentInstallWorkflow(mr software.MachineRuntime) *automa.WorkflowBuilder
- func NewTeleportNodeAgentUninstallWorkflow(mr software.MachineRuntime) *automa.WorkflowBuilder
- func NodeSetupWorkflow(nodeType string, profile string, skipHardwareChecks bool) *automa.WorkflowBuilder
- func UninstallClusterWorkflow() *automa.WorkflowBuilder
- func WithWorkflowExecutionMode(wf *automa.WorkflowBuilder, opts *models.WorkflowExecutionOptions) *automa.WorkflowBuilder
- type CiliumAccelerationMigration
- type LegacyBinaryMigration
- func (m *LegacyBinaryMigration) Applies(mctx *migration.Context) (bool, error)
- func (m *LegacyBinaryMigration) Description() string
- func (m *LegacyBinaryMigration) Execute(ctx context.Context, mctx *migration.Context) error
- func (m *LegacyBinaryMigration) ID() string
- func (m *LegacyBinaryMigration) Rollback(ctx context.Context, mctx *migration.Context) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckCPUStep ¶
CheckCPUStep validates CPU requirements for a specific node type
func CheckHostProfileStep ¶
CheckHostProfileStep retrieves host profile and validates node type and profile
func CheckMemoryStep ¶
CheckMemoryStep validates memory requirements for a specific node type
func CheckOSStep ¶
CheckOSStep validates OS requirements for a specific node type
func CheckPrivilegesStep ¶
CheckPrivilegesStep validates that the current user has superuser privileges
func CheckStorageStep ¶
CheckStorageStep validates storage requirements for a specific node type
func CheckWeaverInstallationWorkflow ¶
func CheckWeaverInstallationWorkflow() *automa.WorkflowBuilder
func CheckWeaverUserStep ¶
CheckWeaverUserStep validates that the provisioner user and group exist with the correct IDs
func DefaultWorkflowExecutionOptions ¶ added in v0.7.0
func DefaultWorkflowExecutionOptions() *models.WorkflowExecutionOptions
DefaultWorkflowExecutionOptions returns WorkflowExecutionOptions with all boolean options defaulted to true.
func InstallClusterWorkflow ¶ added in v0.7.0
func InstallClusterWorkflow(nodeType string, profile string, skipHardwareChecks bool, mr software.MachineRuntime) *automa.WorkflowBuilder
InstallClusterWorkflow creates a workflow to set up a kubernetes cluster.
func NewAlloyInstallWorkflow ¶ added in v0.7.0
func NewAlloyInstallWorkflow() *automa.WorkflowBuilder
NewAlloyInstallWorkflow creates a workflow to install the Alloy observability stack. This installs Prometheus Operator CRDs, Node Exporter, and Grafana Alloy.
func NewAlloyUninstallWorkflow ¶ added in v0.7.0
func NewAlloyUninstallWorkflow() *automa.WorkflowBuilder
NewAlloyUninstallWorkflow creates a workflow to uninstall the Alloy observability stack. This removes Grafana Alloy, Node Exporter, and Prometheus Operator CRDs.
func NewBlockNodePreflightCheckWorkflow ¶
func NewBlockNodePreflightCheckWorkflow(profile string) *automa.WorkflowBuilder
NewBlockNodePreflightCheckWorkflow creates a safety check workflow for block node.
func NewNodeSafetyCheckWorkflow ¶
func NewNodeSafetyCheckWorkflow(nodeType string, profile string, skipHardwareChecks bool) *automa.WorkflowBuilder
NewNodeSafetyCheckWorkflow creates a safety check workflow for any node type. If skipHardwareChecks is true, hardware validation steps (OS, CPU, memory, storage) are excluded.
func NewSelfInstallWorkflow ¶
func NewSelfInstallWorkflow() *automa.WorkflowBuilder
func NewSelfUninstallWorkflow ¶ added in v0.7.0
func NewSelfUninstallWorkflow() *automa.WorkflowBuilder
func NewTeleportClusterAgentInstallWorkflow ¶ added in v0.7.0
func NewTeleportClusterAgentInstallWorkflow() *automa.WorkflowBuilder
NewTeleportClusterAgentInstallWorkflow creates a workflow to install the Teleport Kubernetes cluster agent. This provides secure kubectl access via Teleport with full audit logging.
func NewTeleportClusterAgentUninstallWorkflow ¶ added in v0.16.0
func NewTeleportClusterAgentUninstallWorkflow() *automa.WorkflowBuilder
NewTeleportClusterAgentUninstallWorkflow creates a workflow to uninstall the Teleport Kubernetes cluster agent.
func NewTeleportNodeAgentInstallWorkflow ¶ added in v0.7.0
func NewTeleportNodeAgentInstallWorkflow(mr software.MachineRuntime) *automa.WorkflowBuilder
NewTeleportNodeAgentInstallWorkflow creates a workflow to install the Teleport node agent. sm is the shared Manager used to record installation progress.
func NewTeleportNodeAgentUninstallWorkflow ¶ added in v0.16.0
func NewTeleportNodeAgentUninstallWorkflow(mr software.MachineRuntime) *automa.WorkflowBuilder
NewTeleportNodeAgentUninstallWorkflow creates a workflow to uninstall the Teleport node agent. mr provides software state needed by the installer.
func NodeSetupWorkflow ¶ added in v0.7.0
func NodeSetupWorkflow(nodeType string, profile string, skipHardwareChecks bool) *automa.WorkflowBuilder
NodeSetupWorkflow creates a comprehensive setup workflow for any node type It runs preflight checks first, then performs the actual setup.
func UninstallClusterWorkflow ¶ added in v0.7.0
func UninstallClusterWorkflow() *automa.WorkflowBuilder
UninstallClusterWorkflow creates a workflow to tear down a kubernetes cluster
func WithWorkflowExecutionMode ¶ added in v0.7.0
func WithWorkflowExecutionMode(wf *automa.WorkflowBuilder, opts *models.WorkflowExecutionOptions) *automa.WorkflowBuilder
WithWorkflowExecutionMode applies the given WorkflowExecutionOptions to the provided WorkflowBuilder. If opts is nil, it uses DefaultWorkflowExecutionOptions.
Types ¶
type CiliumAccelerationMigration ¶ added in v0.19.1
type CiliumAccelerationMigration struct {
migration.CLIVersionMigration
}
CiliumAccelerationMigration re-renders cilium-config.yaml and runs `cilium upgrade` so already-provisioned clusters adopt loadBalancer.acceleration=disabled (#669/#674).
func NewCiliumAccelerationMigration ¶ added in v0.19.1
func NewCiliumAccelerationMigration() *CiliumAccelerationMigration
NewCiliumAccelerationMigration constructs the migration.
func (*CiliumAccelerationMigration) Execute ¶ added in v0.19.1
Execute re-renders cilium-config.yaml from the updated template and applies it with `cilium upgrade --values <config> --wait`.
It is self-guarding and idempotent: it no-ops when no live cilium-config is reachable (the node has no cluster) or when acceleration is already "disabled" (the migration already ran). Applies() only gates on the CLI version boundary, so these checks make repeated invocations within the upgrade window harmless.
type LegacyBinaryMigration ¶ added in v0.7.0
type LegacyBinaryMigration struct {
// contains filtered or unexported fields
}
LegacyBinaryMigration removes the old "weaver" binary after rename to "solo-provisioner". This migration applies based on file state, not version boundaries.
func NewLegacyBinaryMigration ¶ added in v0.7.0
func NewLegacyBinaryMigration() *LegacyBinaryMigration
NewLegacyBinaryMigration creates a new legacy binary removal migration.
func (*LegacyBinaryMigration) Applies ¶ added in v0.7.0
func (m *LegacyBinaryMigration) Applies(mctx *migration.Context) (bool, error)
Applies returns true if the legacy "weaver" binary exists and needs to be removed.
func (*LegacyBinaryMigration) Description ¶ added in v0.7.0
func (m *LegacyBinaryMigration) Description() string
func (*LegacyBinaryMigration) Execute ¶ added in v0.7.0
Execute removes the legacy "weaver" binary and its symlink.
func (*LegacyBinaryMigration) ID ¶ added in v0.7.0
func (m *LegacyBinaryMigration) ID() string