From d867cbfa8511e92413dc0ceaa572cdfcbfbcc60e Mon Sep 17 00:00:00 2001 From: Lang Martin Date: Mon, 20 May 2019 14:36:58 -0400 Subject: [PATCH] structs validate requires Canary for AutoPromote --- nomad/structs/structs.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nomad/structs/structs.go b/nomad/structs/structs.go index 8ffb61ef0..828a94313 100644 --- a/nomad/structs/structs.go +++ b/nomad/structs/structs.go @@ -3880,6 +3880,9 @@ func (u *UpdateStrategy) Validate() error { if u.Canary < 0 { multierror.Append(&mErr, fmt.Errorf("Canary count can not be less than zero: %d < 0", u.Canary)) } + if u.Canary == 0 && u.AutoPromote { + multierror.Append(&mErr, fmt.Errorf("Auto Promote requires a Canary count greater than zero")) + } if u.MinHealthyTime < 0 { multierror.Append(&mErr, fmt.Errorf("Minimum healthy time may not be less than zero: %v", u.MinHealthyTime)) }