schedulecontroller

package
v0.2.0-alpha.1 Latest Latest
Warning

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

Go to latest
Published: May 15, 2019 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const (
	AgentName = "schedule-controller"
)

Variables

This section is empty.

Functions

func NewNotEnoughCapableClustersInRegionError

func NewNotEnoughCapableClustersInRegionError(region string, capabilities []string, required, available int) error

Types

type BrokenChartError

type BrokenChartError struct {
	ChartError
	// contains filtered or unexported fields
}

func NewBrokenChartError

func NewBrokenChartError(chartName, chartVersion, chartRepo string, err error) BrokenChartError

func (BrokenChartError) Error

func (e BrokenChartError) Error() string

type ChartError

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

type ChartFetchFailureError

type ChartFetchFailureError struct {
	ChartError
	// contains filtered or unexported fields
}

func NewChartFetchFailureError

func NewChartFetchFailureError(chartName, chartVersion, chartRepo string, err error) ChartFetchFailureError

func (ChartFetchFailureError) Error

func (e ChartFetchFailureError) Error() string

type Controller

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

Controller is a Kubernetes controller that knows how to schedule Releases.

func NewController

func NewController(
	shipperclientset shipperclient.Interface,
	shipperInformerFactory shipperinformers.SharedInformerFactory,
	chartFetchFunc chart.FetchFunc,
	recorder record.EventRecorder,
) *Controller

NewController returns a new Schedule controller.

func (*Controller) Run

func (c *Controller) Run(threadiness int, stopCh <-chan struct{})

type DuplicateCapabilityRequirementError

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

func NewDuplicateCapabilityRequirementError

func NewDuplicateCapabilityRequirementError(capability string) DuplicateCapabilityRequirementError

func (DuplicateCapabilityRequirementError) Error

type FailedAPICallError

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

func NewFailedAPICallError

func NewFailedAPICallError(call string, err error) FailedAPICallError

func (FailedAPICallError) Error

func (e FailedAPICallError) Error() string

type InvalidReleaseOwnerRefsError

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

func NewInvalidReleaseOwnerRefsError

func NewInvalidReleaseOwnerRefsError(count int) InvalidReleaseOwnerRefsError

func (InvalidReleaseOwnerRefsError) Error

type NoRegionsSpecifiedError

type NoRegionsSpecifiedError struct{}

func NewNoRegionsSpecifiedError

func NewNoRegionsSpecifiedError() NoRegionsSpecifiedError

func (NoRegionsSpecifiedError) Error

func (e NoRegionsSpecifiedError) Error() string

type NotEnoughCapableClustersInRegionError

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

func (NotEnoughCapableClustersInRegionError) Error

type NotEnoughClustersInRegionError

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

func NewNotEnoughClustersInRegionError

func NewNotEnoughClustersInRegionError(region string, required, available int) NotEnoughClustersInRegionError

func (NotEnoughClustersInRegionError) Error

type Scheduler

type Scheduler struct {
	Release *shipper.Release
	// contains filtered or unexported fields
}

Scheduler is an object that knows how to schedule releases.

func NewScheduler

func NewScheduler(
	release *shipper.Release,
	shipperclientset clientset.Interface,
	clusterLister listers.ClusterLister,
	installationTargetLister listers.InstallationTargetLister,
	capacityTargetLister listers.CapacityTargetLister,
	trafficTargetLister listers.TrafficTargetLister,
	chartFetchFunc shipperchart.FetchFunc,
	recorder record.EventRecorder,
) *Scheduler

NewScheduler returns a new Scheduler instance that knows how to schedule a particular Release.

func (*Scheduler) Clusters

func (c *Scheduler) Clusters() []string

func (*Scheduler) CreateCapacityTarget

func (c *Scheduler) CreateCapacityTarget(totalReplicaCount int32) error

CreateCapacityTarget creates a new CapacityTarget object for Scheduler's Release property. Returns an error if the object couldn't be created.

func (*Scheduler) CreateInstallationTarget

func (c *Scheduler) CreateInstallationTarget() error

CreateInstallationTarget creates a new InstallationTarget object for Scheduler's Release property. Returns an error if the object couldn't be created.

func (*Scheduler) CreateTrafficTarget

func (c *Scheduler) CreateTrafficTarget() error

CreateTrafficTarget creates a new TrafficTarget object for Scheduler's Release property. Returns an error if the object couldn't be created.

func (*Scheduler) HasClusters

func (c *Scheduler) HasClusters() bool

func (*Scheduler) SetClusters

func (c *Scheduler) SetClusters(clusters []string)

func (*Scheduler) UpdateRelease

func (c *Scheduler) UpdateRelease() (*shipper.Release, error)

type WrongChartDeploymentsError

type WrongChartDeploymentsError struct {
	ChartError
	// contains filtered or unexported fields
}

func NewWrongChartDeploymentsError

func NewWrongChartDeploymentsError(chartName, chartVersion, chartRepo string, deploymentCount int) WrongChartDeploymentsError

func (WrongChartDeploymentsError) Error

Jump to

Keyboard shortcuts

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