Documentation
¶
Index ¶
- Constants
- func GetImageForPlatform(images *RequiredImages, platform string) (string, error)
- func IsInitialDeployment(namespace string) (bool, error)
- func ResolvePlatform(fogType *string) (string, error)
- func SanitizeSegment(value string) string
- func TransferAirgapImages(ctx context.Context, namespace string, host string, ssh *rsc.SSH, ...) error
- func ValidateAirgapRequirements(agentConfig *rsc.AgentConfiguration) error
- func ValidateControlPlaneAirgapRequirements(controlPlane *rsc.RemoteControlPlane) error
- type ContainerEngine
- type RequiredImages
Constants ¶
const ( PlatformAMD64 = "linux/amd64" PlatformARM64 = "linux/arm64" )
Variables ¶
This section is empty.
Functions ¶
func GetImageForPlatform ¶
func GetImageForPlatform(images *RequiredImages, platform string) (string, error)
GetImageForPlatform returns the appropriate image based on platform
func IsInitialDeployment ¶
IsInitialDeployment checks if this is an initial control plane deployment
func ResolvePlatform ¶
func SanitizeSegment ¶
func TransferAirgapImages ¶
func TransferAirgapImages(ctx context.Context, namespace string, host string, ssh *rsc.SSH, platform string, engine ContainerEngine, images []string) error
TransferAirgapImages transfers required images to a remote host for airgap deployment
func ValidateAirgapRequirements ¶
func ValidateAirgapRequirements(agentConfig *rsc.AgentConfiguration) error
ValidateAirgapRequirements validates that required configuration is present for airgap deployment
func ValidateControlPlaneAirgapRequirements ¶
func ValidateControlPlaneAirgapRequirements(controlPlane *rsc.RemoteControlPlane) error
ValidateControlPlaneAirgapRequirements validates that each controller has system agent config with agent type (FogType) and container engine when airgap is enabled. Router and debugger are transferred only in the system agent phase, so system agent config is required to resolve platform.
Types ¶
type ContainerEngine ¶
type ContainerEngine string
const ( EngineDocker ContainerEngine = "docker" EnginePodman ContainerEngine = "podman" )
func ResolveContainerEngine ¶
func ResolveContainerEngine(engine *string) (ContainerEngine, error)
func (ContainerEngine) Command ¶
func (e ContainerEngine) Command() string
type RequiredImages ¶
type RequiredImages struct {
Controller string
Agent string
RouterX86 string
RouterARM string
Debugger string
}
RequiredImages represents all images needed for airgap deployment
func CollectAgentImages ¶
func CollectAgentImages(namespace string, agent *rsc.RemoteAgent, controlPlane *rsc.RemoteControlPlane, isInitialDeployment bool) (*RequiredImages, error)
CollectAgentImages collects required images for agent deployment For initial deployment: uses YAML/defaults (only for RemoteControlPlane) For existing control plane: fetches router/debugger from controller catalog items controlPlane can be nil for Kubernetes or other non-remote control planes
func CollectControllerImages ¶
func CollectControllerImages(namespace string, controlPlane *rsc.RemoteControlPlane, isInitialDeployment bool) (*RequiredImages, error)
CollectControllerImages collects required images for controller deployment For initial deployment: uses YAML/defaults For existing control plane: fetches router/debugger from controller catalog items