state

package
v1.4.12 Latest Latest
Warning

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

Go to latest
Published: Jul 21, 2023 License: MPL-2.0 Imports: 3 Imported by: 58

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AllocVolumes added in v1.4.11

type AllocVolumes struct {
	CSIVolumes map[string]*CSIVolumeStub // volume request name -> CSIVolumeStub
}

type CSIVolumeStub added in v1.4.11

type CSIVolumeStub struct {
	VolumeID         string
	VolumeExternalID string
	PluginID         string
	ExternalNodeID   string
	MountInfo        *csimanager.MountInfo
}

CSIVolumeStub is a stripped-down version of the CSIVolume with just the relevant data that we need to persist about the volume.

type State

type State struct {
	// ClientStatus captures the overall state of the allocation
	ClientStatus string

	// ClientDescription is an optional human readable description of the
	// allocations client state
	ClientDescription string

	// DeploymentStatus captures the status of the deployment
	DeploymentStatus *structs.AllocDeploymentStatus

	// TaskStates is a snapshot of task states.
	TaskStates map[string]*structs.TaskState

	// NetworkStatus captures network details not known until runtime
	NetworkStatus *structs.AllocNetworkStatus
}

State captures the state of the allocation runner.

func (*State) ClearDeploymentStatus

func (s *State) ClearDeploymentStatus()

ClearDeploymentStatus is a helper to clear the client-controlled DeploymentStatus fields: Healthy and Timestamp. The Canary and ModifyIndex fields should only be updated by the server.

func (*State) ClientTerminalStatus added in v0.9.2

func (s *State) ClientTerminalStatus() bool

ClientTerminalStatus returns if the client status is terminal and will no longer transition

func (*State) Copy

func (s *State) Copy() *State

Copy returns a deep copy of State.

func (*State) SetDeploymentStatus

func (s *State) SetDeploymentStatus(timestamp time.Time, healthy bool)

SetDeploymentStatus is a helper for updating the client-controlled DeploymentStatus fields: Healthy and Timestamp. The Canary and ModifyIndex fields should only be updated by the server.

Jump to

Keyboard shortcuts

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