From dfdcfed26eb3df6c1330faad1514d2006596f54e Mon Sep 17 00:00:00 2001 From: stefanprodan Date: Wed, 24 Jul 2019 12:00:04 +0300 Subject: [PATCH] Add `Waiting` canary status phase means the canary rollout is paused (waiting for confirmation to proceed) --- artifacts/flagger/crd.yaml | 1 + charts/flagger/templates/crd.yaml | 1 + kustomize/base/flagger/crd.yaml | 1 + pkg/apis/flagger/v1alpha3/status.go | 2 ++ pkg/canary/status.go | 3 +++ 5 files changed, 8 insertions(+) diff --git a/artifacts/flagger/crd.yaml b/artifacts/flagger/crd.yaml index 1b235577..ed54fbfe 100644 --- a/artifacts/flagger/crd.yaml +++ b/artifacts/flagger/crd.yaml @@ -174,6 +174,7 @@ spec: - "" - Initializing - Initialized + - Waiting - Progressing - Succeeded - Failed diff --git a/charts/flagger/templates/crd.yaml b/charts/flagger/templates/crd.yaml index fcf326f1..e7cd7641 100644 --- a/charts/flagger/templates/crd.yaml +++ b/charts/flagger/templates/crd.yaml @@ -175,6 +175,7 @@ spec: - "" - Initializing - Initialized + - Waiting - Progressing - Succeeded - Failed diff --git a/kustomize/base/flagger/crd.yaml b/kustomize/base/flagger/crd.yaml index 1b235577..ed54fbfe 100644 --- a/kustomize/base/flagger/crd.yaml +++ b/kustomize/base/flagger/crd.yaml @@ -174,6 +174,7 @@ spec: - "" - Initializing - Initialized + - Waiting - Progressing - Succeeded - Failed diff --git a/pkg/apis/flagger/v1alpha3/status.go b/pkg/apis/flagger/v1alpha3/status.go index 5c43b0fd..b0ca1fd9 100644 --- a/pkg/apis/flagger/v1alpha3/status.go +++ b/pkg/apis/flagger/v1alpha3/status.go @@ -43,6 +43,8 @@ const ( // CanaryPhaseInitialized means the primary deployment, hpa and ClusterIP services // have been created along with the service mesh or ingress objects CanaryPhaseInitialized CanaryPhase = "Initialized" + // CanaryPhaseWaiting means the canary rollout is paused (waiting for confirmation to proceed) + CanaryPhaseWaiting CanaryPhase = "Waiting" // CanaryPhaseProgressing means the canary analysis is underway CanaryPhaseProgressing CanaryPhase = "Progressing" // CanaryPhaseSucceeded means the canary analysis has been successful diff --git a/pkg/canary/status.go b/pkg/canary/status.go index 2001470c..cfbacd9c 100644 --- a/pkg/canary/status.go +++ b/pkg/canary/status.go @@ -205,6 +205,9 @@ func (c *Deployer) MakeStatusConditions(canaryStatus flaggerv1.CanaryStatus, case flaggerv1.CanaryPhaseInitialized: status = corev1.ConditionTrue message = "Deployment initialization completed." + case flaggerv1.CanaryPhaseWaiting: + status = corev1.ConditionUnknown + message = "Waiting for approval." case flaggerv1.CanaryPhaseProgressing: status = corev1.ConditionUnknown message = "New revision detected, starting canary analysis."