test deployer: fix a bug when deploying cluster with various ent images (#19381)

This commit is contained in:
cskh 2023-10-26 13:12:20 -04:00 committed by GitHub
parent 4096c9682e
commit 3b806d41c0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 3 deletions

View File

@ -203,7 +203,7 @@ func compile(logger hclog.Logger, raw *Config, prev *Topology) (*Topology, error
n.Index = nextIndex n.Index = nextIndex
nextIndex++ nextIndex++
n.Images = c.Images.OverrideWith(n.Images).ChooseNode(n.Kind) n.Images = c.Images.OverrideWith(n.Images.ChooseConsul(c.Enterprise)).ChooseNode(n.Kind)
n.Cluster = c.Name n.Cluster = c.Name
n.Datacenter = c.Datacenter n.Datacenter = c.Datacenter

View File

@ -8,8 +8,12 @@ import (
) )
type Images struct { type Images struct {
Consul string `json:",omitempty"` // Consul is the image used for creating the container,
ConsulCE string `json:",omitempty"` // Use ChooseConsul() to control which image (ConsulCE or ConsulEnterprise) assign to Consul
Consul string `json:",omitempty"`
// ConsulCE sets the CE image
ConsulCE string `json:",omitempty"`
// ConsulEnterprise sets the ent image
ConsulEnterprise string `json:",omitempty"` ConsulEnterprise string `json:",omitempty"`
Envoy string Envoy string
Dataplane string Dataplane string
@ -82,6 +86,7 @@ func (i Images) ChooseNode(kind NodeKind) Images {
return i return i
} }
// ChooseConsul controls which image assigns to Consul
func (i Images) ChooseConsul(enterprise bool) Images { func (i Images) ChooseConsul(enterprise bool) Images {
if enterprise { if enterprise {
i.Consul = i.ConsulEnterprise i.Consul = i.ConsulEnterprise