v1alpha1

package
v0.0.0-...-4dac789 Latest Latest
Warning

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

Go to latest
Published: Oct 21, 2021 License: MIT Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the deployment v1alpha1 API group +kubebuilder:object:generate=true +groupName=deployment.skyscanner.net

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "deployment.skyscanner.net", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type Cluster

type Cluster struct {
	//Selector is a label selector to get the clusters for the update
	Selector metav1.LabelSelector `json:"selector"`
	//TopologyKey is a string to group the clusters by a topology domain.
	TopologyKey string `json:"topologyKey,omitempty"`
}

Cluster defines how to select target clusters

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.

func (*Cluster) DeepCopyInto

func (in *Cluster) DeepCopyInto(out *Cluster)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProgressiveRollout

type ProgressiveRollout struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ProgressiveRolloutSpec   `json:"spec,omitempty"`
	Status ProgressiveRolloutStatus `json:"status,omitempty"`
}

ProgressiveRollout is the Schema for the progressiverollouts API

func (*ProgressiveRollout) DeepCopy

func (in *ProgressiveRollout) DeepCopy() *ProgressiveRollout

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProgressiveRollout.

func (*ProgressiveRollout) DeepCopyInto

func (in *ProgressiveRollout) DeepCopyInto(out *ProgressiveRollout)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProgressiveRollout) DeepCopyObject

func (in *ProgressiveRollout) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ProgressiveRolloutList

type ProgressiveRolloutList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ProgressiveRollout `json:"items"`
}

ProgressiveRolloutList contains a list of ProgressiveRollout

func (*ProgressiveRolloutList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProgressiveRolloutList.

func (*ProgressiveRolloutList) DeepCopyInto

func (in *ProgressiveRolloutList) DeepCopyInto(out *ProgressiveRolloutList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProgressiveRolloutList) DeepCopyObject

func (in *ProgressiveRolloutList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ProgressiveRolloutSpec

type ProgressiveRolloutSpec struct {

	//SourceRef references the resource, example an ApplicationSet, which owns ArgoCD Applications
	//+kubebuilder:validation:Required
	SourceRef corev1.TypedLocalObjectReference `json:"sourceRef"`
	// ProgressiveRolloutStage reference a list of ProgressiveRolloutStage
	//+kubebuilder:validation:Required
	Stages []*ProgressiveRolloutStage `json:"stages"`
}

ProgressiveRolloutSpec defines the desired state of ProgressiveRollout

func (*ProgressiveRolloutSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProgressiveRolloutSpec.

func (*ProgressiveRolloutSpec) DeepCopyInto

func (in *ProgressiveRolloutSpec) DeepCopyInto(out *ProgressiveRolloutSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProgressiveRolloutStage

type ProgressiveRolloutStage struct {
	//Name is a human friendly name for the stage
	//+kubebuilder:validation:Required
	Name string `json:"name"`
	//MaxUnavailable is how many selected clusters to update in parallel
	MaxUnavailable intstr.IntOrString `json:"maxUnavailable,omitempty"`
	//MaxClusters is the maximum number of selected cluster to update
	MaxClusters intstr.IntOrString `json:"maxClusters,omitempty"`
	//Cluster is how to select the target clusters for the Rollout
	Clusters Cluster `json:"clusters"`
	//Requeue is when to postpone the cluster update
	Requeue Requeue `json:"requeue,omitempty"`
}

ProgressiveRolloutStage defines a rollout action

func (*ProgressiveRolloutStage) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProgressiveRolloutStage.

func (*ProgressiveRolloutStage) DeepCopyInto

func (in *ProgressiveRolloutStage) DeepCopyInto(out *ProgressiveRolloutStage)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProgressiveRolloutStatus

type ProgressiveRolloutStatus struct {
}

ProgressiveRolloutStatus defines the observed state of ProgressiveRollout

func (*ProgressiveRolloutStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProgressiveRolloutStatus.

func (*ProgressiveRolloutStatus) DeepCopyInto

func (in *ProgressiveRolloutStatus) DeepCopyInto(out *ProgressiveRolloutStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Requeue

type Requeue struct {
	// Selector is a label selector to indicate when to requeue a cluster
	Selector metav1.LabelSelector `json:"selector"`
	// Interval is the time between attempts
	Interval metav1.Duration `json:"interval"`
	// Attempts is how many times try to update a cluster before failing the Rollout
	Attempts int `json:"attempts"`
}

Requeue defines when to requeue a cluster before updating it

func (*Requeue) DeepCopy

func (in *Requeue) DeepCopy() *Requeue

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Requeue.

func (*Requeue) DeepCopyInto

func (in *Requeue) DeepCopyInto(out *Requeue)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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