generator

package
v0.1442.0 Latest Latest
Warning

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

Go to latest
Published: Feb 27, 2024 License: Apache-2.0 Imports: 11 Imported by: 3

Documentation

Overview

generator creates operations for container processing

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ContainerOperation

type ContainerOperation struct {
	Guid string
	// contains filtered or unexported fields
}

ContainerOperation acquires the current state of a container and performs any bbs or container operations necessary to harmonize the state of the world.

func NewContainerOperation

func NewContainerOperation(
	logger lager.Logger,
	traceID string,
	lrpProcessor internal.LRPProcessor,
	taskProcessor internal.TaskProcessor,
	containerDelegate internal.ContainerDelegate,
	guid string,
) *ContainerOperation

func (*ContainerOperation) Execute

func (o *ContainerOperation) Execute()

func (*ContainerOperation) Key

func (o *ContainerOperation) Key() string

type Generator

type Generator interface {
	// BatchOperations creates a set of operations across all containers the Rep is managing.
	BatchOperations(lager.Logger) (map[string]operationq.Operation, error)

	// OperationStream creates an operation every time a container lifecycle event is observed.
	OperationStream(lager.Logger) (<-chan operationq.Operation, error)
}

Generator encapsulates operation creation in the Rep.

func New

func New(
	cellID string,
	availabilityZone string,
	stackPathMap rep.StackPathMap,
	layeringMode string,
	bbs bbs.InternalClient,
	executorClient executor.Client,
	metronClient loggingclient.IngressClient,
	evacuationReporter evacuation_context.EvacuationReporter,
) Generator

type ResidualEvacuatingLRPOperation

type ResidualEvacuatingLRPOperation struct {
	models.ActualLRPKey
	models.ActualLRPInstanceKey
	// contains filtered or unexported fields
}

ResidualEvacuatingLRPOperation processes an evacuating ActualLRP with no matching container.

func NewResidualEvacuatingLRPOperation

func NewResidualEvacuatingLRPOperation(logger lager.Logger,
	traceID string,
	bbsClient bbs.InternalClient,
	containerDelegate internal.ContainerDelegate,
	lrpKey models.ActualLRPKey,
	instanceKey models.ActualLRPInstanceKey,
) *ResidualEvacuatingLRPOperation

func (*ResidualEvacuatingLRPOperation) Execute

func (o *ResidualEvacuatingLRPOperation) Execute()

func (*ResidualEvacuatingLRPOperation) Key

type ResidualInstanceLRPOperation

type ResidualInstanceLRPOperation struct {
	models.ActualLRPKey
	models.ActualLRPInstanceKey
	// contains filtered or unexported fields
}

ResidualInstanceLRPOperation processes an instance ActualLRP with no matching container.

func NewResidualInstanceLRPOperation

func NewResidualInstanceLRPOperation(logger lager.Logger,
	traceID string,
	bbsClient bbs.InternalClient,
	containerDelegate internal.ContainerDelegate,
	lrpKey models.ActualLRPKey,
	instanceKey models.ActualLRPInstanceKey,
) *ResidualInstanceLRPOperation

func (*ResidualInstanceLRPOperation) Execute

func (o *ResidualInstanceLRPOperation) Execute()

func (*ResidualInstanceLRPOperation) Key

type ResidualJointLRPOperation

type ResidualJointLRPOperation struct {
	models.ActualLRPKey
	models.ActualLRPInstanceKey
	// contains filtered or unexported fields
}

ResidualJointLRPOperation processes an evacuating ActualLRP with no matching container.

func NewResidualJointLRPOperation

func NewResidualJointLRPOperation(logger lager.Logger,
	traceID string,
	bbsClient bbs.InternalClient,
	containerDelegate internal.ContainerDelegate,
	lrpKey models.ActualLRPKey,
	instanceKey models.ActualLRPInstanceKey,
) *ResidualJointLRPOperation

func (*ResidualJointLRPOperation) Execute

func (o *ResidualJointLRPOperation) Execute()

func (*ResidualJointLRPOperation) Key

type ResidualTaskOperation

type ResidualTaskOperation struct {
	TaskGuid string
	CellId   string
	// contains filtered or unexported fields
}

ResidualTaskOperation processes a Task with no matching container.

func NewResidualTaskOperation

func NewResidualTaskOperation(
	logger lager.Logger,
	traceID string,
	taskGuid string,
	cellId string,
	bbsClient bbs.InternalClient,
	containerDelegate internal.ContainerDelegate,
) *ResidualTaskOperation

func (*ResidualTaskOperation) Execute

func (o *ResidualTaskOperation) Execute()

func (*ResidualTaskOperation) Key

func (o *ResidualTaskOperation) Key() string

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.
fake_internal
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

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