@kubernetes-models/argo-rollouts
Version:
166 lines (165 loc) • 7.56 kB
TypeScript
import { IIoK8sApimachineryPkgApisMetaV1Time } from "@kubernetes-models/apimachinery/apis/meta/v1/Time";
import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1ALBStatus } from "./ALBStatus.js";
import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1BlueGreenStatus } from "./BlueGreenStatus.js";
import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1CanaryStatus } from "./CanaryStatus.js";
import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1RolloutCondition } from "./RolloutCondition.js";
import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1PauseCondition } from "./PauseCondition.js";
import { IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1RolloutPhase } from "./RolloutPhase.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
* RolloutStatus is the status for a Rollout resource
*/
export interface IRolloutStatus {
/**
* HPAReplicas the number of non-terminated replicas that are receiving active traffic
*/
"HPAReplicas"?: number;
/**
* Abort cancel the current rollout progression
*/
"abort"?: boolean;
/**
* AbortedAt indicates the controller reconciled an aborted rollout. The controller uses this to understand if
* the controller needs to do some specific work when a Rollout is aborted. For example, the reconcileAbort is used
* to indicate if the Rollout should enter an aborted state when the latest AnalysisRun is a failure, or the controller
* has already put the Rollout into an aborted and should create a new AnalysisRun.
*/
"abortedAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
/**
* / ALB keeps information regarding the ALB and TargetGroups
*/
"alb"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1ALBStatus;
/**
* / ALBs keeps information regarding multiple ALBs and TargetGroups in a multi ingress scenario
*/
"albs"?: Array<IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1ALBStatus>;
/**
* Total number of available pods (ready for at least minReadySeconds) targeted by this rollout.
*/
"availableReplicas"?: number;
/**
* BlueGreen describes the state of the bluegreen rollout
*/
"blueGreen"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1BlueGreenStatus;
/**
* Canary describes the state of the canary rollout
*/
"canary"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1CanaryStatus;
/**
* Count of hash collisions for the Rollout. The Rollout controller uses this
* field as a collision avoidance mechanism when it needs to create the name for the
* newest ReplicaSet.
*/
"collisionCount"?: number;
/**
* Conditions a list of conditions a rollout can have.
*/
"conditions"?: Array<IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1RolloutCondition>;
/**
* ControllerPause indicates the controller has paused the rollout. It is set to true when
* the controller adds a pause condition. This field helps to discern the scenario where a
* rollout was resumed after being paused by the controller (e.g. via the plugin). In that
* situation, the pauseConditions would have been cleared , but controllerPause would still be
* set to true.
*/
"controllerPause"?: boolean;
/**
* CurrentPodHash the hash of the current pod template
*/
"currentPodHash"?: string;
/**
* CurrentStepHash the hash of the current list of steps for the current strategy. This is used to detect when the
* list of current steps change
*/
"currentStepHash"?: string;
/**
* CurrentStepIndex defines the current step of the rollout is on. If the current step index is null, the
* controller will execute the rollout.
*/
"currentStepIndex"?: number;
/**
* Message provides details on why the rollout is in its current phase
*/
"message"?: string;
/**
* The generation observed by the rollout controller from metadata.generation
*/
"observedGeneration"?: string;
/**
* PauseConditions is a list of reasons why rollout became automatically paused (e.g.
* CanaryPauseStep, BlueGreenPause, InconclusiveAnalysis). The items in this list are populated
* by the controller but are cleared by the user (e.g. plugin, argo-cd resume action) when they
* wish to unpause. If pause conditions is empty, but controllerPause is true, it indicates
* the user manually unpaused the Rollout
*/
"pauseConditions"?: Array<IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1PauseCondition>;
/**
* Phase is the rollout phase. Clients should only rely on the value if status.observedGeneration equals metadata.generation
*/
"phase"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1RolloutPhase;
/**
* PromoteFull indicates if the rollout should perform a full promotion, skipping analysis and pauses.
*/
"promoteFull"?: boolean;
/**
* Total number of ready pods targeted by this rollout.
*/
"readyReplicas"?: number;
/**
* Total number of non-terminated pods targeted by this rollout (their labels match the selector).
*/
"replicas"?: number;
/**
* RestartedAt indicates last time a Rollout was restarted
*/
"restartedAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
/**
* Selector that identifies the pods that are receiving active traffic
*/
"selector"?: string;
/**
* StableRS indicates the replicaset that has successfully rolled out
*/
"stableRS"?: string;
/**
* Total number of non-terminated pods targeted by this rollout that have the desired template spec.
*/
"updatedReplicas"?: number;
/**
* The generation of referenced workload observed by the rollout controller
*/
"workloadObservedGeneration"?: string;
}
/**
* RolloutStatus is the status for a Rollout resource
*/
export declare class RolloutStatus extends Model<IRolloutStatus> implements IRolloutStatus {
"HPAReplicas"?: number;
"abort"?: boolean;
"abortedAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
"alb"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1ALBStatus;
"albs"?: Array<IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1ALBStatus>;
"availableReplicas"?: number;
"blueGreen"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1BlueGreenStatus;
"canary"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1CanaryStatus;
"collisionCount"?: number;
"conditions"?: Array<IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1RolloutCondition>;
"controllerPause"?: boolean;
"currentPodHash"?: string;
"currentStepHash"?: string;
"currentStepIndex"?: number;
"message"?: string;
"observedGeneration"?: string;
"pauseConditions"?: Array<IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1PauseCondition>;
"phase"?: IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1RolloutPhase;
"promoteFull"?: boolean;
"readyReplicas"?: number;
"replicas"?: number;
"restartedAt"?: IIoK8sApimachineryPkgApisMetaV1Time;
"selector"?: string;
"stableRS"?: string;
"updatedReplicas"?: number;
"workloadObservedGeneration"?: string;
constructor(data?: ModelData<IRolloutStatus>);
}
export type { IRolloutStatus as IComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1RolloutStatus, RolloutStatus as ComGithubArgoprojArgoRolloutsPkgApisRolloutsV1alpha1RolloutStatus };