diff --git a/go.mod b/go.mod index 831372415e..2b492a363c 100644 --- a/go.mod +++ b/go.mod @@ -20,12 +20,12 @@ require ( k8s.io/apimachinery v0.34.1 k8s.io/client-go v0.34.1 k8s.io/code-generator v0.34.1 - knative.dev/caching v0.0.0-20251103013859-bf31c7803c9d - knative.dev/eventing v0.47.1-0.20251105024848-4ff3609af6d4 - knative.dev/hack v0.0.0-20251103013745-91eedd9bef96 - knative.dev/pkg v0.0.0-20251104154049-5037c4760829 - knative.dev/reconciler-test v0.0.0-20251103013647-718cf85ae9d2 - knative.dev/serving v0.47.1-0.20251107122051-78814e1e51a1 + knative.dev/caching v0.0.0-20251117013858-60da9753c6da + knative.dev/eventing v0.47.1-0.20251117120313-e0badc09375a + knative.dev/hack v0.0.0-20251117013754-67a5b048bc27 + knative.dev/pkg v0.0.0-20251117013452-7e6a0208dd36 + knative.dev/reconciler-test v0.0.0-20251117013655-1e6de0a87d9a + knative.dev/serving v0.47.1-0.20251117205120-9efd94748850 sigs.k8s.io/yaml v1.6.0 ) @@ -163,7 +163,7 @@ require ( k8s.io/klog/v2 v2.130.1 // indirect k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b // indirect k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 // indirect - knative.dev/networking v0.0.0-20251021092443-0bde19154dce // indirect + knative.dev/networking v0.0.0-20251117014740-e8506646d57f // indirect sigs.k8s.io/controller-runtime v0.19.0 // indirect sigs.k8s.io/gateway-api v1.1.0 // indirect sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect diff --git a/go.sum b/go.sum index f3a865c526..55a1f9ca83 100644 --- a/go.sum +++ b/go.sum @@ -1703,20 +1703,20 @@ k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a/go.mod h1:jPW/WVKK9YHAvNhRxK0md/ k8s.io/utils v0.0.0-20230209194617-a36077c30491/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 h1:hwvWFiBzdWw1FhfY1FooPn3kzWuJ8tmbZBHi4zVsl1Y= k8s.io/utils v0.0.0-20250604170112-4c0f3b243397/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= -knative.dev/caching v0.0.0-20251103013859-bf31c7803c9d h1:EckW/deKniazFEM9wdb4cpbtmgLfXpOYF2YQRkUAMA8= -knative.dev/caching v0.0.0-20251103013859-bf31c7803c9d/go.mod h1:cuULqCfOTihv1o3R+ggrMJ2sCK98TltUgX/TP2w5CCc= -knative.dev/eventing v0.47.1-0.20251105024848-4ff3609af6d4 h1:+qPDa8wX7lQPDIh1MvqHtOf+EoB42zfj4HT1s5RPLZU= -knative.dev/eventing v0.47.1-0.20251105024848-4ff3609af6d4/go.mod h1:TRBVcsaBqH5u9BnT1BXcZOyg4Abx/eNn+6hHYXfmC1E= -knative.dev/hack v0.0.0-20251103013745-91eedd9bef96 h1:GVSOfMP+ID8WOs11rnR3QGeXagY18VkfBs9GZDjB4WU= -knative.dev/hack v0.0.0-20251103013745-91eedd9bef96/go.mod h1:L5RzHgbvam0u8QFHfzCX6MKxu/a/gIGEdaRBqNiVbl0= -knative.dev/networking v0.0.0-20251021092443-0bde19154dce h1:INRJxej8DPwRUfXzuBQ6Ldg2/QaHF1tZrBUA8LVTaso= -knative.dev/networking v0.0.0-20251021092443-0bde19154dce/go.mod h1:CMOeNLRWFxcMQALbhhwr6XmsyMX7EuSHNi+Gzfq0HE0= -knative.dev/pkg v0.0.0-20251104154049-5037c4760829 h1:BMRSQIZAj6eqrzCUjvkolGXcsVLyHG3qdbKZgPuTKO0= -knative.dev/pkg v0.0.0-20251104154049-5037c4760829/go.mod h1:PjPly2iD6opEMF3ZLVeFZPhrTJVnycrtoLFaolDlueQ= -knative.dev/reconciler-test v0.0.0-20251103013647-718cf85ae9d2 h1:NbEI37mH8bIgDiCPUvfunTw6HMswrduWQIfU+AYQWiU= -knative.dev/reconciler-test v0.0.0-20251103013647-718cf85ae9d2/go.mod h1:r2UVNTxu82LH2EX2u6zlwaw3G5MxcSYY2VJaovjIprM= -knative.dev/serving v0.47.1-0.20251107122051-78814e1e51a1 h1:oJyks0PjuifIARlnfB8Fn96QkgUaDlCzCyFVjGpl6Qc= -knative.dev/serving v0.47.1-0.20251107122051-78814e1e51a1/go.mod h1:DauLoEbJVFlKwZWSspfMD4PhZ0m3mCYUKpn8vc/cV4U= +knative.dev/caching v0.0.0-20251117013858-60da9753c6da h1:Cq7FHFesNZ823UiqkDmVVz07pUTmPWkVilrBQmiO4es= +knative.dev/caching v0.0.0-20251117013858-60da9753c6da/go.mod h1:nZhi8uwzKUUFSKBCAxEihwFm2LdrRotufqJj6NYaIPE= +knative.dev/eventing v0.47.1-0.20251117120313-e0badc09375a h1:U4hB4drM/rwvNTc33uzuk1NDBungX4fnZXtxb1PChZo= +knative.dev/eventing v0.47.1-0.20251117120313-e0badc09375a/go.mod h1:y2ah9JhILLaQDOeh4IQcLd2uYaVBU6ErGe5b53BLV1s= +knative.dev/hack v0.0.0-20251117013754-67a5b048bc27 h1:yPzDTKOFtSYHxgXB2N7+nWT/3doNqPNCbCf7Bf9PeAE= +knative.dev/hack v0.0.0-20251117013754-67a5b048bc27/go.mod h1:L5RzHgbvam0u8QFHfzCX6MKxu/a/gIGEdaRBqNiVbl0= +knative.dev/networking v0.0.0-20251117014740-e8506646d57f h1:EcibemIof19GqPPdtRLKcboOd2lwReiaB1xQLBVwuRc= +knative.dev/networking v0.0.0-20251117014740-e8506646d57f/go.mod h1:bE6vGaXAX9J5hbll4fg99EVv4ke9AGzzJk0Pr0pdT8c= +knative.dev/pkg v0.0.0-20251117013452-7e6a0208dd36 h1:TMvVpn4beb3dyt1e0Q7v9cGFIOVjkE6Oy3jf7Axbe1M= +knative.dev/pkg v0.0.0-20251117013452-7e6a0208dd36/go.mod h1:PjPly2iD6opEMF3ZLVeFZPhrTJVnycrtoLFaolDlueQ= +knative.dev/reconciler-test v0.0.0-20251117013655-1e6de0a87d9a h1:F7BVAA4jO1WoMufJJzrpzxMp+ZP6llJCGcO0M40RhYk= +knative.dev/reconciler-test v0.0.0-20251117013655-1e6de0a87d9a/go.mod h1:F5QJ23fZUKPctfsIwtXVjNz8C33vEdh04cbQNe8WzX8= +knative.dev/serving v0.47.1-0.20251117205120-9efd94748850 h1:ttaM5kYhnfU3GK5/ObS/pJ1jyRn0mJ6rD+umY4BBK7M= +knative.dev/serving v0.47.1-0.20251117205120-9efd94748850/go.mod h1:5kffRM3AN6+jTKRFX+aYo7GCCpEk/cY0RrlSw0LkQz4= nhooyr.io/websocket v1.8.6/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0= pgregory.net/rapid v1.1.0 h1:CMa0sjHSru3puNx+J0MIAuiiEV4N0qj8/cMWGBBCsjw= pgregory.net/rapid v1.1.0/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= diff --git a/vendor/knative.dev/serving/test/prober.go b/vendor/knative.dev/serving/test/prober.go index d1d254fa94..e6d527b2bd 100644 --- a/vendor/knative.dev/serving/test/prober.go +++ b/vendor/knative.dev/serving/test/prober.go @@ -201,7 +201,7 @@ func (m *manager) SLI() (total, failures int64) { total += pt failures += pf } - return + return total, failures } // Foreach implements ProberManager diff --git a/vendor/knative.dev/serving/test/v1/service.go b/vendor/knative.dev/serving/test/v1/service.go index 9d8db16c8e..14346772fb 100644 --- a/vendor/knative.dev/serving/test/v1/service.go +++ b/vendor/knative.dev/serving/test/v1/service.go @@ -110,14 +110,30 @@ func CreateServiceReady(t testing.TB, clients *test.Clients, names *test.Resourc if names.Image == "" { return nil, fmt.Errorf("expected non-empty Image name; got Image=%v", names.Image) } + svc, err := CreateService(t, clients, *names, fopt...) if err != nil { return nil, err } - return getResourceObjects(t, clients, names, svc) + + // When HTTPS is enabled, wait for Service to be Ready with HTTPS URL set to avoid + // connection resets during load testing (see #14435). + readinessCheck := IsServiceReady + if test.ServingFlags.HTTPS { + t.Log("HTTPS mode: waiting for Service Ready with HTTPS URL") + readinessCheck = IsServiceReadyWithHTTPS + } + + return getResourceObjects(t, clients, names, svc, readinessCheck) } -func getResourceObjects(t testing.TB, clients *test.Clients, names *test.ResourceNames, svc *v1.Service) (*ResourceObjects, error) { +func getResourceObjects( + t testing.TB, + clients *test.Clients, + names *test.ResourceNames, + svc *v1.Service, + readinessCheck func(s *v1.Service) (bool, error), +) (*ResourceObjects, error) { // Populate Route and Configuration Objects with name names.Route = serviceresourcenames.Route(svc) names.Config = serviceresourcenames.Configuration(svc) @@ -126,7 +142,7 @@ func getResourceObjects(t testing.TB, clients *test.Clients, names *test.Resourc names.Service = svc.Name t.Log("Waiting for Service to transition to Ready.", "service", names.Service) - if err := WaitForServiceState(clients.ServingClient, names.Service, IsServiceReady, "ServiceIsReady"); err != nil { + if err := WaitForServiceState(clients.ServingClient, names.Service, readinessCheck, "ServiceIsReady"); err != nil { return nil, err } @@ -301,6 +317,26 @@ func IsServiceReady(s *v1.Service) (bool, error) { return s.IsReady(), nil } +// IsServiceReadyWithHTTPS checks if the service is Ready and has an HTTPS URL in status. +func IsServiceReadyWithHTTPS(s *v1.Service) (bool, error) { + ready, err := IsServiceReady(s) + if err != nil { + return false, err + } + + if !ready { + return false, nil + } + + // Service is Ready, now check if HTTPS URL is set + if s.Status.URL == nil { + return false, nil + } + + // Only return true when scheme is HTTPS + return s.Status.URL.Scheme == "https", nil +} + // IsServiceFailed will check the status conditions of the service and return true if the service is // not ready. func IsServiceFailed(s *v1.Service) (bool, error) { diff --git a/vendor/modules.txt b/vendor/modules.txt index 4e57d45698..3f0cfc31ae 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1489,11 +1489,11 @@ k8s.io/utils/net k8s.io/utils/pointer k8s.io/utils/ptr k8s.io/utils/trace -# knative.dev/caching v0.0.0-20251103013859-bf31c7803c9d +# knative.dev/caching v0.0.0-20251117013858-60da9753c6da ## explicit; go 1.24.0 knative.dev/caching/pkg/apis/caching knative.dev/caching/pkg/apis/caching/v1alpha1 -# knative.dev/eventing v0.47.1-0.20251105024848-4ff3609af6d4 +# knative.dev/eventing v0.47.1-0.20251117120313-e0badc09375a ## explicit; go 1.24.0 knative.dev/eventing/cmd/heartbeats knative.dev/eventing/pkg/apis @@ -1586,10 +1586,10 @@ knative.dev/eventing/test/upgrade/prober/wathola/fetcher knative.dev/eventing/test/upgrade/prober/wathola/forwarder knative.dev/eventing/test/upgrade/prober/wathola/receiver knative.dev/eventing/test/upgrade/prober/wathola/sender -# knative.dev/hack v0.0.0-20251103013745-91eedd9bef96 +# knative.dev/hack v0.0.0-20251117013754-67a5b048bc27 ## explicit; go 1.24 knative.dev/hack -# knative.dev/networking v0.0.0-20251021092443-0bde19154dce +# knative.dev/networking v0.0.0-20251117014740-e8506646d57f ## explicit; go 1.24.0 knative.dev/networking/pkg knative.dev/networking/pkg/apis/networking @@ -1606,7 +1606,7 @@ knative.dev/networking/pkg/http/proxy knative.dev/networking/pkg/http/stats knative.dev/networking/pkg/ingress knative.dev/networking/pkg/k8s -# knative.dev/pkg v0.0.0-20251104154049-5037c4760829 +# knative.dev/pkg v0.0.0-20251117013452-7e6a0208dd36 ## explicit; go 1.24.0 knative.dev/pkg/apiextensions/storageversion knative.dev/pkg/apiextensions/storageversion/cmd/migrate @@ -1697,7 +1697,7 @@ knative.dev/pkg/webhook knative.dev/pkg/webhook/certificates knative.dev/pkg/webhook/certificates/resources knative.dev/pkg/webhook/resourcesemantics/conversion -# knative.dev/reconciler-test v0.0.0-20251103013647-718cf85ae9d2 +# knative.dev/reconciler-test v0.0.0-20251117013655-1e6de0a87d9a ## explicit; go 1.24.0 knative.dev/reconciler-test/cmd/eventshub knative.dev/reconciler-test/pkg/environment @@ -1726,7 +1726,7 @@ knative.dev/reconciler-test/pkg/resources/service knative.dev/reconciler-test/pkg/resources/serviceaccount knative.dev/reconciler-test/pkg/state knative.dev/reconciler-test/resources/certificate -# knative.dev/serving v0.47.1-0.20251107122051-78814e1e51a1 +# knative.dev/serving v0.47.1-0.20251117205120-9efd94748850 ## explicit; go 1.24.0 knative.dev/serving/pkg/apis/autoscaling knative.dev/serving/pkg/apis/autoscaling/v1alpha1