Documentation
¶
Overview ¶
Package client is a generated GoMock package.
Index ¶
- Constants
- Variables
- func IsCommandAvailable(cmdName string) bool
- func IsComposeAvailable() bool
- func IsPodmanRootless() bool
- func NewFromConfig(config *baseclient.Config) (*client.ClientWithResponses, error)
- func NewGRPCClientFromConfig(config *baseclient.Config) (grpc_v1.RouterServiceClient, error)
- func ParseComposeSpecFromDir(reader fileio.Reader, dir string) (*common.ComposeSpec, error)
- func SanitizePodmanLabel(name string) string
- type Bootc
- type ClientOption
- type Compose
- type Enrollment
- type Management
- type MockBootc
- func (m *MockBootc) Apply(ctx context.Context) error
- func (m *MockBootc) EXPECT() *MockBootcMockRecorder
- func (m *MockBootc) Status(ctx context.Context) (*container.BootcHost, error)
- func (m *MockBootc) Switch(ctx context.Context, image string) error
- func (m *MockBootc) UsrOverlay(ctx context.Context) error
- type MockBootcMockRecorder
- type MockEnrollment
- func (m *MockEnrollment) CreateEnrollmentRequest(ctx context.Context, req v1alpha1.EnrollmentRequest, ...) (*v1alpha1.EnrollmentRequest, error)
- func (m *MockEnrollment) EXPECT() *MockEnrollmentMockRecorder
- func (m *MockEnrollment) GetEnrollmentRequest(ctx context.Context, id string, cb ...client.RequestEditorFn) (*v1alpha1.EnrollmentRequest, error)
- func (m *MockEnrollment) SetRPCMetricsCallback(cb func(string, float64, error))
- type MockEnrollmentMockRecorder
- type MockManagement
- func (m *MockManagement) EXPECT() *MockManagementMockRecorder
- func (m *MockManagement) GetRenderedDevice(ctx context.Context, name string, params *v1alpha1.GetRenderedDeviceParams, ...) (*v1alpha1.Device, int, error)
- func (m *MockManagement) PatchDeviceStatus(ctx context.Context, name string, patch v1alpha1.PatchRequest, ...) error
- func (m *MockManagement) UpdateDeviceStatus(ctx context.Context, name string, device v1alpha1.Device, ...) error
- type MockManagementMockRecorder
- func (mr *MockManagementMockRecorder) GetRenderedDevice(ctx, name, params any, rcb ...any) *gomock.Call
- func (mr *MockManagementMockRecorder) PatchDeviceStatus(ctx, name, patch any, rcb ...any) *gomock.Call
- func (mr *MockManagementMockRecorder) UpdateDeviceStatus(ctx, name, device any, rcb ...any) *gomock.Call
- type Podman
- func (p *Podman) Compose() *Compose
- func (p *Podman) Copy(ctx context.Context, src, dst string) error
- func (p *Podman) CopyContainerData(ctx context.Context, image, destPath string) error
- func (p *Podman) CreateVolume(ctx context.Context, name string, labels []string) (string, error)
- func (p *Podman) EventsSinceCmd(ctx context.Context, events []string, sinceTime string) *exec.Cmd
- func (p *Podman) ExtractArtifact(ctx context.Context, artifact, destination string) (string, error)
- func (p *Podman) ImageExists(ctx context.Context, image string) bool
- func (p *Podman) Inspect(ctx context.Context, image string) (string, error)
- func (p *Podman) InspectLabels(ctx context.Context, image string) (map[string]string, error)
- func (p *Podman) InspectVolumeMount(ctx context.Context, name string) (string, error)
- func (p *Podman) ListNetworks(ctx context.Context, labels []string) ([]string, error)
- func (p *Podman) Mount(ctx context.Context, image string) (string, error)
- func (p *Podman) Pull(ctx context.Context, image string, opts ...ClientOption) (string, error)
- func (p *Podman) PullArtifact(ctx context.Context, artifact string, opts ...ClientOption) (string, error)
- func (p *Podman) RemoveContainer(ctx context.Context, labels []string) error
- func (p *Podman) RemoveNetworks(ctx context.Context, networks ...string) error
- func (p *Podman) RemoveVolumes(ctx context.Context, volumes ...string) error
- func (p *Podman) StopContainers(ctx context.Context, labels []string) error
- func (p *Podman) Unmount(ctx context.Context, image string) error
- func (p *Podman) Unshare(ctx context.Context, args ...string) (string, error)
- func (p *Podman) Version(ctx context.Context) (*PodmanVersion, error)
- func (p *Podman) VolumeExists(ctx context.Context, name string) bool
- type PodmanContainerConfig
- type PodmanContainerState
- type PodmanEvent
- type PodmanInspect
- type PodmanVersion
- type RPMOSTree
- func (c *RPMOSTree) Apply(ctx context.Context) error
- func (c *RPMOSTree) RemoveRollback(_ context.Context) error
- func (c *RPMOSTree) RemoveStaged(_ context.Context) error
- func (c *RPMOSTree) Status(_ context.Context) (*container.BootcHost, error)
- func (c *RPMOSTree) Switch(_ context.Context, target string) error
- type Systemd
- func (s *Systemd) DaemonReload(ctx context.Context) error
- func (s *Systemd) Disable(ctx context.Context, name string) error
- func (s *Systemd) Enable(ctx context.Context, name string) error
- func (s *Systemd) ListUnitsByMatchPattern(ctx context.Context, matchPatterns []string) (string, error)
- func (s *Systemd) Reboot(ctx context.Context) error
- func (s *Systemd) Reload(ctx context.Context, name string) error
- func (s *Systemd) Restart(ctx context.Context, name string) error
- func (s *Systemd) Start(ctx context.Context, name string) error
- func (s *Systemd) Stop(ctx context.Context, name string) error
Constants ¶
const (
BootcCmd = "bootc"
)
const (
ComposeOverrideFilename = "99-compose-flightctl-agent.override.yaml"
)
Variables ¶
var ( BaseComposeFiles = []string{ "docker-compose.yaml", "docker-compose.yml", "podman-compose.yaml", "podman-compose.yml", } OverrideComposeFiles = []string{ "docker-compose.override.yaml", "docker-compose.override.yml", "podman-compose.override.yaml", "podman-compose.override.yml", } )
var (
ErrEmptyResponse = errors.New("empty response")
)
Functions ¶
func IsCommandAvailable ¶ added in v0.3.0
IsCommandAvailable checks if a command is available in the PATH.
func IsComposeAvailable ¶ added in v0.3.0
func IsComposeAvailable() bool
func IsPodmanRootless ¶ added in v0.3.0
func IsPodmanRootless() bool
func NewFromConfig ¶
func NewFromConfig(config *baseclient.Config) (*client.ClientWithResponses, error)
NewFromConfig returns a new Flight Control API client from the given config.
func NewGRPCClientFromConfig ¶
func NewGRPCClientFromConfig(config *baseclient.Config) (grpc_v1.RouterServiceClient, error)
func ParseComposeSpecFromDir ¶ added in v0.4.0
ParseComposeSpecFromDir reads a compose spec from the given directory and will perform a merge of the base {docker,podman}-compose.yaml and -override.yaml files.
func SanitizePodmanLabel ¶ added in v0.4.0
SanitizePodmanLabel sanitizes a string to be used as a label in Podman. Podman labels must be lowercase and can only contain alpha numeric characters, hyphens, and underscores. Any other characters are replaced with an underscore.
Types ¶
type Bootc ¶ added in v0.4.0
type Bootc interface {
// Status returns the current bootc status.
Status(ctx context.Context) (*container.BootcHost, error)
// Switch targets a new container image reference to boot.
Switch(ctx context.Context, image string) error
// UsrOverlay adds a transient writable overlayfs on `/usr` that will be discarded on reboot.
UsrOverlay(ctx context.Context) error
// Apply restart or reboot into the new target image.
Apply(ctx context.Context) error
}
type ClientOption ¶ added in v0.4.0
type ClientOption func(*clientOptions)
ClientOption is a functional option for configuring the client.
func WithPullSecret ¶ added in v0.5.0
func WithPullSecret(path string) ClientOption
WithPullSecret sets the path to the pull secret. If unset uses the default path for the runtime.
func WithRetry ¶ added in v0.4.0
func WithRetry() ClientOption
WithRetry enables enables retry based on the backoff config provided.
type Compose ¶ added in v0.3.0
type Compose struct {
*Podman
}
func (*Compose) UpFromWorkDir ¶ added in v0.3.0
func (p *Compose) UpFromWorkDir(ctx context.Context, workDir, projectName string, noRecreate bool) error
UpFromWorkDir runs `podman compose up -d` from the given workDir using Compose file layering.
It searches for Compose files in the following order:
- One base file (required), chosen from BaseComposeFiles.
- One standard override file (optional), chosen from OverrideComposeFiles.
- An optional flightctl override file (ComposeOverrideFilename) if present.
The method builds the final compose command by layering the discovered files in order. The noRecreate flag, if true, adds `--no-recreate` to prevent recreating existing containers.
type Enrollment ¶
type Enrollment interface {
SetRPCMetricsCallback(cb func(operation string, durationSeconds float64, err error))
CreateEnrollmentRequest(ctx context.Context, req v1alpha1.EnrollmentRequest, cb ...client.RequestEditorFn) (*v1alpha1.EnrollmentRequest, error)
GetEnrollmentRequest(ctx context.Context, id string, cb ...client.RequestEditorFn) (*v1alpha1.EnrollmentRequest, error)
}
Enrollment is client the interface for managing device enrollment.
func NewEnrollment ¶
func NewEnrollment( client *client.ClientWithResponses, ) Enrollment
type Management ¶
type Management interface {
UpdateDeviceStatus(ctx context.Context, name string, device v1alpha1.Device, rcb ...client.RequestEditorFn) error
GetRenderedDevice(ctx context.Context, name string, params *v1alpha1.GetRenderedDeviceParams, rcb ...client.RequestEditorFn) (*v1alpha1.Device, int, error)
PatchDeviceStatus(ctx context.Context, name string, patch v1alpha1.PatchRequest, rcb ...client.RequestEditorFn) error
}
Management is the client interface for managing devices.
func NewManagement ¶
func NewManagement( client *client.ClientWithResponses, ) Management
type MockBootc ¶ added in v0.4.0
type MockBootc struct {
// contains filtered or unexported fields
}
MockBootc is a mock of Bootc interface.
func NewMockBootc ¶ added in v0.4.0
func NewMockBootc(ctrl *gomock.Controller) *MockBootc
NewMockBootc creates a new mock instance.
func (*MockBootc) EXPECT ¶ added in v0.4.0
func (m *MockBootc) EXPECT() *MockBootcMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockBootcMockRecorder ¶ added in v0.4.0
type MockBootcMockRecorder struct {
// contains filtered or unexported fields
}
MockBootcMockRecorder is the mock recorder for MockBootc.
func (*MockBootcMockRecorder) Apply ¶ added in v0.4.0
func (mr *MockBootcMockRecorder) Apply(ctx any) *gomock.Call
Apply indicates an expected call of Apply.
func (*MockBootcMockRecorder) Status ¶ added in v0.4.0
func (mr *MockBootcMockRecorder) Status(ctx any) *gomock.Call
Status indicates an expected call of Status.
func (*MockBootcMockRecorder) Switch ¶ added in v0.4.0
func (mr *MockBootcMockRecorder) Switch(ctx, image any) *gomock.Call
Switch indicates an expected call of Switch.
func (*MockBootcMockRecorder) UsrOverlay ¶ added in v0.4.0
func (mr *MockBootcMockRecorder) UsrOverlay(ctx any) *gomock.Call
UsrOverlay indicates an expected call of UsrOverlay.
type MockEnrollment ¶
type MockEnrollment struct {
// contains filtered or unexported fields
}
MockEnrollment is a mock of Enrollment interface.
func NewMockEnrollment ¶
func NewMockEnrollment(ctrl *gomock.Controller) *MockEnrollment
NewMockEnrollment creates a new mock instance.
func (*MockEnrollment) CreateEnrollmentRequest ¶
func (m *MockEnrollment) CreateEnrollmentRequest(ctx context.Context, req v1alpha1.EnrollmentRequest, cb ...client.RequestEditorFn) (*v1alpha1.EnrollmentRequest, error)
CreateEnrollmentRequest mocks base method.
func (*MockEnrollment) EXPECT ¶
func (m *MockEnrollment) EXPECT() *MockEnrollmentMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockEnrollment) GetEnrollmentRequest ¶
func (m *MockEnrollment) GetEnrollmentRequest(ctx context.Context, id string, cb ...client.RequestEditorFn) (*v1alpha1.EnrollmentRequest, error)
GetEnrollmentRequest mocks base method.
func (*MockEnrollment) SetRPCMetricsCallback ¶
func (m *MockEnrollment) SetRPCMetricsCallback(cb func(string, float64, error))
SetRPCMetricsCallback mocks base method.
type MockEnrollmentMockRecorder ¶
type MockEnrollmentMockRecorder struct {
// contains filtered or unexported fields
}
MockEnrollmentMockRecorder is the mock recorder for MockEnrollment.
func (*MockEnrollmentMockRecorder) CreateEnrollmentRequest ¶
func (mr *MockEnrollmentMockRecorder) CreateEnrollmentRequest(ctx, req any, cb ...any) *gomock.Call
CreateEnrollmentRequest indicates an expected call of CreateEnrollmentRequest.
func (*MockEnrollmentMockRecorder) GetEnrollmentRequest ¶
func (mr *MockEnrollmentMockRecorder) GetEnrollmentRequest(ctx, id any, cb ...any) *gomock.Call
GetEnrollmentRequest indicates an expected call of GetEnrollmentRequest.
func (*MockEnrollmentMockRecorder) SetRPCMetricsCallback ¶
func (mr *MockEnrollmentMockRecorder) SetRPCMetricsCallback(cb any) *gomock.Call
SetRPCMetricsCallback indicates an expected call of SetRPCMetricsCallback.
type MockManagement ¶
type MockManagement struct {
// contains filtered or unexported fields
}
MockManagement is a mock of Management interface.
func NewMockManagement ¶
func NewMockManagement(ctrl *gomock.Controller) *MockManagement
NewMockManagement creates a new mock instance.
func (*MockManagement) EXPECT ¶
func (m *MockManagement) EXPECT() *MockManagementMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockManagement) GetRenderedDevice ¶ added in v0.5.0
func (m *MockManagement) GetRenderedDevice(ctx context.Context, name string, params *v1alpha1.GetRenderedDeviceParams, rcb ...client.RequestEditorFn) (*v1alpha1.Device, int, error)
GetRenderedDevice mocks base method.
func (*MockManagement) PatchDeviceStatus ¶ added in v0.6.0
func (m *MockManagement) PatchDeviceStatus(ctx context.Context, name string, patch v1alpha1.PatchRequest, rcb ...client.RequestEditorFn) error
PatchDeviceStatus mocks base method.
func (*MockManagement) UpdateDeviceStatus ¶
func (m *MockManagement) UpdateDeviceStatus(ctx context.Context, name string, device v1alpha1.Device, rcb ...client.RequestEditorFn) error
UpdateDeviceStatus mocks base method.
type MockManagementMockRecorder ¶
type MockManagementMockRecorder struct {
// contains filtered or unexported fields
}
MockManagementMockRecorder is the mock recorder for MockManagement.
func (*MockManagementMockRecorder) GetRenderedDevice ¶ added in v0.5.0
func (mr *MockManagementMockRecorder) GetRenderedDevice(ctx, name, params any, rcb ...any) *gomock.Call
GetRenderedDevice indicates an expected call of GetRenderedDevice.
func (*MockManagementMockRecorder) PatchDeviceStatus ¶ added in v0.6.0
func (mr *MockManagementMockRecorder) PatchDeviceStatus(ctx, name, patch any, rcb ...any) *gomock.Call
PatchDeviceStatus indicates an expected call of PatchDeviceStatus.
func (*MockManagementMockRecorder) UpdateDeviceStatus ¶
func (mr *MockManagementMockRecorder) UpdateDeviceStatus(ctx, name, device any, rcb ...any) *gomock.Call
UpdateDeviceStatus indicates an expected call of UpdateDeviceStatus.
type Podman ¶ added in v0.3.0
type Podman struct {
// contains filtered or unexported fields
}
func NewPodman ¶ added in v0.3.0
func NewPodman(log *log.PrefixLogger, exec executer.Executer, readWriter fileio.ReadWriter, backoff wait.Backoff) *Podman
func (*Podman) CopyContainerData ¶ added in v0.6.0
func (*Podman) CreateVolume ¶ added in v0.8.1
func (*Podman) EventsSinceCmd ¶ added in v0.3.0
EventsSinceCmd returns a command to get podman events since the given time. After creating the command, it should be started with exec.Start(). When the events are in sync with the current time a sync event is emitted.
func (*Podman) ExtractArtifact ¶ added in v0.8.1
func (*Podman) ImageExists ¶ added in v0.3.0
func (*Podman) Inspect ¶ added in v0.3.0
Inspect returns the JSON output of the image inspection. The expectation is that the image exists in local container storage.
func (*Podman) InspectLabels ¶ added in v0.3.0
func (*Podman) InspectVolumeMount ¶ added in v0.8.1
func (*Podman) ListNetworks ¶ added in v0.3.0
func (*Podman) Pull ¶ added in v0.3.0
Pull pulls an image from the registry with optional retry and authentication via a pull secret. Logs progress periodically while the operation is in progress.
func (*Podman) PullArtifact ¶ added in v0.8.1
func (p *Podman) PullArtifact(ctx context.Context, artifact string, opts ...ClientOption) (string, error)
PullArtifact pulls an artifact from the registry with optional retry and authentication via a pull secret. Logs progress periodically while the operation is in progress.
func (*Podman) RemoveContainer ¶ added in v0.3.0
func (*Podman) RemoveNetworks ¶ added in v0.3.0
func (*Podman) RemoveVolumes ¶ added in v0.3.0
func (*Podman) StopContainers ¶ added in v0.3.0
type PodmanContainerConfig ¶ added in v0.6.0
type PodmanContainerState ¶ added in v0.6.0
type PodmanContainerState struct {
OciVersion string `json:"OciVersion"`
Status string `json:"Status"`
Running bool `json:"Running"`
Paused bool `json:"Paused"`
Restarting bool `json:"Restarting"`
OOMKilled bool `json:"OOMKilled"`
Dead bool `json:"Dead"`
Pid int `json:"Pid"`
ExitCode int `json:"ExitCode"`
Error string `json:"Error"`
StartedAt string `json:"StartedAt"`
FinishedAt string `json:"FinishedAt"`
Healthcheck string `json:"Healthcheck"`
}
ContainerState represents the container state part of the podman inspect output
type PodmanEvent ¶ added in v0.6.0
type PodmanInspect ¶ added in v0.6.0
type PodmanInspect struct {
Restarts int `json:"RestartCount"`
State PodmanContainerState `json:"State"`
Config PodmanContainerConfig `json:"Config"`
}
PodmanInspect represents the overall structure of podman inspect output
type PodmanVersion ¶ added in v0.8.1
func (PodmanVersion) GreaterOrEqual ¶ added in v0.8.1
func (v PodmanVersion) GreaterOrEqual(major, minor int) bool
type RPMOSTree ¶ added in v0.4.0
type RPMOSTree struct {
// contains filtered or unexported fields
}
func NewRPMOSTree ¶ added in v0.4.0
NewRPMOSTree creates a new rpm-ostree client.
func (*RPMOSTree) RemoveRollback ¶ added in v0.4.0
func (*RPMOSTree) RemoveStaged ¶ added in v0.4.0
type Systemd ¶
type Systemd struct {
// contains filtered or unexported fields
}