From 6fd0730a2151bbf85080ce83e0eef8aaed6b2553 Mon Sep 17 00:00:00 2001 From: Ashish Tiwari Date: Thu, 7 Dec 2023 11:34:38 +0530 Subject: [PATCH] fix for v1 and v1beta1 Signed-off-by: Ashish Tiwari --- .../ingress/translation/translator.go | 39 ++++++++++++++----- test/e2e/scaffold/ingress.go | 2 - test/e2e/suite-annotations/upstreamretry.go | 9 ++--- 3 files changed, 32 insertions(+), 18 deletions(-) diff --git a/pkg/providers/ingress/translation/translator.go b/pkg/providers/ingress/translation/translator.go index 9ca18e1224..02d0bb5aaf 100644 --- a/pkg/providers/ingress/translation/translator.go +++ b/pkg/providers/ingress/translation/translator.go @@ -209,23 +209,21 @@ func (t *translator) translateIngressV1(ing *networkingv1.Ingress, skipVerify bo ups.Retries = &retry fmt.Println("set retries", *ups.Retries) } - if ingress.Upstream.TimeoutConnect > 0 { - if ups.Timeout == nil { - ups.Timeout = &apisixv1.UpstreamTimeout{} + if ups.Timeout == nil { + ups.Timeout = &apisixv1.UpstreamTimeout{ + Read: 60, + Send: 60, + Connect: 60, } + } + if ingress.Upstream.TimeoutConnect > 0 { ups.Timeout.Connect = ingress.Upstream.TimeoutConnect } if ingress.Upstream.TimeoutRead > 0 { - if ups.Timeout == nil { - ups.Timeout = &apisixv1.UpstreamTimeout{} - } ups.Timeout.Read = ingress.Upstream.TimeoutRead fmt.Println("set read rimeiut", ups.Timeout.Read) } if ingress.Upstream.TimeoutSend > 0 { - if ups.Timeout == nil { - ups.Timeout = &apisixv1.UpstreamTimeout{} - } ups.Timeout.Send = ingress.Upstream.TimeoutSend } ctx.AddUpstream(ups) @@ -383,7 +381,28 @@ func (t *translator) translateIngressV1beta1(ing *networkingv1beta1.Ingress, ski if len(ingress.Plugins) > 0 { route.Plugins = *(ingress.Plugins.DeepCopy()) } - + if ingress.Upstream.Retry > 0 { + retry := ingress.Upstream.Retry + ups.Retries = &retry + fmt.Println("set retries", *ups.Retries) + } + if ups.Timeout == nil { + ups.Timeout = &apisixv1.UpstreamTimeout{ + Read: 60, + Send: 60, + Connect: 60, + } + } + if ingress.Upstream.TimeoutConnect > 0 { + ups.Timeout.Connect = ingress.Upstream.TimeoutConnect + } + if ingress.Upstream.TimeoutRead > 0 { + ups.Timeout.Read = ingress.Upstream.TimeoutRead + fmt.Println("set read rimeiut", ups.Timeout.Read) + } + if ingress.Upstream.TimeoutSend > 0 { + ups.Timeout.Send = ingress.Upstream.TimeoutSend + } if ingress.PluginConfigName != "" { route.PluginConfigId = id.GenID(apisixv1.ComposePluginConfigName(ing.Namespace, ingress.PluginConfigName)) } diff --git a/test/e2e/scaffold/ingress.go b/test/e2e/scaffold/ingress.go index 9c4ed1cff8..1fe8fda675 100644 --- a/test/e2e/scaffold/ingress.go +++ b/test/e2e/scaffold/ingress.go @@ -470,8 +470,6 @@ spec: - --etcd-server-enabled=%t - --etcd-server-listen-address - ":2379" - - "--ingress-publish-service" - - "default/apisix-service-e2e-test" volumeMounts: - name: admission-webhook mountPath: /etc/webhook/certs diff --git a/test/e2e/suite-annotations/upstreamretry.go b/test/e2e/suite-annotations/upstreamretry.go index d4bbb1e09a..010196b236 100644 --- a/test/e2e/suite-annotations/upstreamretry.go +++ b/test/e2e/suite-annotations/upstreamretry.go @@ -51,12 +51,9 @@ spec: port: number: 9280 ` - assert.NoError(ginkgo.GinkgoT(), s.CreateResourceFromString(ing)) - err := s.EnsureNumApisixUpstreamsCreated(1) - if err != nil { - fmt.Println("should not err", err.Error()) - } - time.Sleep(2 * time.Second) + err := s.CreateResourceFromString(ing) + assert.Nil(ginkgo.GinkgoT(), err, "creating ingress") + time.Sleep(5 * time.Second) respGet := s.NewAPISIXClient().GET("/retry").WithHeader("Host", "e2e.apisix.local").Expect() respGet.Status(http.StatusGatewayTimeout)