From 189db8d990d43d5774cd1b5f708d938bc1b5ed4f Mon Sep 17 00:00:00 2001 From: Philipp Date: Tue, 17 Dec 2024 10:12:04 +0100 Subject: [PATCH 1/6] Pass TLS bool from IngressRouteTCP to TCPService --- .../routing/providers/kubernetes-crd.md | 76 ++++++++++--------- .../crd/fixtures/tcp/with_tls_service.yml | 16 ++++ pkg/provider/kubernetes/crd/kubernetes_tcp.go | 5 +- .../kubernetes/crd/kubernetes_test.go | 44 +++++++++++ 4 files changed, 103 insertions(+), 38 deletions(-) create mode 100644 pkg/provider/kubernetes/crd/fixtures/tcp/with_tls_service.yml diff --git a/docs/content/routing/providers/kubernetes-crd.md b/docs/content/routing/providers/kubernetes-crd.md index fca592beb..44f3caa85 100644 --- a/docs/content/routing/providers/kubernetes-crd.md +++ b/docs/content/routing/providers/kubernetes-crd.md @@ -1156,48 +1156,50 @@ Register the `IngressRouteTCP` [kind](../../reference/dynamic-configuration/kube serversTransport: transport # [13] nativeLB: true # [14] nodePortLB: true # [15] + tls: false # [16] - tls: # [16] - secretName: supersecret # [17] - options: # [18] - name: opt # [19] - namespace: default # [20] - certResolver: foo # [21] - domains: # [22] - - main: example.net # [23] - sans: # [24] + tls: # [17] + secretName: supersecret # [18] + options: # [19] + name: opt # [20] + namespace: default # [21] + certResolver: foo # [22] + domains: # [23] + - main: example.net # [24] + sans: # [25] - a.example.net - b.example.net - passthrough: false # [25] + passthrough: false # [26] ``` -| Ref | Attribute | Purpose | -|------|-------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [1] | `entryPoints` | List of [entrypoints](../routers/index.md#entrypoints_1) names | -| [2] | `routes` | List of routes | -| [3] | `routes[n].match` | Defines the [rule](../routers/index.md#rule_1) of the underlying router | -| [4] | `routes[n].priority` | Defines the [priority](../routers/index.md#priority_1) to disambiguate rules of the same length, for route matching | -| [5] | `middlewares[n].name` | Defines the [MiddlewareTCP](#kind-middlewaretcp) name | -| [6] | `middlewares[n].namespace` | Defines the [MiddlewareTCP](#kind-middlewaretcp) namespace | -| [7] | `routes[n].services` | List of [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/) definitions (See below for `ExternalName Service` setup) | -| [8] | `services[n].name` | Defines the name of a [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/) | -| [9] | `services[n].port` | Defines the port of a [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/). This can be a reference to a named port. | -| [10] | `services[n].weight` | Defines the weight to apply to the server load balancing | -| [11] | `services[n].proxyProtocol` | Defines the [PROXY protocol](../services/index.md#proxy-protocol) configuration | -| [12] | `services[n].proxyProtocol.version` | Defines the [PROXY protocol](../services/index.md#proxy-protocol) version | -| [13] | `services[n].serversTransport` | Defines the reference to a [ServersTransportTCP](#kind-serverstransporttcp). The ServersTransport namespace is assumed to be the [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/) namespace (see [ServersTransport reference](#serverstransport-reference)). | -| [14] | `services[n].nativeLB` | Controls, when creating the load-balancer, whether the LB's children are directly the pods IPs or if the only child is the Kubernetes Service clusterIP. | -| [15] | `services[n].nodePortLB` | Controls, when creating the load-balancer, whether the LB's children are directly the nodes internal IPs using the nodePort when the service type is | -| [16] | `tls` | Defines [TLS](../routers/index.md#tls_1) certificate configuration | -| [17] | `tls.secretName` | Defines the [secret](https://kubernetes.io/docs/concepts/configuration/secret/) name used to store the certificate (in the `IngressRoute` namespace) | -| [18] | `tls.options` | Defines the reference to a [TLSOption](#kind-tlsoption) | -| [19] | `tls.options.name` | Defines the [TLSOption](#kind-tlsoption) name | -| [20] | `tls.options.namespace` | Defines the [TLSOption](#kind-tlsoption) namespace | -| [21] | `tls.certResolver` | Defines the reference to a [CertResolver](../routers/index.md#certresolver_1) | -| [22] | `tls.domains` | List of [domains](../routers/index.md#domains_1) | -| [23] | `tls.domains[n].main` | Defines the main domain name | -| [24] | `tls.domains[n].sans` | List of SANs (alternative domains) | -| [25] | `tls.passthrough` | If `true`, delegates the TLS termination to the backend | +| Ref | Attribute | Purpose | +|------|-------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [1] | `entryPoints` | List of [entrypoints](../routers/index.md#entrypoints_1) names | +| [2] | `routes` | List of routes | +| [3] | `routes[n].match` | Defines the [rule](../routers/index.md#rule_1) of the underlying router | +| [4] | `routes[n].priority` | Defines the [priority](../routers/index.md#priority_1) to disambiguate rules of the same length, for route matching | +| [5] | `middlewares[n].name` | Defines the [MiddlewareTCP](#kind-middlewaretcp) name | +| [6] | `middlewares[n].namespace` | Defines the [MiddlewareTCP](#kind-middlewaretcp) namespace | +| [7] | `routes[n].services` | List of [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/) definitions (See below for `ExternalName Service` setup) | +| [8] | `services[n].name` | Defines the name of a [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/) | +| [9] | `services[n].port` | Defines the port of a [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/). This can be a reference to a named port. | +| [10] | `services[n].weight` | Defines the weight to apply to the server load balancing | +| [11] | `services[n].proxyProtocol` | Defines the [PROXY protocol](../services/index.md#proxy-protocol) configuration | +| [12] | `services[n].proxyProtocol.version` | Defines the [PROXY protocol](../services/index.md#proxy-protocol) version | +| [13] | `services[n].serversTransport` | Defines the reference to a [ServersTransportTCP](#kind-serverstransporttcp). The ServersTransport namespace is assumed to be the [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/) namespace (see [ServersTransport reference](#serverstransport-reference)). | +| [14] | `services[n].nativeLB` | Controls, when creating the load-balancer, whether the LB's children are directly the pods IPs or if the only child is the Kubernetes Service clusterIP. | +| [15] | `services[n].nodePortLB` | Controls, when creating the load-balancer, whether the LB's children are directly the nodes internal IPs when the service type is of type NodePort. | +| [16] | `services[n].tls` | Defines whether to use TLS when dialing with the target service. | +| [17] | `tls` | Defines [TLS](../routers/index.md#tls_1) certificate configuration | +| [18] | `tls.secretName` | Defines the [secret](https://kubernetes.io/docs/concepts/configuration/secret/) name used to store the certificate (in the `IngressRoute` namespace) | +| [19] | `tls.options` | Defines the reference to a [TLSOption](#kind-tlsoption) | +| [20] | `tls.options.name` | Defines the [TLSOption](#kind-tlsoption) name | +| [21] | `tls.options.namespace` | Defines the [TLSOption](#kind-tlsoption) namespace | +| [22] | `tls.certResolver` | Defines the reference to a [CertResolver](../routers/index.md#certresolver_1) | +| [23] | `tls.domains` | List of [domains](../routers/index.md#domains_1) | +| [24] | `tls.domains[n].main` | Defines the main domain name | +| [25] | `tls.domains[n].sans` | List of SANs (alternative domains) | +| [26] | `tls.passthrough` | If `true`, delegates the TLS termination to the backend | ??? example "Declaring an IngressRouteTCP" diff --git a/pkg/provider/kubernetes/crd/fixtures/tcp/with_tls_service.yml b/pkg/provider/kubernetes/crd/fixtures/tcp/with_tls_service.yml new file mode 100644 index 000000000..977e0ec24 --- /dev/null +++ b/pkg/provider/kubernetes/crd/fixtures/tcp/with_tls_service.yml @@ -0,0 +1,16 @@ +apiVersion: traefik.io/v1alpha1 +kind: IngressRouteTCP +metadata: + name: test.route + namespace: default + +spec: + entryPoints: + - foo + + routes: + - match: HostSNI(`foo.com`) + services: + - name: whoamitcp + port: 8000 + tls: true diff --git a/pkg/provider/kubernetes/crd/kubernetes_tcp.go b/pkg/provider/kubernetes/crd/kubernetes_tcp.go index 63795c0a3..1eb3eed84 100644 --- a/pkg/provider/kubernetes/crd/kubernetes_tcp.go +++ b/pkg/provider/kubernetes/crd/kubernetes_tcp.go @@ -257,6 +257,7 @@ func (p *Provider) loadTCPServers(client Client, namespace string, svc traefikv1 if addr.Type == corev1.NodeInternalIP { servers = append(servers, dynamic.TCPServer{ Address: net.JoinHostPort(addr.Address, strconv.Itoa(int(svcPort.NodePort))), + TLS: svc.TLS, }) } } @@ -272,6 +273,7 @@ func (p *Provider) loadTCPServers(client Client, namespace string, svc traefikv1 if service.Spec.Type == corev1.ServiceTypeExternalName { servers = append(servers, dynamic.TCPServer{ Address: net.JoinHostPort(service.Spec.ExternalName, strconv.Itoa(int(svcPort.Port))), + TLS: svc.TLS, }) } else { nativeLB := p.NativeLBByDefault @@ -284,7 +286,7 @@ func (p *Provider) loadTCPServers(client Client, namespace string, svc traefikv1 return nil, fmt.Errorf("getting native Kubernetes Service address: %w", err) } - return []dynamic.TCPServer{{Address: address}}, nil + return []dynamic.TCPServer{{Address: address, TLS: svc.TLS}}, nil } endpointSlices, err := client.GetEndpointSlicesForService(namespace, svc.Name) @@ -318,6 +320,7 @@ func (p *Provider) loadTCPServers(client Client, namespace string, svc traefikv1 addresses[address] = struct{}{} servers = append(servers, dynamic.TCPServer{ Address: net.JoinHostPort(address, strconv.Itoa(int(port))), + TLS: svc.TLS, }) } } diff --git a/pkg/provider/kubernetes/crd/kubernetes_test.go b/pkg/provider/kubernetes/crd/kubernetes_test.go index ec979151d..fe3131c74 100644 --- a/pkg/provider/kubernetes/crd/kubernetes_test.go +++ b/pkg/provider/kubernetes/crd/kubernetes_test.go @@ -111,6 +111,50 @@ func TestLoadIngressRouteTCPs(t *testing.T) { TLS: &dynamic.TLSConfiguration{}, }, }, + { + desc: "Simple Ingress Route, with foo entrypoint, tls encryption to service", + paths: []string{"tcp/services.yml", "tcp/with_tls_service.yml"}, + expected: &dynamic.Configuration{ + UDP: &dynamic.UDPConfiguration{ + Routers: map[string]*dynamic.UDPRouter{}, + Services: map[string]*dynamic.UDPService{}, + }, + HTTP: &dynamic.HTTPConfiguration{ + Routers: map[string]*dynamic.Router{}, + Middlewares: map[string]*dynamic.Middleware{}, + Services: map[string]*dynamic.Service{}, + ServersTransports: map[string]*dynamic.ServersTransport{}, + }, + TCP: &dynamic.TCPConfiguration{ + Routers: map[string]*dynamic.TCPRouter{ + "default-test.route-fdd3e9338e47a45efefc": { + EntryPoints: []string{"foo"}, + Service: "default-test.route-fdd3e9338e47a45efefc", + Rule: "HostSNI(`foo.com`)", + }, + }, + Middlewares: map[string]*dynamic.TCPMiddleware{}, + Services: map[string]*dynamic.TCPService{ + "default-test.route-fdd3e9338e47a45efefc": { + LoadBalancer: &dynamic.TCPServersLoadBalancer{ + Servers: []dynamic.TCPServer{ + { + Address: "10.10.0.1:8000", + TLS: true, + }, + { + Address: "10.10.0.2:8000", + TLS: true, + }, + }, + }, + }, + }, + ServersTransports: map[string]*dynamic.TCPServersTransport{}, + }, + TLS: &dynamic.TLSConfiguration{}, + }, + }, { desc: "Simple Ingress Route, with foo entrypoint and middleware", paths: []string{"tcp/services.yml", "tcp/with_middleware.yml"}, From a870c2af9b79b9c913f92601ecac5ccf75b1e053 Mon Sep 17 00:00:00 2001 From: Emile Vauge <6207234+emilevauge@users.noreply.github.com> Date: Tue, 17 Dec 2024 15:34:04 +0100 Subject: [PATCH 2/6] Add @jnoordsij to maintainers --- docs/content/contributing/maintainers.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/content/contributing/maintainers.md b/docs/content/contributing/maintainers.md index a340156fc..a7c3bbe50 100644 --- a/docs/content/contributing/maintainers.md +++ b/docs/content/contributing/maintainers.md @@ -22,6 +22,7 @@ description: "Traefik Proxy is an open source software with a thriving community * Landry Benguigui [@lbenguigui](https://github.com/lbenguigui) * Simon Delicata [@sdelicata](https://github.com/sdelicata) * Baptiste Mayelle [@youkoulayley](https://github.com/youkoulayley) +* Jesper Noordsij [@jnoordsij](https://github.com/jnoordsij) ## Past Maintainers From f1c4ba2f268f1dcae91c944e9e324eea0ec3e6b2 Mon Sep 17 00:00:00 2001 From: Eng Zer Jun Date: Thu, 19 Dec 2024 16:20:04 +0800 Subject: [PATCH 3/6] Remove duplicate github.com/coreos/go-systemd dependency --- go.mod | 1 - go.sum | 1 - pkg/server/socket_activation_unix.go | 2 +- 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 676df6668..021c9b421 100644 --- a/go.mod +++ b/go.mod @@ -11,7 +11,6 @@ require ( github.com/aws/aws-sdk-go v1.44.327 github.com/cenkalti/backoff/v4 v4.3.0 github.com/containous/alice v0.0.0-20181107144136-d83ebdd94cbd // No tag on the repo. - github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e // No tag on the repo. github.com/coreos/go-systemd/v22 v22.5.0 github.com/docker/cli v27.1.1+incompatible github.com/docker/docker v27.1.1+incompatible diff --git a/go.sum b/go.sum index 6afa9355c..b0f8ca932 100644 --- a/go.sum +++ b/go.sum @@ -259,7 +259,6 @@ github.com/coreos/etcd v3.3.13+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= github.com/coreos/go-semver v0.3.1 h1:yi21YpKnrx1gt5R+la8n5WgS0kCrsPp33dmEyHReZr4= github.com/coreos/go-semver v0.3.1/go.mod h1:irMmmIw/7yzSRPWryHsK7EYSg09caPQL03VsM8rvUec= -github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e h1:Wf6HqHfScWJN9/ZjdUKyjop4mf3Qdd+1TvvltAvM3m8= github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= github.com/coreos/go-systemd/v22 v22.3.3-0.20220203105225-a9a7ef127534/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= diff --git a/pkg/server/socket_activation_unix.go b/pkg/server/socket_activation_unix.go index 450330981..76be1491a 100644 --- a/pkg/server/socket_activation_unix.go +++ b/pkg/server/socket_activation_unix.go @@ -5,7 +5,7 @@ package server import ( "net" - "github.com/coreos/go-systemd/activation" + "github.com/coreos/go-systemd/v22/activation" "github.com/rs/zerolog/log" ) From e280716645685bceef726e26447d691c4a332d8d Mon Sep 17 00:00:00 2001 From: Kevin Pollet Date: Thu, 19 Dec 2024 11:12:04 +0100 Subject: [PATCH 4/6] Update Gateway API version support to v1.2.1 --- docs/content/providers/kubernetes-gateway.md | 8 ++++---- .../providers/kubernetes/kubernetes-gateway.md | 6 +++--- docs/content/routing/providers/kubernetes-gateway.md | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/content/providers/kubernetes-gateway.md b/docs/content/providers/kubernetes-gateway.md index a8edfadcc..aca83ed6c 100644 --- a/docs/content/providers/kubernetes-gateway.md +++ b/docs/content/providers/kubernetes-gateway.md @@ -8,11 +8,11 @@ description: "Learn how to use the Kubernetes Gateway API as a provider for conf The Kubernetes Gateway provider is a Traefik implementation of the [Gateway API](https://gateway-api.sigs.k8s.io/) specification from the Kubernetes Special Interest Groups (SIGs). -This provider supports Standard version [v1.2.0](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v1.2.0) of the Gateway API specification. +This provider supports Standard version [v1.2.1](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v1.2.1) of the Gateway API specification. It fully supports all HTTP core and some extended features, as well as the `TCPRoute` and `TLSRoute` resources from the [Experimental channel](https://gateway-api.sigs.k8s.io/concepts/versioning/?h=#release-channels). -For more details, check out the conformance [report](https://github.com/kubernetes-sigs/gateway-api/tree/main/conformance/reports/v1.2.0/traefik-traefik). +For more details, check out the conformance [report](https://github.com/kubernetes-sigs/gateway-api/tree/main/conformance/reports/v1.2.1/traefik-traefik). ## Requirements @@ -27,7 +27,7 @@ For more details, check out the conformance [report](https://github.com/kubernet ```bash # Install Gateway API CRDs from the Standard channel. - kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.0/standard-install.yaml + kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml ``` 2. Install the additional Traefik RBAC required for Gateway API. @@ -275,7 +275,7 @@ providers: ```bash # Install Gateway API CRDs from the Experimental channel. - kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.0/experimental-install.yaml + kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/experimental-install.yaml ``` ### `labelselector` diff --git a/docs/content/reference/install-configuration/providers/kubernetes/kubernetes-gateway.md b/docs/content/reference/install-configuration/providers/kubernetes/kubernetes-gateway.md index f009d99ba..6452c8232 100644 --- a/docs/content/reference/install-configuration/providers/kubernetes/kubernetes-gateway.md +++ b/docs/content/reference/install-configuration/providers/kubernetes/kubernetes-gateway.md @@ -8,11 +8,11 @@ description: "Learn how to use the Kubernetes Gateway API as a provider for conf The Kubernetes Gateway provider is a Traefik implementation of the [Gateway API](https://gateway-api.sigs.k8s.io/) specification from the Kubernetes Special Interest Groups (SIGs). -This provider supports Standard version [v1.2.0](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v1.2.0) of the Gateway API specification. +This provider supports Standard version [v1.2.1](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v1.2.1) of the Gateway API specification. It fully supports all HTTP core and some extended features, as well as the `TCPRoute` and `TLSRoute` resources from the [Experimental channel](https://gateway-api.sigs.k8s.io/concepts/versioning/?h=#release-channels). -For more details, check out the conformance [report](https://github.com/kubernetes-sigs/gateway-api/tree/main/conformance/reports/v1.2.0/traefik-traefik). +For more details, check out the conformance [report](https://github.com/kubernetes-sigs/gateway-api/tree/main/conformance/reports/v1.2.1/traefik-traefik). !!! info "Using The Helm Chart" @@ -27,7 +27,7 @@ For more details, check out the conformance [report](https://github.com/kubernet ```bash # Install Gateway API CRDs from the Standard channel. - kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.0/standard-install.yaml + kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml ``` 2. Install/update the Traefik [RBAC](../../../dynamic-configuration/kubernetes-gateway-rbac.yml). diff --git a/docs/content/routing/providers/kubernetes-gateway.md b/docs/content/routing/providers/kubernetes-gateway.md index 50ccfd565..3137db830 100644 --- a/docs/content/routing/providers/kubernetes-gateway.md +++ b/docs/content/routing/providers/kubernetes-gateway.md @@ -8,11 +8,11 @@ description: "The Kubernetes Gateway API can be used as a provider for routing a When using the Kubernetes Gateway API provider, Traefik leverages the Gateway API Custom Resource Definitions (CRDs) to obtain its routing configuration. For detailed information on the Gateway API concepts and resources, refer to the official [documentation](https://gateway-api.sigs.k8s.io/). -The Kubernetes Gateway API provider supports version [v1.2.0](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v1.2.0) of the specification. +The Kubernetes Gateway API provider supports version [v1.2.1](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v1.2.1) of the specification. It fully supports all `HTTPRoute` core and some extended features, like `GRPCRoute`, as well as the `TCPRoute` and `TLSRoute` resources from the [Experimental channel](https://gateway-api.sigs.k8s.io/concepts/versioning/?h=#release-channels). -For more details, check out the conformance [report](https://github.com/kubernetes-sigs/gateway-api/tree/main/conformance/reports/v1.2.0/traefik-traefik). +For more details, check out the conformance [report](https://github.com/kubernetes-sigs/gateway-api/tree/main/conformance/reports/v1.2.1/traefik-traefik). ## Deploying a Gateway From 95f20fc753aa3c6f2b408f5691fe0786ae77108b Mon Sep 17 00:00:00 2001 From: Daniel Anugerah Date: Fri, 20 Dec 2024 21:18:04 +0800 Subject: [PATCH 5/6] Configure ErrorLog in httputil.ReverseProxy --- pkg/server/service/proxy.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkg/server/service/proxy.go b/pkg/server/service/proxy.go index 257c4ce0d..13d107a32 100644 --- a/pkg/server/service/proxy.go +++ b/pkg/server/service/proxy.go @@ -5,6 +5,7 @@ import ( "errors" "fmt" "io" + stdlog "log" "net" "net/http" "net/http/httputil" @@ -12,6 +13,7 @@ import ( "strings" "time" + "github.com/sirupsen/logrus" ptypes "github.com/traefik/paerser/types" "github.com/traefik/traefik/v2/pkg/config/dynamic" "github.com/traefik/traefik/v2/pkg/log" @@ -81,6 +83,7 @@ func buildProxy(passHostHeader *bool, responseForwarding *dynamic.ResponseForwar Transport: roundTripper, FlushInterval: time.Duration(flushInterval), BufferPool: bufferPool, + ErrorLog: stdlog.New(log.WithoutContext().WriterLevel(logrus.DebugLevel), "", 0), ErrorHandler: func(w http.ResponseWriter, request *http.Request, err error) { statusCode := http.StatusInternalServerError From 35ce6baaae951127da9f938ee40edae6367a52ce Mon Sep 17 00:00:00 2001 From: Kevin Pollet Date: Fri, 20 Dec 2024 14:36:06 +0100 Subject: [PATCH 6/6] Bump golang.org/x/net to v0.33.0 --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 5d19f45f3..40a12d07f 100644 --- a/go.mod +++ b/go.mod @@ -69,7 +69,7 @@ require ( go.elastic.co/apm/v2 v2.4.8 golang.org/x/exp v0.0.0-20240909161429-701f63a606c0 // No tag on the repo. golang.org/x/mod v0.21.0 - golang.org/x/net v0.30.0 + golang.org/x/net v0.33.0 golang.org/x/text v0.21.0 golang.org/x/time v0.7.0 golang.org/x/tools v0.25.0 diff --git a/go.sum b/go.sum index 6e96dadd4..850336bc6 100644 --- a/go.sum +++ b/go.sum @@ -1600,8 +1600,8 @@ golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= -golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4= -golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU= +golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I= +golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=