machine

package
v0.3.11 Latest Latest
Warning

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

Go to latest
Published: Sep 28, 2024 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AcquireAllLeases added in v0.0.434

func AcquireAllLeases(ctx context.Context) ([]*fly.Machine, releaseLeaseFunc, error)

AcquireAllLeases works to acquire/attach a lease for each active machine.

func AcquireLease

func AcquireLease(ctx context.Context, machine *fly.Machine) (*fly.Machine, releaseLeaseFunc, error)

AcquireLease works to acquire/attach a lease for the specified machine. WARNING: Make sure you defer the lease release process.

func AcquireLeases

func AcquireLeases(ctx context.Context, machines []*fly.Machine) ([]*fly.Machine, releaseLeaseFunc, error)

AcquireLeases works to acquire/attach a lease for each machine specified.

func CloneConfig added in v0.0.434

func CloneConfig(orig *fly.MachineConfig) *fly.MachineConfig

CloneConfig deep-copies a MachineConfig. If CloneConfig is called on a nil config, nil is returned.

func ConfirmConfigChanges added in v0.0.434

func ConfirmConfigChanges(ctx context.Context, machine *fly.Machine, targetConfig fly.MachineConfig, customPrompt string) (bool, error)

func LaunchEphemeral added in v0.1.73

func LaunchEphemeral(ctx context.Context, input *EphemeralInput) (*fly.Machine, func(), error)

func ListActive

func ListActive(ctx context.Context) ([]*fly.Machine, error)

func NewMachineSet added in v0.0.452

func NewMachineSet(flapsClient flapsutil.FlapsClient, io *iostreams.IOStreams, machines []*fly.Machine, showLogs bool) *machineSet

func Restart

func Restart(ctx context.Context, m *fly.Machine, input *fly.RestartMachineInput, nonce string) error

func Update added in v0.0.434

func Update(ctx context.Context, m *fly.Machine, input *fly.LaunchMachineInput) error

func WaitForStartOrStop

func WaitForStartOrStop(ctx context.Context, machine *fly.Machine, action string, timeout time.Duration) error

Types

type EphemeralInput added in v0.1.73

type EphemeralInput struct {
	LaunchInput fly.LaunchMachineInput
	What        string
}

type ErrNoConfigChangesFound added in v0.0.434

type ErrNoConfigChangesFound struct{}

func (*ErrNoConfigChangesFound) Error added in v0.0.434

func (e *ErrNoConfigChangesFound) Error() string

type InvalidConfigErr added in v0.1.79

type InvalidConfigErr struct {
	Reason invalidConfigReason
	// contains filtered or unexported fields
}

func (InvalidConfigErr) Description added in v0.1.79

func (e InvalidConfigErr) Description() string

func (InvalidConfigErr) DocURL added in v0.1.79

func (e InvalidConfigErr) DocURL() string

func (InvalidConfigErr) Error added in v0.1.79

func (e InvalidConfigErr) Error() string

func (InvalidConfigErr) Suggestion added in v0.1.79

func (e InvalidConfigErr) Suggestion() string

type LeasableMachine added in v0.0.452

type LeasableMachine interface {
	Machine() *fly.Machine
	HasLease() bool
	AcquireLease(context.Context, time.Duration) error
	RefreshLease(context.Context, time.Duration) error
	ReleaseLease(context.Context) error
	StartBackgroundLeaseRefresh(context.Context, time.Duration, time.Duration)
	Update(context.Context, fly.LaunchMachineInput) error
	Start(context.Context) error
	Stop(context.Context, string) error
	Destroy(context.Context, bool) error
	Cordon(context.Context) error
	WaitForState(context.Context, string, time.Duration, bool) error
	WaitForSmokeChecksToPass(context.Context) error
	WaitForHealthchecksToPass(context.Context, time.Duration) error
	WaitForEventType(context.Context, string, time.Duration, bool) (*fly.MachineEvent, error)
	WaitForEventTypeAfterType(context.Context, string, string, time.Duration, bool) (*fly.MachineEvent, error)
	FormattedMachineId() string
	GetMinIntervalAndMinGracePeriod() (time.Duration, time.Duration)
	SetMetadata(ctx context.Context, k, v string) error
	GetMetadata(ctx context.Context) (map[string]string, error)
}

func NewLeasableMachine added in v0.0.452

func NewLeasableMachine(flapsClient flapsutil.FlapsClient, io *iostreams.IOStreams, machine *fly.Machine, showLogs bool) LeasableMachine

TODO: make sure the other functions handle showLogs correctly

type MachineSet added in v0.0.452

type MachineSet interface {
	AcquireLeases(context.Context, time.Duration) error
	ReleaseLeases(context.Context) error
	RemoveMachines(ctx context.Context, machines []LeasableMachine) error
	StartBackgroundLeaseRefresh(context.Context, time.Duration, time.Duration)
	IsEmpty() bool
	GetMachines() []LeasableMachine
	WaitForMachineSetState(context.Context, string, time.Duration, bool, bool) ([]string, error)
}

type WaitTimeoutErr added in v0.1.82

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

func (WaitTimeoutErr) Description added in v0.1.82

func (e WaitTimeoutErr) Description() string

func (WaitTimeoutErr) DesiredState added in v0.1.131

func (e WaitTimeoutErr) DesiredState() string

func (WaitTimeoutErr) Error added in v0.1.82

func (e WaitTimeoutErr) Error() string

Jump to

Keyboard shortcuts

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