add destination port when port discovery is active and delegation is true

Signed-off-by: Marco Amador <amador.marco@gmail.com>
This commit is contained in:
Marco Amador
2022-03-16 18:57:02 +00:00
parent eca6fa7958
commit c7cbb729b7
2 changed files with 5 additions and 2 deletions
+2 -2
View File
@@ -488,8 +488,8 @@ func makeDestination(canary *flaggerv1.Canary, host string, weight int) istiov1a
// set destination port when an ingress gateway is specified
if canary.Spec.Service.PortDiscovery &&
len(canary.Spec.Service.Gateways) > 0 &&
canary.Spec.Service.Gateways[0] != "mesh" {
(len(canary.Spec.Service.Gateways) > 0 &&
canary.Spec.Service.Gateways[0] != "mesh" || canary.Spec.Service.Delegation) {
dest = istiov1alpha3.DestinationWeight{
Destination: istiov1alpha3.Destination{
Host: host,
+3
View File
@@ -372,6 +372,9 @@ func TestIstioRouter_Delegate(t *testing.T) {
assert.Equal(t, 0, len(vs.Spec.Hosts))
assert.Equal(t, 0, len(vs.Spec.Gateways))
port := vs.Spec.Http[0].Route[0].Destination.Port.Number
assert.Equal(t, uint32(mocks.canary.Spec.Service.Port), port)
})
t.Run("invalid", func(t *testing.T) {