--- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.4.1 creationTimestamp: null name: rollouts.apps.rollouts.io spec: group: apps.rollouts.io names: kind: Rollout listKind: RolloutList plural: rollouts singular: rollout scope: Namespaced versions: - name: v1alpha1 schema: openAPIV3Schema: description: Rollout is the Schema for the rollouts API properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' type: string kind: description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' type: string metadata: type: object spec: description: RolloutSpec defines the desired state of Rollout properties: strategy: description: The deployment strategy to use to replace existing pods with new ones. properties: canary: description: BlueGreen *BlueGreenStrategy `json:"blueGreen,omitempty" protobuf:"bytes,1,opt,name=blueGreen"` properties: stableService: description: CanaryService holds the name of a service which selects pods with canary version and don't select any pods with stable version. CanaryService string `json:"canaryService,omitempty"` StableService holds the name of a service which selects pods with stable version and don't select any pods with canary version. type: string steps: description: Steps define the order of phases to execute the canary deployment items: description: CanaryStep defines a step of a canary workload. properties: pause: description: Pause freezes the rollout by setting spec.Paused to true. A Rollout will resume when spec.Paused is reset to false. properties: duration: description: Duration the amount of time to wait before moving to the next step. format: int32 type: integer type: object setWeight: description: SetWeight sets what percentage of the canary pods should receive format: int32 type: integer type: object type: array trafficRouting: description: TrafficRouting hosts all the supported service meshes supported to enable more fine-grained traffic routing properties: alb: description: AlbTrafficRouting configuration for Nginx ingress controller to control traffic routing properties: ingress: description: Ingress refers to the name of an `Ingress` resource in the same namespace as the `Rollout` type: string tickets: description: A/B Testing properties: cookie: additionalProperties: type: string type: object header: additionalProperties: type: string type: object type: object required: - ingress type: object nginx: description: Nginx holds Nginx Ingress specific configuration to route traffic properties: ingress: description: Ingress refers to the name of an `Ingress` resource in the same namespace as the `Rollout` type: string tickets: description: A/B Testing properties: cookie: additionalProperties: type: string type: object header: additionalProperties: type: string type: object type: object required: - ingress type: object type: type: string type: object type: object type: object targetRef: description: TargetRef contains enough information to let you identify a workload for Rollout properties: apiVersion: description: API Version of the referent type: string kind: description: Kind of the referent type: string name: description: Name of the referent type: string required: - apiVersion - kind - name type: object required: - strategy - targetRef type: object status: description: RolloutStatus defines the observed state of Rollout properties: canaryStatus: description: Canary describes the state of the canary rollout properties: canaryReadyReplicas: format: int32 type: integer canaryReplicas: description: CanaryReplicas the numbers of canary revision pods format: int32 type: integer canaryRevision: description: CanaryRevision the hash of the current pod template type: string canaryService: description: CanaryService holds the name of a service which selects pods with canary version and don't select any pods with stable version. type: string currentStepIndex: description: CurrentStepIndex defines the current step of the rollout is on. If the current step index is null, the controller will execute the rollout. format: int32 type: integer currentStepState: type: string lastReadyTime: description: The last time this step pods is ready. format: date-time type: string message: type: string required: - canaryReadyReplicas - canaryReplicas - canaryService - currentStepState type: object conditions: description: Conditions a list of conditions a rollout can have. items: description: RolloutCondition describes the state of a rollout at a certain point. properties: lastTransitionTime: description: Last time the condition transitioned from one status to another. format: date-time type: string lastUpdateTime: description: The last time this condition was updated. format: date-time type: string message: description: A human readable message indicating details about the transition. type: string reason: description: The reason for the condition's last transition. type: string status: description: Phase of the condition, one of True, False, Unknown. type: string type: description: Type of deployment condition. type: string required: - message - reason - status - type type: object type: array message: description: Message provides details on why the rollout is in its current phase type: string observedGeneration: description: observedGeneration is the most recent generation observed for this SidecarSet. It corresponds to the SidecarSet's generation, which is updated on mutation by the API Server. format: int64 type: integer phase: description: Phase is the rollout phase. Clients should only rely on the value if status.observedGeneration equals metadata.generation type: string stableRevision: description: StableRevision indicates the revision pods that has successfully rolled out type: string updateRevision: description: UpdateRevision the hash of the current pod template type: string type: object type: object served: true storage: true subresources: status: {} status: acceptedNames: kind: "" plural: "" conditions: [] storedVersions: []