Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetExperimentFromTemplate ¶ added in v0.6.0
func GetExperimentFromTemplate(r *v1alpha1.Rollout, stableRS, newRS *appsv1.ReplicaSet) (*v1alpha1.Experiment, error)
GetExperimentFromTemplate takes the canary experiment step and converts it to an experiment
Types ¶
type RolloutController ¶
type RolloutController struct {
// contains filtered or unexported fields
}
RolloutController is the controller implementation for Rollout resources
func NewRolloutController ¶
func NewRolloutController( namespace string, kubeclientset kubernetes.Interface, argoprojclientset clientset.Interface, dynamicclientset dynamic.Interface, experimentInformer informers.ExperimentInformer, analysisRunInformer informers.AnalysisRunInformer, analysisTemplateInformer informers.AnalysisTemplateInformer, replicaSetInformer appsinformers.ReplicaSetInformer, servicesInformer coreinformers.ServiceInformer, ingressesInformer extensionsinformers.IngressInformer, rolloutsInformer informers.RolloutInformer, resyncPeriod time.Duration, rolloutWorkQueue workqueue.RateLimitingInterface, serviceWorkQueue workqueue.RateLimitingInterface, ingressWorkQueue workqueue.RateLimitingInterface, metricsServer *metrics.MetricsServer, recorder record.EventRecorder, defaultIstioVersion string) *RolloutController
NewRolloutController returns a new rollout controller
func (*RolloutController) NewTrafficRoutingReconciler ¶ added in v0.7.0
func (c *RolloutController) NewTrafficRoutingReconciler(roCtx rolloutContext) TrafficRoutingReconciler
NewTrafficRoutingReconciler identifies return the TrafficRouting Plugin that the rollout wants to modify
func (*RolloutController) Run ¶
func (c *RolloutController) Run(threadiness int, stopCh <-chan struct{}) error
Run will set up the event handlers for types we are interested in, as well as syncing informer caches and starting workers. It will block until stopCh is closed, at which point it will shutdown the workqueue and wait for workers to finish processing their current work items.
type RolloutPodRestarter ¶ added in v0.8.0
type RolloutPodRestarter struct {
// contains filtered or unexported fields
}
RolloutPodRestarter describes the components needed for the controller to restart all the pods of a rollout.
func (*RolloutPodRestarter) Reconcile ¶ added in v0.8.0
func (p *RolloutPodRestarter) Reconcile(roCtx rolloutContext) error
type SortReplicaSetsByPriority ¶ added in v0.8.0
type SortReplicaSetsByPriority struct {
// contains filtered or unexported fields
}
SortReplicaSetsByPriority sorts the ReplicaSets with the following Priority: 1. Stable RS 2. New RS 3. Older ReplicaSets
func NewSortReplicaSetsByPriority ¶ added in v0.8.0
func NewSortReplicaSetsByPriority(roCtx rolloutContext) SortReplicaSetsByPriority
func (SortReplicaSetsByPriority) Len ¶ added in v0.8.0
func (s SortReplicaSetsByPriority) Len() int
func (SortReplicaSetsByPriority) Less ¶ added in v0.8.0
func (s SortReplicaSetsByPriority) Less(i, j int) bool
func (SortReplicaSetsByPriority) Swap ¶ added in v0.8.0
func (s SortReplicaSetsByPriority) Swap(i, j int)
type TrafficRoutingReconciler ¶ added in v0.7.0
TrafficRoutingReconciler common function across all TrafficRouting implementation