lifecycle

package
v1.2.0-main Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 29, 2026 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Overview

Package lifecycle is a generated GoMock package.

Index

Constants

View Source
const (
	ComposeAppPath         = "/etc/compose/manifests"
	EmbeddedComposeAppPath = "/usr/local/etc/compose/manifests"
)
View Source
const (
	QuadletAppPath         = "/etc/containers/systemd"
	EmbeddedQuadletAppPath = "/usr/local/etc/containers/systemd"
	QuadletTargetPath      = "/etc/systemd/system/"
	QuadletTargetName      = "flightctl-quadlet-app.target"
)

Variables

This section is empty.

Functions

func BatchStartTimeFromContext added in v1.0.0

func BatchStartTimeFromContext(ctx context.Context) (time.Time, bool)

func ContextWithBatchStartTime added in v1.0.0

func ContextWithBatchStartTime(ctx context.Context, t time.Time) context.Context

Types

type Action

type Action struct {
	// ID of the application
	ID string
	// Name of the application
	Name string
	// Environment variables to be passed to the manifest handler at runtime
	EnvVars map[string]string
	// Type of the action
	Type ActionType
	// AppType of the application
	AppType v1beta1.AppType
	// Path to the application
	Path string
	// User that owns the app. Blank means the same user as the current process.
	User v1beta1.Username
	// Embedded is true if the application is embedded in the device
	Embedded bool
	// Volumes is a list of volume names related to this application
	Volumes []Volume
	// Spec holds type-specific configuration, discriminated by AppType.
	Spec ActionSpec
}

type ActionHandler

type ActionHandler interface {
	Execute(ctx context.Context, actions Actions) error
}

type ActionHandlerType

type ActionHandlerType string
const (
	ActionHandlerCompose ActionHandlerType = "compose"
)

type ActionSpec

type ActionSpec interface {
	// contains filtered or unexported methods
}

ActionSpec is a marker interface for type-specific action configuration. Only spec types defined in this package can implement this interface.

type ActionType

type ActionType string
const (
	ActionAdd    ActionType = "add"
	ActionRemove ActionType = "remove"
	ActionUpdate ActionType = "update"
)

type Actions

type Actions []Action

func (Actions) ByUser

type ActionsByType

type ActionsByType struct {
	Adds    []Action
	Removes []Action
	Updates []Action
	Unknown []Action
}

type Compose

type Compose struct {
	// contains filtered or unexported fields
}

func NewCompose

func NewCompose(log *log.PrefixLogger, rwFactory fileio.ReadWriterFactory, podmanFactory client.PodmanFactory) *Compose

func (*Compose) Execute

func (c *Compose) Execute(ctx context.Context, actions Actions) error

type ExecutableResolver

type ExecutableResolver interface {
	Resolve() (string, error)
}

ExecutableResolver resolves the path to an executable binary.

type HelmHandler

type HelmHandler struct {
	// contains filtered or unexported fields
}

func NewHelmHandler

func NewHelmHandler(log *log.PrefixLogger, clients client.CLIClients, kubeconfigPath string, resolver ExecutableResolver, rwFactory fileio.ReadWriterFactory) *HelmHandler

func (*HelmHandler) Execute

func (h *HelmHandler) Execute(ctx context.Context, actions Actions) error

type HelmSpec

type HelmSpec struct {
	// Namespace is the Kubernetes namespace for the Helm release.
	Namespace string
	// ValuesFiles is a list of relative paths to values files within the chart.
	ValuesFiles []string
	// ProviderValuesPath is the absolute path to the provider-generated values file.
	// This is set when the application spec contains inline Values.
	ProviderValuesPath string
}

HelmSpec contains Helm-specific action configuration.

type MockActionHandler added in v1.0.0

type MockActionHandler struct {
	// contains filtered or unexported fields
}

MockActionHandler is a mock of ActionHandler interface.

func NewMockActionHandler added in v1.0.0

func NewMockActionHandler(ctrl *gomock.Controller) *MockActionHandler

NewMockActionHandler creates a new mock instance.

func (*MockActionHandler) EXPECT added in v1.0.0

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockActionHandler) Execute added in v1.0.0

func (m *MockActionHandler) Execute(ctx context.Context, actions Actions) error

Execute mocks base method.

type MockActionHandlerMockRecorder added in v1.0.0

type MockActionHandlerMockRecorder struct {
	// contains filtered or unexported fields
}

MockActionHandlerMockRecorder is the mock recorder for MockActionHandler.

func (*MockActionHandlerMockRecorder) Execute added in v1.0.0

func (mr *MockActionHandlerMockRecorder) Execute(ctx, actions any) *gomock.Call

Execute indicates an expected call of Execute.

type MockActionSpec

type MockActionSpec struct {
	// contains filtered or unexported fields
}

MockActionSpec is a mock of ActionSpec interface.

func NewMockActionSpec

func NewMockActionSpec(ctrl *gomock.Controller) *MockActionSpec

NewMockActionSpec creates a new mock instance.

func (*MockActionSpec) EXPECT

EXPECT returns an object that allows the caller to indicate expected use.

type MockActionSpecMockRecorder

type MockActionSpecMockRecorder struct {
	// contains filtered or unexported fields
}

MockActionSpecMockRecorder is the mock recorder for MockActionSpec.

type OSExecutableResolver

type OSExecutableResolver struct{}

OSExecutableResolver resolves the current process executable using os.Executable().

func (OSExecutableResolver) Resolve

func (r OSExecutableResolver) Resolve() (string, error)

type Quadlet added in v1.0.0

type Quadlet struct {
	// contains filtered or unexported fields
}

func NewQuadlet added in v1.0.0

func NewQuadlet(log *log.PrefixLogger, rwFactory fileio.ReadWriterFactory, systemdFactory systemd.ManagerFactory, podmanFactory client.PodmanFactory) *Quadlet

func (*Quadlet) Execute added in v1.0.0

func (q *Quadlet) Execute(ctx context.Context, actions Actions) error

type Volume added in v0.8.1

type Volume struct {
	ID            string
	Reference     string
	ReclaimPolicy v1beta1.ApplicationVolumeReclaimPolicy
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL