From 28e7e89047218d703d706130bc6f445f6baa40f8 Mon Sep 17 00:00:00 2001 From: stefanprodan Date: Wed, 24 Jul 2019 16:09:13 +0300 Subject: [PATCH] Pause or resume analysis on confirmation gate toggle --- pkg/canary/status.go | 2 +- pkg/controller/scheduler.go | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/canary/status.go b/pkg/canary/status.go index cfbacd9c..a744d437 100644 --- a/pkg/canary/status.go +++ b/pkg/canary/status.go @@ -156,7 +156,7 @@ func (c *Deployer) SetStatusPhase(cd *flaggerv1.Canary, phase flaggerv1.CanaryPh cdCopy.Status.Phase = phase cdCopy.Status.LastTransitionTime = metav1.Now() - if phase != flaggerv1.CanaryPhaseProgressing { + if phase != flaggerv1.CanaryPhaseProgressing && phase != flaggerv1.CanaryPhaseWaiting { cdCopy.Status.CanaryWeight = 0 cdCopy.Status.Iterations = 0 } diff --git a/pkg/controller/scheduler.go b/pkg/controller/scheduler.go index f08ef22e..bca27600 100644 --- a/pkg/controller/scheduler.go +++ b/pkg/controller/scheduler.go @@ -134,9 +134,8 @@ func (c *Controller) advanceCanary(name string, namespace string, skipLivenessCh return } - isApproved := c.runConfirmRolloutHooks(cd) - - if !isApproved { + // check gates + if isApproved := c.runConfirmRolloutHooks(cd); !isApproved { return } @@ -552,6 +551,7 @@ func (c *Controller) runConfirmRolloutHooks(canary *flaggerv1.Canary) bool { return false } c.recordEventInfof(canary, "Confirm-rollout check %s passed", webhook.Name) + return false } } }