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,
      	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,
        	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,
          	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,
            	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,
              	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,
                	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.