From 5451f0cb17b9aad46404f38437b0e349118562d7 Mon Sep 17 00:00:00 2001 From: Oliver Gould Date: Wed, 4 Dec 2024 19:02:53 +0000 Subject: [PATCH] build(deps-dev): bump linkerd/dev from v43 to v44 --- .devcontainer/devcontainer.json | 2 +- .github/workflows/actions.yml | 4 +- .github/workflows/codecov.yml | 4 +- .github/workflows/codeql.yml | 2 +- .github/workflows/devcontainer.yml | 4 +- .github/workflows/go.yml | 6 +- .github/workflows/helm.yml | 2 +- .github/workflows/integration.yml | 12 +- .github/workflows/proto.yml | 2 +- .github/workflows/release.yml | 6 +- .github/workflows/rust.yml | 8 +- .github/workflows/shell.yml | 2 +- .golangci.yml | 16 +- Dockerfile-proxy | 2 +- bin/k3d | 2 +- charts/linkerd-control-plane/README.md | 8 +- charts/linkerd-crds/README.md | 2 +- charts/linkerd2-cni/README.md | 2 +- charts/partials/README.md | 2 +- cli/Dockerfile | 2 +- controller/Dockerfile | 2 +- controller/gen/common/net/net.pb.go | 74 +- deny.toml | 23 +- go.mod | 2 +- jaeger/charts/linkerd-jaeger/README.md | 2 +- jaeger/injector/Dockerfile | 2 +- .../linkerd-multicluster-link/README.md | 2 +- .../charts/linkerd-multicluster/README.md | 2 +- multicluster/cmd/check.go | 16 +- pkg/healthcheck/healthcheck.go | 4 +- pkg/identity/service.go | 2 +- pkg/inject/inject.go | 2 +- pkg/protohttp/protohttp_test.go | 2 +- pkg/version/version_test.go | 3 +- policy-controller/Dockerfile | 2 +- policy-controller/core/Cargo.toml | 2 +- policy-controller/grpc/src/outbound/grpc.rs | 4 +- policy-controller/grpc/src/outbound/http.rs | 4 +- policy-controller/k8s/api/src/duration.rs | 2 +- policy-controller/k8s/index/Cargo.toml | 2 +- .../k8s/index/src/inbound/workload.rs | 4 +- .../src/outbound/index/egress_network.rs | 12 +- policy-controller/k8s/status/src/index.rs | 7 +- rust-toolchain.toml | 2 +- .../deep/dualstack/dualstack_test.go | 4 +- .../testdata/ipfamilies-server-client.yml | 2 +- .../integration/install/inject/inject_test.go | 4 +- .../multicluster-traffic/pod_to_pod_test.go | 2 +- test/integration/viz/install_test.go | 2 +- viz/charts/linkerd-viz/README.md | 2 +- viz/metrics-api/Dockerfile | 2 +- viz/metrics-api/gen/viz/viz.pb.go | 1112 ++++------------- viz/metrics-api/gen/viz/viz_grpc.pb.go | 76 +- viz/pkg/healthcheck/healthcheck.go | 2 +- viz/tap/Dockerfile | 2 +- viz/tap/api/grpc_server.go | 2 +- viz/tap/gen/tap/viz_tap.pb.go | 374 ++---- viz/tap/gen/tap/viz_tap_grpc.pb.go | 124 +- web/Dockerfile | 2 +- 59 files changed, 509 insertions(+), 1472 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 38eb2857e0607..e55a620a13881 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,6 +1,6 @@ { "name": "linkerd2", - "image": "ghcr.io/linkerd/dev:v43", + "image": "ghcr.io/linkerd/dev:v44", // "dockerFile": "./Dockerfile", // "context": "..", "features": { diff --git a/.github/workflows/actions.yml b/.github/workflows/actions.yml index 64895c1402cc0..a1103f1b86b5a 100644 --- a/.github/workflows/actions.yml +++ b/.github/workflows/actions.yml @@ -14,13 +14,13 @@ jobs: runs-on: ubuntu-22.04 timeout-minutes: 10 steps: - - uses: linkerd/dev/actions/setup-tools@v43 + - uses: linkerd/dev/actions/setup-tools@v44 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: just-dev lint-actions devcontainer-versions: runs-on: ubuntu-22.04 steps: - - uses: linkerd/dev/actions/setup-tools@v43 + - uses: linkerd/dev/actions/setup-tools@v44 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: just-dev check-action-images diff --git a/.github/workflows/codecov.yml b/.github/workflows/codecov.yml index 066f13b103f76..e8271c4b79bcb 100644 --- a/.github/workflows/codecov.yml +++ b/.github/workflows/codecov.yml @@ -14,7 +14,7 @@ jobs: timeout-minutes: 30 runs-on: ubuntu-22.04 container: - image: golang:1.22 + image: golang:1.23 steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: go install gotest.tools/gotestsum@v0.4.2 @@ -51,7 +51,7 @@ jobs: runs-on: ubuntu-22.04 timeout-minutes: 15 container: - image: docker://rust:1.76.0 + image: docker://rust:1.83.0 options: --security-opt seccomp=unconfined steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 5ff9edd2d4e2a..6f925b3bb2f3d 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -38,7 +38,7 @@ jobs: steps: - uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed with: - go-version: "1.22" + go-version: "1.23" - name: Checkout uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 diff --git a/.github/workflows/devcontainer.yml b/.github/workflows/devcontainer.yml index efb1485b98205..c2b39d6f1c1ff 100644 --- a/.github/workflows/devcontainer.yml +++ b/.github/workflows/devcontainer.yml @@ -15,7 +15,7 @@ permissions: jobs: rust-version: runs-on: ubuntu-22.04 - container: ghcr.io/linkerd/dev:v43-rust + container: ghcr.io/linkerd/dev:v44-rust steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - shell: bash @@ -39,6 +39,6 @@ jobs: devcontainer-image: runs-on: ubuntu-22.04 steps: - - uses: linkerd/dev/actions/setup-tools@v43 + - uses: linkerd/dev/actions/setup-tools@v44 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: just-dev pull-dev-image diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index cb699455e34ae..968ccd0cba069 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -29,7 +29,7 @@ jobs: if: needs.meta.outputs.changed == 'true' timeout-minutes: 10 runs-on: ubuntu-22.04 - container: ghcr.io/linkerd/dev:v43-go + container: ghcr.io/linkerd/dev:v44-go steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: git config --global --add safe.directory "$PWD" # actions/runner#2033 @@ -40,7 +40,7 @@ jobs: if: needs.meta.outputs.changed == 'true' timeout-minutes: 10 runs-on: ubuntu-22.04 - container: ghcr.io/linkerd/dev:v43-go + container: ghcr.io/linkerd/dev:v44-go steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: git config --global --add safe.directory "$PWD" # actions/runner#2033 @@ -51,7 +51,7 @@ jobs: if: needs.meta.outputs.changed == 'true' timeout-minutes: 10 runs-on: ubuntu-22.04 - container: ghcr.io/linkerd/dev:v43-go + container: ghcr.io/linkerd/dev:v44-go steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: git config --global --add safe.directory "$PWD" # actions/runner#2033 diff --git a/.github/workflows/helm.yml b/.github/workflows/helm.yml index e471ee9de47d6..e9401a08ec813 100644 --- a/.github/workflows/helm.yml +++ b/.github/workflows/helm.yml @@ -16,7 +16,7 @@ jobs: runs-on: ubuntu-22.04 timeout-minutes: 5 steps: - - uses: linkerd/dev/actions/setup-tools@v43 + - uses: linkerd/dev/actions/setup-tools@v44 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: helm-docs - run: git diff --exit-code -- **/charts/**/README.md diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index d3d7811c6219f..7ce29703f4415 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -10,10 +10,10 @@ env: CARGO_NET_RETRY: 10 DOCKER_REGISTRY: ghcr.io/linkerd GH_ANNOTATION: true - K3D_VERSION: v5.4.4 + K3D_VERSION: v5.7.5 RUST_BACKTRACE: short RUSTUP_MAX_RETRIES: 10 - YQ_VERSION: v4.25.1 + YQ_VERSION: v4.44.5 LINKERD2_PROXY_REPO: ${{ vars.LINKERD2_PROXY_REPO || 'linkerd/linkerd2-proxy' }} LINKERD2_PROXY_RELEASE_PREFIX: ${{ vars.LINKERD2_PROXY_RELEASE_PREFIX || 'release/' }} @@ -138,7 +138,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed with: - go-version: "1.22" + go-version: "1.23" - uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 with: pattern: image-archives-* @@ -265,7 +265,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed with: - go-version: "1.22" + go-version: "1.23" - uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 with: pattern: image-archives-* @@ -290,7 +290,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed with: - go-version: "1.22" + go-version: "1.23" - uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 with: pattern: image-archives-* @@ -324,7 +324,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed with: - go-version: "1.22" + go-version: "1.23" - uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 with: pattern: image-archives-* diff --git a/.github/workflows/proto.yml b/.github/workflows/proto.yml index 28691f76110e9..02fd18e72d27b 100644 --- a/.github/workflows/proto.yml +++ b/.github/workflows/proto.yml @@ -15,7 +15,7 @@ jobs: proto-diff: timeout-minutes: 10 runs-on: ubuntu-22.04 - container: ghcr.io/linkerd/dev:v43-go + container: ghcr.io/linkerd/dev:v44-go steps: - run: apt update && apt install -y unzip - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4fbd71e3b5841..653f95cea056d 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -11,7 +11,7 @@ permissions: env: GH_ANNOTATION: true DOCKER_REGISTRY: ghcr.io/linkerd - K3D_VERSION: v5.4.4 + K3D_VERSION: v5.7.5 LINKERD2_PROXY_REPO: ${{ vars.LINKERD2_PROXY_REPO }} jobs: @@ -98,7 +98,7 @@ jobs: uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed with: - go-version: "1.22" + go-version: "1.23" - name: Download image archives uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 with: @@ -130,7 +130,7 @@ jobs: uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed with: - go-version: "1.22" + go-version: "1.23" - name: Set environment variables from scripts run: | TAG='${{ needs.tag.outputs.tag }}' diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 1b197ae88bee9..51fdc2bd0e63c 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -43,7 +43,7 @@ jobs: fmt: timeout-minutes: 5 runs-on: ubuntu-22.04 - container: ghcr.io/linkerd/dev:v43-rust + container: ghcr.io/linkerd/dev:v44-rust steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: git config --global --add safe.directory "$PWD" # actions/runner#2033 @@ -52,7 +52,7 @@ jobs: clippy: timeout-minutes: 20 runs-on: ubuntu-22.04 - container: ghcr.io/linkerd/dev:v43-rust + container: ghcr.io/linkerd/dev:v44-rust steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: git config --global --add safe.directory "$PWD" # actions/runner#2033 @@ -63,7 +63,7 @@ jobs: check: timeout-minutes: 20 runs-on: ubuntu-22.04 - container: ghcr.io/linkerd/dev:v43-rust + container: ghcr.io/linkerd/dev:v44-rust steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: git config --global --add safe.directory "$PWD" # actions/runner#2033 @@ -74,7 +74,7 @@ jobs: name: test runs-on: ubuntu-22.04 timeout-minutes: 15 - container: ghcr.io/linkerd/dev:v43-rust + container: ghcr.io/linkerd/dev:v44-rust steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: git config --global --add safe.directory "$PWD" # actions/runner#2033 diff --git a/.github/workflows/shell.yml b/.github/workflows/shell.yml index bc9261712c474..ff4f8dbdff7bd 100644 --- a/.github/workflows/shell.yml +++ b/.github/workflows/shell.yml @@ -16,6 +16,6 @@ jobs: timeout-minutes: 10 runs-on: ubuntu-22.04 steps: - - uses: linkerd/dev/actions/setup-tools@v43 + - uses: linkerd/dev/actions/setup-tools@v44 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - run: just sh-lint diff --git a/.golangci.yml b/.golangci.yml index e63a06d81b827..67f93fe9881d9 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -7,15 +7,15 @@ run: deadline: 5m - skip-dirs: + exclude-dirs: - controller/gen linters: enable: - bodyclose + #TODO - copyloopvar - errcheck - errorlint - - exportloopref - gocritic - gosec - gosimple @@ -41,9 +41,7 @@ linters: # - maligned # - prealloc - disable: - # https://github.com/golangci/golangci-lint/issues/2649 - - structcheck + disable: [] linters-settings: revive: @@ -52,6 +50,14 @@ linters-settings: disabled: true stylecheck: checks: ["ST1019"] + errcheck: + exclude-functions: + - fmt.Fprint + - fmt.Fprintf + - fmt.Fprintln + gosec: + excludes: + - G115 # Potential integer overflow when converting between integer types issues: exclude-use-default: false diff --git a/Dockerfile-proxy b/Dockerfile-proxy index 1da0f7c0727de..78ddd4d166482 100644 --- a/Dockerfile-proxy +++ b/Dockerfile-proxy @@ -2,7 +2,7 @@ ARG RUNTIME_IMAGE=gcr.io/distroless/cc-debian12 ARG BUILDPLATFORM=linux/amd64 # Precompile key slow-to-build dependencies -FROM --platform=$BUILDPLATFORM golang:1.22-alpine AS go-deps +FROM --platform=$BUILDPLATFORM golang:1.23-alpine AS go-deps WORKDIR /linkerd-build COPY go.mod go.sum ./ COPY bin/install-deps bin/ diff --git a/bin/k3d b/bin/k3d index 7687ea80c6f14..61381a631f9bc 100755 --- a/bin/k3d +++ b/bin/k3d @@ -2,7 +2,7 @@ set -eu -K3D_VERSION=v5.4.3 +K3D_VERSION=v5.7.5 bindir=$( cd "${0%/*}" && pwd ) diff --git a/charts/linkerd-control-plane/README.md b/charts/linkerd-control-plane/README.md index 629a6c59aee69..0668f8b033a37 100644 --- a/charts/linkerd-control-plane/README.md +++ b/charts/linkerd-control-plane/README.md @@ -48,6 +48,9 @@ Note that the provided certificates must be ECDSA certificates. ## Adding Linkerd's Helm repository +Included here for completeness-sake, but should have already been added when +`linkerd-base` was installed. + ```bash # To add the repo for Linkerd edge releases: helm repo add linkerd https://helm.linkerd.io/edge @@ -66,6 +69,9 @@ helm install linkerd-control-plane -n linkerd \ linkerd/linkerd-control-plane ``` +Note that you require to install this chart in the same namespace you installed +the `linkerd-base` chart. + ## Setting High-Availability Besides the default `values.yaml` file, the chart provides a `values-ha.yaml` @@ -313,4 +319,4 @@ Kubernetes: `>=1.22.0-0` | webhookFailurePolicy | string | `"Ignore"` | Failure policy for the proxy injector | ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0) +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/charts/linkerd-crds/README.md b/charts/linkerd-crds/README.md index 90eff2c4fef77..00cdf00e84df4 100644 --- a/charts/linkerd-crds/README.md +++ b/charts/linkerd-crds/README.md @@ -70,4 +70,4 @@ Kubernetes: `>=1.22.0-0` | enableTlsRoutes | bool | `true` | | ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0) +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/charts/linkerd2-cni/README.md b/charts/linkerd2-cni/README.md index fab5716478dad..fbd3bd0f9c680 100644 --- a/charts/linkerd2-cni/README.md +++ b/charts/linkerd2-cni/README.md @@ -68,4 +68,4 @@ Kubernetes: `>=1.22.0-0` | useWaitFlag | bool | `false` | Configures the CNI plugin to use the -w flag for the iptables command | ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0) +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/charts/partials/README.md b/charts/partials/README.md index 10805c9b94558..ee32c551743f4 100644 --- a/charts/partials/README.md +++ b/charts/partials/README.md @@ -6,4 +6,4 @@ depended by the 'linkerd' and 'patch' charts. ![Version: 0.1.0](https://img.shields.io/badge/Version-0.1.0-informational?style=flat-square) ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0) +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/cli/Dockerfile b/cli/Dockerfile index 31288dbf16d46..54f1e76bc42b0 100644 --- a/cli/Dockerfile +++ b/cli/Dockerfile @@ -1,7 +1,7 @@ ARG BUILDPLATFORM=linux/amd64 # Precompile key slow-to-build dependencies -FROM --platform=$BUILDPLATFORM golang:1.22-alpine AS go-deps +FROM --platform=$BUILDPLATFORM golang:1.23-alpine AS go-deps WORKDIR /linkerd-build COPY go.mod go.sum ./ COPY bin/install-deps bin/ diff --git a/controller/Dockerfile b/controller/Dockerfile index bf0b890edeea8..b6a7617693240 100644 --- a/controller/Dockerfile +++ b/controller/Dockerfile @@ -1,7 +1,7 @@ ARG BUILDPLATFORM=linux/amd64 # Precompile key slow-to-build dependencies -FROM --platform=$BUILDPLATFORM golang:1.22-alpine AS go-deps +FROM --platform=$BUILDPLATFORM golang:1.23-alpine AS go-deps WORKDIR /linkerd-build COPY go.mod go.sum ./ COPY bin/install-deps bin/ diff --git a/controller/gen/common/net/net.pb.go b/controller/gen/common/net/net.pb.go index 25e2a0c5a7ad6..8a059897cfb28 100644 --- a/controller/gen/common/net/net.pb.go +++ b/controller/gen/common/net/net.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.35.2 // protoc v3.20.0 // source: common/net.proto @@ -34,11 +34,9 @@ type IPAddress struct { func (x *IPAddress) Reset() { *x = IPAddress{} - if protoimpl.UnsafeEnabled { - mi := &file_common_net_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_common_net_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *IPAddress) String() string { @@ -49,7 +47,7 @@ func (*IPAddress) ProtoMessage() {} func (x *IPAddress) ProtoReflect() protoreflect.Message { mi := &file_common_net_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -112,11 +110,9 @@ type IPv6 struct { func (x *IPv6) Reset() { *x = IPv6{} - if protoimpl.UnsafeEnabled { - mi := &file_common_net_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_common_net_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *IPv6) String() string { @@ -127,7 +123,7 @@ func (*IPv6) ProtoMessage() {} func (x *IPv6) ProtoReflect() protoreflect.Message { mi := &file_common_net_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -167,11 +163,9 @@ type TcpAddress struct { func (x *TcpAddress) Reset() { *x = TcpAddress{} - if protoimpl.UnsafeEnabled { - mi := &file_common_net_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_common_net_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TcpAddress) String() string { @@ -182,7 +176,7 @@ func (*TcpAddress) ProtoMessage() {} func (x *TcpAddress) ProtoReflect() protoreflect.Message { mi := &file_common_net_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -250,7 +244,7 @@ func file_common_net_proto_rawDescGZIP() []byte { } var file_common_net_proto_msgTypes = make([]protoimpl.MessageInfo, 3) -var file_common_net_proto_goTypes = []interface{}{ +var file_common_net_proto_goTypes = []any{ (*IPAddress)(nil), // 0: linkerd2.common.net.IPAddress (*IPv6)(nil), // 1: linkerd2.common.net.IPv6 (*TcpAddress)(nil), // 2: linkerd2.common.net.TcpAddress @@ -270,45 +264,7 @@ func file_common_net_proto_init() { if File_common_net_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_common_net_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IPAddress); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_common_net_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IPv6); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_common_net_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TcpAddress); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - file_common_net_proto_msgTypes[0].OneofWrappers = []interface{}{ + file_common_net_proto_msgTypes[0].OneofWrappers = []any{ (*IPAddress_Ipv4)(nil), (*IPAddress_Ipv6)(nil), } diff --git a/deny.toml b/deny.toml index 680f9dabe2880..ce185be1be0e4 100644 --- a/deny.toml +++ b/deny.toml @@ -1,3 +1,4 @@ +[graph] targets = [ { triple = "x86_64-unknown-linux-gnu" }, { triple = "aarch64-unknown-linux-gnu" }, @@ -7,14 +8,13 @@ targets = [ [advisories] db-path = "~/.cargo/advisory-db" db-urls = ["https://github.com/rustsec/advisory-db"] -vulnerability = "deny" -unmaintained = "warn" -yanked = "deny" -notice = "warn" -ignore = [] +ignore = [ + # Pending kube update + "RUSTSEC-2024-0384", + "RUSTSEC-2024-0388", +] [licenses] -unlicensed = "deny" allow = [ "Apache-2.0", "BSD-2-Clause", @@ -23,10 +23,6 @@ allow = [ "MIT", "Unicode-DFS-2016", ] -deny = [] -copyleft = "deny" -allow-osi-fsf-free = "neither" -default = "deny" confidence-threshold = 0.8 exceptions = [ { allow = [ @@ -51,21 +47,16 @@ multiple-versions = "deny" # Wildcard dependencies are used for all workspace-local crates. wildcards = "allow" highlight = "all" -deny = [] skip = [ # `rustls-pemfile` and `k8s-openapi` depend on versions of `base64` that # have diverged significantly. { name = "base64" }, - # syn v2 has been released and some libraries are slower to adopt it - { name = "syn", version = "1.0" }, # `tower-http` (a transitive dep via `kubert`) depends on v2.x of `bitflags`, # while pretty much the entire rest of the world is still on v1.x { name = "bitflags", version = "1.0" }, # https://github.com/hawkw/matchers/pull/4 { name = "regex-automata", version = "0.1" }, { name = "regex-syntax", version = "0.6" }, - # Pending hyper upgrade to 1.0 - { name = "socket2" }, ] skip-tree = [ # `serde_json` and `h2` depend on diverged versions of `indexmap` (2.0.x and @@ -77,7 +68,7 @@ skip-tree = [ unknown-registry = "deny" unknown-git = "deny" allow-registry = ["https://github.com/rust-lang/crates.io-index"] -allow-git = ["https://github.com/linkerd/linkerd2-proxy-api"] +allow-git = [] [sources.allow-org] github = [] diff --git a/go.mod b/go.mod index d15a8d1e44c98..83d3f56a592fb 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/linkerd/linkerd2 -go 1.22.0 +go 1.23.0 require ( contrib.go.opencensus.io/exporter/ocagent v0.7.0 diff --git a/jaeger/charts/linkerd-jaeger/README.md b/jaeger/charts/linkerd-jaeger/README.md index 45716079e6f22..70e20193233b7 100644 --- a/jaeger/charts/linkerd-jaeger/README.md +++ b/jaeger/charts/linkerd-jaeger/README.md @@ -148,4 +148,4 @@ Kubernetes: `>=1.22.0-0` | webhook.tolerations | string | `nil` | Tolerations section, See the [K8S documentation](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) for more information | ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0) +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/jaeger/injector/Dockerfile b/jaeger/injector/Dockerfile index 78d37af5f6146..912541d378e4f 100644 --- a/jaeger/injector/Dockerfile +++ b/jaeger/injector/Dockerfile @@ -1,7 +1,7 @@ ARG BUILDPLATFORM=linux/amd64 # Precompile key slow-to-build dependencies -FROM --platform=$BUILDPLATFORM golang:1.22-alpine AS go-deps +FROM --platform=$BUILDPLATFORM golang:1.23-alpine AS go-deps WORKDIR /linkerd-build COPY go.mod go.sum ./ COPY bin/install-deps bin/ diff --git a/multicluster/charts/linkerd-multicluster-link/README.md b/multicluster/charts/linkerd-multicluster-link/README.md index cad55493cc06a..6d40807bfe873 100644 --- a/multicluster/charts/linkerd-multicluster-link/README.md +++ b/multicluster/charts/linkerd-multicluster-link/README.md @@ -50,4 +50,4 @@ Kubernetes: `>=1.22.0-0` | tolerations | object | `{}` | Tolerations for the Service mirror pod | ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0) +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/multicluster/charts/linkerd-multicluster/README.md b/multicluster/charts/linkerd-multicluster/README.md index afcd5b66a5f3f..601c19ae711d6 100644 --- a/multicluster/charts/linkerd-multicluster/README.md +++ b/multicluster/charts/linkerd-multicluster/README.md @@ -120,4 +120,4 @@ Kubernetes: `>=1.22.0-0` | revisionHistoryLimit | int | `10` | Specifies the number of old ReplicaSets to retain to allow rollback. | ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0) +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/multicluster/cmd/check.go b/multicluster/cmd/check.go index 9f112c143c82d..fc5ef8a519c4a 100644 --- a/multicluster/cmd/check.go +++ b/multicluster/cmd/check.go @@ -475,7 +475,7 @@ func (hc *healthChecker) checkRemoteClusterAnchors(ctx context.Context, localAnc func (hc *healthChecker) checkServiceMirrorLocalRBAC(ctx context.Context) error { links := []string{} - errors := []string{} + messages := []string{} for _, link := range hc.links { err := healthcheck.CheckServiceAccounts( ctx, @@ -485,7 +485,7 @@ func (hc *healthChecker) checkServiceMirrorLocalRBAC(ctx context.Context) error serviceMirrorComponentsSelector(link.TargetClusterName), ) if err != nil { - errors = append(errors, err.Error()) + messages = append(messages, err.Error()) } err = healthcheck.CheckClusterRoles( ctx, @@ -495,7 +495,7 @@ func (hc *healthChecker) checkServiceMirrorLocalRBAC(ctx context.Context) error serviceMirrorComponentsSelector(link.TargetClusterName), ) if err != nil { - errors = append(errors, err.Error()) + messages = append(messages, err.Error()) } err = healthcheck.CheckClusterRoleBindings( ctx, @@ -505,7 +505,7 @@ func (hc *healthChecker) checkServiceMirrorLocalRBAC(ctx context.Context) error serviceMirrorComponentsSelector(link.TargetClusterName), ) if err != nil { - errors = append(errors, err.Error()) + messages = append(messages, err.Error()) } err = healthcheck.CheckRoles( ctx, @@ -516,7 +516,7 @@ func (hc *healthChecker) checkServiceMirrorLocalRBAC(ctx context.Context) error serviceMirrorComponentsSelector(link.TargetClusterName), ) if err != nil { - errors = append(errors, err.Error()) + messages = append(messages, err.Error()) } err = healthcheck.CheckRoleBindings( ctx, @@ -527,12 +527,12 @@ func (hc *healthChecker) checkServiceMirrorLocalRBAC(ctx context.Context) error serviceMirrorComponentsSelector(link.TargetClusterName), ) if err != nil { - errors = append(errors, err.Error()) + messages = append(messages, err.Error()) } links = append(links, fmt.Sprintf("\t* %s", link.TargetClusterName)) } - if len(errors) > 0 { - return fmt.Errorf(strings.Join(errors, "\n")) + if len(messages) > 0 { + return errors.New(strings.Join(messages, "\n")) } if len(links) == 0 { return healthcheck.SkipError{Reason: "no links"} diff --git a/pkg/healthcheck/healthcheck.go b/pkg/healthcheck/healthcheck.go index 30fa65ec20b4a..62dbf0fceb4b0 100644 --- a/pkg/healthcheck/healthcheck.go +++ b/pkg/healthcheck/healthcheck.go @@ -2403,7 +2403,7 @@ func (hc *HealthChecker) checkMisconfiguredOpaquePortAnnotations(ctx context.Con } if len(errStrings) >= 1 { - return fmt.Errorf(strings.Join(errStrings, "\n ")) + return errors.New(strings.Join(errStrings, "\n ")) } return nil @@ -2906,7 +2906,7 @@ func CheckPodsRunning(pods []corev1.Pod, namespace string) error { if namespace != "" { msg += fmt.Sprintf(" in the \"%s\" namespace", namespace) } - return fmt.Errorf(msg) + return errors.New(msg) } for _, pod := range pods { status := k8s.GetPodStatus(pod) diff --git a/pkg/identity/service.go b/pkg/identity/service.go index 33fef0650f538..b56492ecf5eca 100644 --- a/pkg/identity/service.go +++ b/pkg/identity/service.go @@ -103,7 +103,7 @@ func (svc *Service) Run(issuerEvent <-chan struct{}, issuerError <-chan error) { svc.recordEvent(nil, v1.EventTypeWarning, eventTypeSkipped, message) } else { message := "Updated identity issuer" - log.Infof(message) + log.Info(message) svc.recordEvent(nil, v1.EventTypeNormal, eventTypeUpdated, message) } case err := <-issuerError: diff --git a/pkg/inject/inject.go b/pkg/inject/inject.go index 090b4df862fe0..00a92aabe972d 100644 --- a/pkg/inject/inject.go +++ b/pkg/inject/inject.go @@ -1058,7 +1058,7 @@ func (conf *ResourceConfig) injectPodSpec(values *podPatch) { // use the primary container's capabilities to ensure psp compliance, if // enabled - if conf.pod.spec.Containers != nil && len(conf.pod.spec.Containers) > 0 { + if len(conf.pod.spec.Containers) > 0 { if sc := conf.pod.spec.Containers[0].SecurityContext; sc != nil && sc.Capabilities != nil { values.Proxy.Capabilities = &l5dcharts.Capabilities{ Add: []string{}, diff --git a/pkg/protohttp/protohttp_test.go b/pkg/protohttp/protohttp_test.go index cdd28d265106f..936edced33613 100644 --- a/pkg/protohttp/protohttp_test.go +++ b/pkg/protohttp/protohttp_test.go @@ -187,7 +187,7 @@ func TestWriteErrorToHttpResponse(t *testing.T) { responseWriter := newStubResponseWriter() expectedErrorMessage := "error message" - grpcError := status.Errorf(codes.AlreadyExists, expectedErrorMessage) + grpcError := status.Error(codes.AlreadyExists, expectedErrorMessage) WriteErrorToHTTPResponse(responseWriter, grpcError) diff --git a/pkg/version/version_test.go b/pkg/version/version_test.go index 82af240f55e12..b45beb72ed10a 100644 --- a/pkg/version/version_test.go +++ b/pkg/version/version_test.go @@ -2,7 +2,6 @@ package version import ( "errors" - "fmt" "testing" ) @@ -78,7 +77,7 @@ func TestMatch(t *testing.T) { for _, tc := range testCases { tc := tc // pin - t.Run(fmt.Sprintf(tc.name), func(t *testing.T) { + t.Run(tc.name, func(t *testing.T) { err := match(tc.expected, tc.actual) if (err == nil && tc.err != nil) || (err != nil && tc.err == nil) || diff --git a/policy-controller/Dockerfile b/policy-controller/Dockerfile index 808a668af47e5..ce5e42575514a 100644 --- a/policy-controller/Dockerfile +++ b/policy-controller/Dockerfile @@ -1,4 +1,4 @@ -FROM --platform=$BUILDPLATFORM ghcr.io/linkerd/dev:v43-rust-musl AS controller +FROM --platform=$BUILDPLATFORM ghcr.io/linkerd/dev:v44-rust-musl AS controller ARG BUILD_TYPE="release" WORKDIR /build RUN mkdir -p target/bin diff --git a/policy-controller/core/Cargo.toml b/policy-controller/core/Cargo.toml index 1dc7809e6867f..cc1e124d8cbc2 100644 --- a/policy-controller/core/Cargo.toml +++ b/policy-controller/core/Cargo.toml @@ -9,7 +9,7 @@ publish = false ahash = "0.8" anyhow = "1" async-trait = "0.1" -chrono = { version = "0.4.38", default_features = false } +chrono = { version = "0.4.38", default-features = false } futures = { version = "0.3", default-features = false, features = ["std"] } http = "0.2" ipnet = "2" diff --git a/policy-controller/grpc/src/outbound/grpc.rs b/policy-controller/grpc/src/outbound/grpc.rs index 3df4ef49f5c6b..f6b87076278ad 100644 --- a/policy-controller/grpc/src/outbound/grpc.rs +++ b/policy-controller/grpc/src/outbound/grpc.rs @@ -72,9 +72,6 @@ fn convert_outbound_route( parent_info: &ParentInfo, original_dst: Option, ) -> outbound::GrpcRoute { - // This encoder sets deprecated timeouts for older proxies. - #![allow(deprecated)] - let metadata = Some(meta::Metadata { kind: Some(meta::metadata::Kind::Resource(meta::Resource { group: gknn.group.to_string(), @@ -122,6 +119,7 @@ fn convert_outbound_route( if retry.is_none() { retry = service_retry.clone(); } + #[allow(deprecated)] outbound::grpc_route::Rule { matches: matches.into_iter().map(convert_match).collect(), backends: Some(outbound::grpc_route::Distribution { kind: Some(dist) }), diff --git a/policy-controller/grpc/src/outbound/http.rs b/policy-controller/grpc/src/outbound/http.rs index ad461a0aeb07f..8f8e9d63d48dc 100644 --- a/policy-controller/grpc/src/outbound/http.rs +++ b/policy-controller/grpc/src/outbound/http.rs @@ -99,8 +99,6 @@ fn convert_outbound_route( parent_info: &ParentInfo, original_dst: Option, ) -> outbound::HttpRoute { - // This encoder sets deprecated timeouts for older proxies. - #![allow(deprecated)] let metadata = Some(meta::Metadata { kind: Some(meta::metadata::Kind::Resource(meta::Resource { group: gknn.group.to_string(), @@ -148,6 +146,8 @@ fn convert_outbound_route( if retry.is_none() { retry = service_retry.clone(); } + // This encoder sets deprecated timeouts for older proxies. + #[allow(deprecated)] outbound::http_route::Rule { matches: matches.into_iter().map(convert_match).collect(), backends: Some(outbound::http_route::Distribution { kind: Some(dist) }), diff --git a/policy-controller/k8s/api/src/duration.rs b/policy-controller/k8s/api/src/duration.rs index 969ec9e703903..1775d52d4de6a 100644 --- a/policy-controller/k8s/api/src/duration.rs +++ b/policy-controller/k8s/api/src/duration.rs @@ -140,7 +140,7 @@ impl<'de> Deserialize<'de> for K8sDuration { D: Deserializer<'de>, { struct Visitor; - impl<'de> de::Visitor<'de> for Visitor { + impl de::Visitor<'_> for Visitor { type Value = K8sDuration; fn expecting(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { diff --git a/policy-controller/k8s/index/Cargo.toml b/policy-controller/k8s/index/Cargo.toml index 5194f5c0218d3..f4f679d73d2d0 100644 --- a/policy-controller/k8s/index/Cargo.toml +++ b/policy-controller/k8s/index/Cargo.toml @@ -8,7 +8,7 @@ publish = false [dependencies] ahash = "0.8" anyhow = "1" -chrono = { version = "0.4.38", default_features = false } +chrono = { version = "0.4.38", default-features = false } futures = { version = "0.3", default-features = false } http = "0.2" kube = { workspace = true, default-features = false, features = [ diff --git a/policy-controller/k8s/index/src/inbound/workload.rs b/policy-controller/k8s/index/src/inbound/workload.rs index 8efb42e9fc7c5..849f565b569ca 100644 --- a/policy-controller/k8s/index/src/inbound/workload.rs +++ b/policy-controller/k8s/index/src/inbound/workload.rs @@ -267,14 +267,14 @@ mod tests { let mut expected_5432 = BTreeSet::new(); expected_5432.insert("/liveness-container-1".to_string()); expected_5432.insert("/ready-container-1".to_string()); - assert!(probes.get(&port_5432).is_some()); + assert!(probes.contains_key(&port_5432)); assert_eq!(*probes.get(&port_5432).unwrap(), expected_5432); let port_6543 = u16::try_from(6543).and_then(NonZeroU16::try_from).unwrap(); let mut expected_6543 = BTreeSet::new(); expected_6543.insert("/liveness-container-2".to_string()); expected_6543.insert("/ready-container-2".to_string()); - assert!(probes.get(&port_6543).is_some()); + assert!(probes.contains_key(&port_6543)); assert_eq!(*probes.get(&port_6543).unwrap(), expected_6543); } diff --git a/policy-controller/k8s/index/src/outbound/index/egress_network.rs b/policy-controller/k8s/index/src/outbound/index/egress_network.rs index 3f361e76f32e4..771aaad05016a 100644 --- a/policy-controller/k8s/index/src/outbound/index/egress_network.rs +++ b/policy-controller/k8s/index/src/outbound/index/egress_network.rs @@ -134,7 +134,7 @@ mod test { #[test] fn test_picks_smallest_cidr() { let ip_addr = "192.168.0.4".parse().unwrap(); - let networks = vec![ + let networks = [ EgressNetwork { networks: vec![Network { cidr: "192.168.0.1/16".parse().unwrap(), @@ -165,7 +165,7 @@ mod test { #[test] fn test_picks_local_ns() { let ip_addr = "192.168.0.4".parse().unwrap(); - let networks = vec![ + let networks = [ EgressNetwork { networks: vec![Network { cidr: "192.168.0.1/16".parse().unwrap(), @@ -196,7 +196,7 @@ mod test { #[test] fn does_not_pick_network_in_unralated_ns() { let ip_addr = "192.168.0.4".parse().unwrap(); - let networks = vec![EgressNetwork { + let networks = [EgressNetwork { networks: vec![Network { cidr: "192.168.0.1/16".parse().unwrap(), except: None, @@ -215,7 +215,7 @@ mod test { #[test] fn test_picks_older_resource() { let ip_addr = "192.168.0.4".parse().unwrap(); - let networks = vec![ + let networks = [ EgressNetwork { networks: vec![Network { cidr: "192.168.0.1/16".parse().unwrap(), @@ -246,7 +246,7 @@ mod test { #[test] fn test_picks_alphabetical_order() { let ip_addr = "192.168.0.4".parse().unwrap(); - let networks = vec![ + let networks = [ EgressNetwork { networks: vec![Network { cidr: "192.168.0.1/16".parse().unwrap(), @@ -277,7 +277,7 @@ mod test { #[test] fn test_respects_exception() { let ip_addr = "192.168.0.4".parse().unwrap(); - let networks = vec![ + let networks = [ EgressNetwork { networks: vec![Network { cidr: "192.168.0.1/16".parse().unwrap(), diff --git a/policy-controller/k8s/status/src/index.rs b/policy-controller/k8s/status/src/index.rs index a9c674816af2b..794ab2f4c1c27 100644 --- a/policy-controller/k8s/status/src/index.rs +++ b/policy-controller/k8s/status/src/index.rs @@ -750,12 +750,7 @@ impl Index { id: &NamespaceGroupKindName, ratelimit: &HttpLocalRateLimitPolicyRef, ) -> Option> { - let status = self.target_ref_status(id, &ratelimit.target_ref); - - let Some(status) = status else { - return None; - }; - + let status = self.target_ref_status(id, &ratelimit.target_ref)?; if eq_time_insensitive_conditions(&status.conditions, &ratelimit.status_conditions) { return None; } diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 624eb0ea63901..0193dee360676 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,2 +1,2 @@ [toolchain] -channel = "1.76.0" +channel = "1.83.0" diff --git a/test/integration/deep/dualstack/dualstack_test.go b/test/integration/deep/dualstack/dualstack_test.go index 7a57b28de57e5..5ee16dc0c2432 100644 --- a/test/integration/deep/dualstack/dualstack_test.go +++ b/test/integration/deep/dualstack/dualstack_test.go @@ -145,7 +145,7 @@ func TestDualStack(t *testing.T) { testutil.AnnotatedFatalf(t, "unexpected error", "unexpected error: %v\noutput:\n%s", err, out) } if out != "IPv6\n" { - testutil.AnnotatedFatalf(t, "expected 'IPv6', received '%s'", out) + testutil.AnnotatedFatalf(t, "expected 'IPv6'", "received '%s'", out) } }) @@ -162,7 +162,7 @@ func TestDualStack(t *testing.T) { testutil.AnnotatedFatalf(t, "unexpected error", "unexpected error: %v\noutput:\n%s", err, out) } if out != "IPv6\n" { - testutil.AnnotatedFatalf(t, "expected 'IPv6', received '%s'", out) + testutil.AnnotatedFatalf(t, "expected 'IPv6'", "received '%s'", out) } } }) diff --git a/test/integration/deep/dualstack/testdata/ipfamilies-server-client.yml b/test/integration/deep/dualstack/testdata/ipfamilies-server-client.yml index 43b8a2b6361ec..8439ec5537071 100644 --- a/test/integration/deep/dualstack/testdata/ipfamilies-server-client.yml +++ b/test/integration/deep/dualstack/testdata/ipfamilies-server-client.yml @@ -15,7 +15,7 @@ spec: spec: containers: - image: ghcr.io/alpeb/family-server:v1 - image: golang:1.22-alpine + image: golang:1.23-alpine name: ipfamilies-server ports: - containerPort: 8080 diff --git a/test/integration/install/inject/inject_test.go b/test/integration/install/inject/inject_test.go index e58d678418a45..850bf8b8d30e5 100644 --- a/test/integration/install/inject/inject_test.go +++ b/test/integration/install/inject/inject_test.go @@ -183,11 +183,11 @@ func TestInjectAutoParams(t *testing.T) { }) if err != nil { - testutil.AnnotatedFatalf(t, "failed to find autoinjected pod: ", err.Error()) + testutil.AnnotatedFatal(t, "failed to find autoinjected pod: ", err.Error()) } if err := injectionValidator.ValidatePod(&pod.Spec); err != nil { - testutil.AnnotatedFatalf(t, "failed to validate auto injection", err.Error()) + testutil.AnnotatedFatal(t, "failed to validate auto injection", err.Error()) } }) } diff --git a/test/integration/multicluster/multicluster-traffic/pod_to_pod_test.go b/test/integration/multicluster/multicluster-traffic/pod_to_pod_test.go index d922b9b6347c9..d67c5f19c517d 100644 --- a/test/integration/multicluster/multicluster-traffic/pod_to_pod_test.go +++ b/test/integration/multicluster/multicluster-traffic/pod_to_pod_test.go @@ -102,7 +102,7 @@ func TestPodToPodTraffic(t *testing.T) { testutil.AnnotatedFatal(t, "mirror service should not have endpoints", "mirror service should not have endpoints") } if !kerrors.IsNotFound(err) { - testutil.AnnotatedFatalf(t, "failed to retrieve mirror service endpoints", err.Error()) + testutil.AnnotatedFatal(t, "failed to retrieve mirror service endpoints", err.Error()) } return nil }) diff --git a/test/integration/viz/install_test.go b/test/integration/viz/install_test.go index 6c2c4ba482750..12683f0a4fd94 100644 --- a/test/integration/viz/install_test.go +++ b/test/integration/viz/install_test.go @@ -151,7 +151,7 @@ func TestDashboard(t *testing.T) { output := strings.Join(outputLines, "") if !strings.Contains(output, dashboardURL) { testutil.AnnotatedFatalf(t, - "dashboard command failed. Expected url [%s] not present", dashboardURL) + "dashboard command failed", "Expected url [%s] not present", dashboardURL) } resp, err := TestHelper.HTTPGetURL(dashboardURL + "/api/version") diff --git a/viz/charts/linkerd-viz/README.md b/viz/charts/linkerd-viz/README.md index 178b014f94935..bb55c23deb19f 100644 --- a/viz/charts/linkerd-viz/README.md +++ b/viz/charts/linkerd-viz/README.md @@ -218,4 +218,4 @@ Kubernetes: `>=1.22.0-0` | tolerations | string | `nil` | Default tolerations section, See the [K8S documentation](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) for more information | ---------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0) +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/viz/metrics-api/Dockerfile b/viz/metrics-api/Dockerfile index b3050bcfccd6b..be86091ae5061 100644 --- a/viz/metrics-api/Dockerfile +++ b/viz/metrics-api/Dockerfile @@ -1,7 +1,7 @@ ARG BUILDPLATFORM=linux/amd64 # Precompile key slow-to-build dependencies -FROM --platform=$BUILDPLATFORM golang:1.22-alpine AS go-deps +FROM --platform=$BUILDPLATFORM golang:1.23-alpine AS go-deps WORKDIR /linkerd-build COPY go.mod go.sum ./ COPY bin/install-deps bin/ diff --git a/viz/metrics-api/gen/viz/viz.pb.go b/viz/metrics-api/gen/viz/viz.pb.go index df2831b39dd6f..8a76d12f92f61 100644 --- a/viz/metrics-api/gen/viz/viz.pb.go +++ b/viz/metrics-api/gen/viz/viz.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.35.2 // protoc v3.20.0 // source: viz.proto @@ -191,11 +191,9 @@ type Empty struct { func (x *Empty) Reset() { *x = Empty{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Empty) String() string { @@ -206,7 +204,7 @@ func (*Empty) ProtoMessage() {} func (x *Empty) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -234,11 +232,9 @@ type CheckResult struct { func (x *CheckResult) Reset() { *x = CheckResult{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *CheckResult) String() string { @@ -249,7 +245,7 @@ func (*CheckResult) ProtoMessage() {} func (x *CheckResult) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -300,11 +296,9 @@ type SelfCheckRequest struct { func (x *SelfCheckRequest) Reset() { *x = SelfCheckRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *SelfCheckRequest) String() string { @@ -315,7 +309,7 @@ func (*SelfCheckRequest) ProtoMessage() {} func (x *SelfCheckRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -340,11 +334,9 @@ type SelfCheckResponse struct { func (x *SelfCheckResponse) Reset() { *x = SelfCheckResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *SelfCheckResponse) String() string { @@ -355,7 +347,7 @@ func (*SelfCheckResponse) ProtoMessage() {} func (x *SelfCheckResponse) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -387,11 +379,9 @@ type ListServicesRequest struct { func (x *ListServicesRequest) Reset() { *x = ListServicesRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ListServicesRequest) String() string { @@ -402,7 +392,7 @@ func (*ListServicesRequest) ProtoMessage() {} func (x *ListServicesRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -434,11 +424,9 @@ type ListServicesResponse struct { func (x *ListServicesResponse) Reset() { *x = ListServicesResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ListServicesResponse) String() string { @@ -449,7 +437,7 @@ func (*ListServicesResponse) ProtoMessage() {} func (x *ListServicesResponse) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -482,11 +470,9 @@ type Service struct { func (x *Service) Reset() { *x = Service{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Service) String() string { @@ -497,7 +483,7 @@ func (*Service) ProtoMessage() {} func (x *Service) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -536,11 +522,9 @@ type ListPodsRequest struct { func (x *ListPodsRequest) Reset() { *x = ListPodsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ListPodsRequest) String() string { @@ -551,7 +535,7 @@ func (*ListPodsRequest) ProtoMessage() {} func (x *ListPodsRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -583,11 +567,9 @@ type ListPodsResponse struct { func (x *ListPodsResponse) Reset() { *x = ListPodsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ListPodsResponse) String() string { @@ -598,7 +580,7 @@ func (*ListPodsResponse) ProtoMessage() {} func (x *ListPodsResponse) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -649,11 +631,9 @@ type Pod struct { func (x *Pod) Reset() { *x = Pod{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Pod) String() string { @@ -664,7 +644,7 @@ func (*Pod) ProtoMessage() {} func (x *Pod) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -859,11 +839,9 @@ type HttpMethod struct { func (x *HttpMethod) Reset() { *x = HttpMethod{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *HttpMethod) String() string { @@ -874,7 +852,7 @@ func (*HttpMethod) ProtoMessage() {} func (x *HttpMethod) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -940,11 +918,9 @@ type Scheme struct { func (x *Scheme) Reset() { *x = Scheme{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Scheme) String() string { @@ -955,7 +931,7 @@ func (*Scheme) ProtoMessage() {} func (x *Scheme) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1017,11 +993,9 @@ type Headers struct { func (x *Headers) Reset() { *x = Headers{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Headers) String() string { @@ -1032,7 +1006,7 @@ func (*Headers) ProtoMessage() {} func (x *Headers) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1068,11 +1042,9 @@ type Eos struct { func (x *Eos) Reset() { *x = Eos{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Eos) String() string { @@ -1083,7 +1055,7 @@ func (*Eos) ProtoMessage() {} func (x *Eos) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1145,11 +1117,9 @@ type ApiError struct { func (x *ApiError) Reset() { *x = ApiError{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ApiError) String() string { @@ -1160,7 +1130,7 @@ func (*ApiError) ProtoMessage() {} func (x *ApiError) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1192,11 +1162,9 @@ type PodErrors struct { func (x *PodErrors) Reset() { *x = PodErrors{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *PodErrors) String() string { @@ -1207,7 +1175,7 @@ func (*PodErrors) ProtoMessage() {} func (x *PodErrors) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1251,11 +1219,9 @@ type Resource struct { func (x *Resource) Reset() { *x = Resource{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Resource) String() string { @@ -1266,7 +1232,7 @@ func (*Resource) ProtoMessage() {} func (x *Resource) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1319,11 +1285,9 @@ type ResourceSelection struct { func (x *ResourceSelection) Reset() { *x = ResourceSelection{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ResourceSelection) String() string { @@ -1334,7 +1298,7 @@ func (*ResourceSelection) ProtoMessage() {} func (x *ResourceSelection) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1374,11 +1338,9 @@ type ResourceError struct { func (x *ResourceError) Reset() { *x = ResourceError{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ResourceError) String() string { @@ -1389,7 +1351,7 @@ func (*ResourceError) ProtoMessage() {} func (x *ResourceError) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1437,11 +1399,9 @@ type StatSummaryRequest struct { func (x *StatSummaryRequest) Reset() { *x = StatSummaryRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StatSummaryRequest) String() string { @@ -1452,7 +1412,7 @@ func (*StatSummaryRequest) ProtoMessage() {} func (x *StatSummaryRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1559,11 +1519,9 @@ type StatSummaryResponse struct { func (x *StatSummaryResponse) Reset() { *x = StatSummaryResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StatSummaryResponse) String() string { @@ -1574,7 +1532,7 @@ func (*StatSummaryResponse) ProtoMessage() {} func (x *StatSummaryResponse) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1637,11 +1595,9 @@ type AuthzRequest struct { func (x *AuthzRequest) Reset() { *x = AuthzRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *AuthzRequest) String() string { @@ -1652,7 +1608,7 @@ func (*AuthzRequest) ProtoMessage() {} func (x *AuthzRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1695,11 +1651,9 @@ type AuthzResponse struct { func (x *AuthzResponse) Reset() { *x = AuthzResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *AuthzResponse) String() string { @@ -1710,7 +1664,7 @@ func (*AuthzResponse) ProtoMessage() {} func (x *AuthzResponse) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1778,11 +1732,9 @@ type BasicStats struct { func (x *BasicStats) Reset() { *x = BasicStats{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *BasicStats) String() string { @@ -1793,7 +1745,7 @@ func (*BasicStats) ProtoMessage() {} func (x *BasicStats) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1872,11 +1824,9 @@ type TcpStats struct { func (x *TcpStats) Reset() { *x = TcpStats{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TcpStats) String() string { @@ -1887,7 +1837,7 @@ func (*TcpStats) ProtoMessage() {} func (x *TcpStats) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1935,11 +1885,9 @@ type TrafficSplitStats struct { func (x *TrafficSplitStats) Reset() { *x = TrafficSplitStats{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TrafficSplitStats) String() string { @@ -1950,7 +1898,7 @@ func (*TrafficSplitStats) ProtoMessage() {} func (x *TrafficSplitStats) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2000,11 +1948,9 @@ type ServerStats struct { func (x *ServerStats) Reset() { *x = ServerStats{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ServerStats) String() string { @@ -2015,7 +1961,7 @@ func (*ServerStats) ProtoMessage() {} func (x *ServerStats) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[26] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2078,11 +2024,9 @@ type StatTable struct { func (x *StatTable) Reset() { *x = StatTable{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StatTable) String() string { @@ -2093,7 +2037,7 @@ func (*StatTable) ProtoMessage() {} func (x *StatTable) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[27] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2142,11 +2086,9 @@ type EdgesRequest struct { func (x *EdgesRequest) Reset() { *x = EdgesRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *EdgesRequest) String() string { @@ -2157,7 +2099,7 @@ func (*EdgesRequest) ProtoMessage() {} func (x *EdgesRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[28] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2193,11 +2135,9 @@ type EdgesResponse struct { func (x *EdgesResponse) Reset() { *x = EdgesResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *EdgesResponse) String() string { @@ -2208,7 +2148,7 @@ func (*EdgesResponse) ProtoMessage() {} func (x *EdgesResponse) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[29] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2274,11 +2214,9 @@ type Edge struct { func (x *Edge) Reset() { *x = Edge{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Edge) String() string { @@ -2289,7 +2227,7 @@ func (*Edge) ProtoMessage() {} func (x *Edge) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[30] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2355,11 +2293,9 @@ type TopRoutesRequest struct { func (x *TopRoutesRequest) Reset() { *x = TopRoutesRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TopRoutesRequest) String() string { @@ -2370,7 +2306,7 @@ func (*TopRoutesRequest) ProtoMessage() {} func (x *TopRoutesRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[31] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2450,11 +2386,9 @@ type TopRoutesResponse struct { func (x *TopRoutesResponse) Reset() { *x = TopRoutesResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TopRoutesResponse) String() string { @@ -2465,7 +2399,7 @@ func (*TopRoutesResponse) ProtoMessage() {} func (x *TopRoutesResponse) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[32] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2528,11 +2462,9 @@ type RouteTable struct { func (x *RouteTable) Reset() { *x = RouteTable{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *RouteTable) String() string { @@ -2543,7 +2475,7 @@ func (*RouteTable) ProtoMessage() {} func (x *RouteTable) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[33] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2582,11 +2514,9 @@ type GatewaysTable struct { func (x *GatewaysTable) Reset() { *x = GatewaysTable{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GatewaysTable) String() string { @@ -2597,7 +2527,7 @@ func (*GatewaysTable) ProtoMessage() {} func (x *GatewaysTable) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[34] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2631,11 +2561,9 @@ type GatewaysRequest struct { func (x *GatewaysRequest) Reset() { *x = GatewaysRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GatewaysRequest) String() string { @@ -2646,7 +2574,7 @@ func (*GatewaysRequest) ProtoMessage() {} func (x *GatewaysRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[35] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2696,11 +2624,9 @@ type GatewaysResponse struct { func (x *GatewaysResponse) Reset() { *x = GatewaysResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GatewaysResponse) String() string { @@ -2711,7 +2637,7 @@ func (*GatewaysResponse) ProtoMessage() {} func (x *GatewaysResponse) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[36] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2783,11 +2709,9 @@ type Headers_Header struct { func (x *Headers_Header) Reset() { *x = Headers_Header{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Headers_Header) String() string { @@ -2798,7 +2722,7 @@ func (*Headers_Header) ProtoMessage() {} func (x *Headers_Header) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[37] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2870,11 +2794,9 @@ type PodErrors_PodError struct { func (x *PodErrors_PodError) Reset() { *x = PodErrors_PodError{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *PodErrors_PodError) String() string { @@ -2885,7 +2807,7 @@ func (*PodErrors_PodError) ProtoMessage() {} func (x *PodErrors_PodError) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[38] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2938,11 +2860,9 @@ type PodErrors_PodError_ContainerError struct { func (x *PodErrors_PodError_ContainerError) Reset() { *x = PodErrors_PodError_ContainerError{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *PodErrors_PodError_ContainerError) String() string { @@ -2953,7 +2873,7 @@ func (*PodErrors_PodError_ContainerError) ProtoMessage() {} func (x *PodErrors_PodError_ContainerError) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[39] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3006,11 +2926,9 @@ type StatSummaryResponse_Ok struct { func (x *StatSummaryResponse_Ok) Reset() { *x = StatSummaryResponse_Ok{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StatSummaryResponse_Ok) String() string { @@ -3021,7 +2939,7 @@ func (*StatSummaryResponse_Ok) ProtoMessage() {} func (x *StatSummaryResponse_Ok) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[40] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3053,11 +2971,9 @@ type AuthzResponse_Ok struct { func (x *AuthzResponse_Ok) Reset() { *x = AuthzResponse_Ok{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *AuthzResponse_Ok) String() string { @@ -3068,7 +2984,7 @@ func (*AuthzResponse_Ok) ProtoMessage() {} func (x *AuthzResponse_Ok) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[41] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3100,11 +3016,9 @@ type StatTable_PodGroup struct { func (x *StatTable_PodGroup) Reset() { *x = StatTable_PodGroup{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StatTable_PodGroup) String() string { @@ -3115,7 +3029,7 @@ func (*StatTable_PodGroup) ProtoMessage() {} func (x *StatTable_PodGroup) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[42] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3162,11 +3076,9 @@ type StatTable_PodGroup_Row struct { func (x *StatTable_PodGroup_Row) Reset() { *x = StatTable_PodGroup_Row{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StatTable_PodGroup_Row) String() string { @@ -3177,7 +3089,7 @@ func (*StatTable_PodGroup_Row) ProtoMessage() {} func (x *StatTable_PodGroup_Row) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[43] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3279,11 +3191,9 @@ type EdgesResponse_Ok struct { func (x *EdgesResponse_Ok) Reset() { *x = EdgesResponse_Ok{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[45] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *EdgesResponse_Ok) String() string { @@ -3294,7 +3204,7 @@ func (*EdgesResponse_Ok) ProtoMessage() {} func (x *EdgesResponse_Ok) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[45] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3326,11 +3236,9 @@ type TopRoutesResponse_Ok struct { func (x *TopRoutesResponse_Ok) Reset() { *x = TopRoutesResponse_Ok{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TopRoutesResponse_Ok) String() string { @@ -3341,7 +3249,7 @@ func (*TopRoutesResponse_Ok) ProtoMessage() {} func (x *TopRoutesResponse_Ok) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[46] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3376,11 +3284,9 @@ type RouteTable_Row struct { func (x *RouteTable_Row) Reset() { *x = RouteTable_Row{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[47] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[47] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *RouteTable_Row) String() string { @@ -3391,7 +3297,7 @@ func (*RouteTable_Row) ProtoMessage() {} func (x *RouteTable_Row) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[47] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3451,11 +3357,9 @@ type GatewaysTable_Row struct { func (x *GatewaysTable_Row) Reset() { *x = GatewaysTable_Row{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[48] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GatewaysTable_Row) String() string { @@ -3466,7 +3370,7 @@ func (*GatewaysTable_Row) ProtoMessage() {} func (x *GatewaysTable_Row) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[48] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3547,11 +3451,9 @@ type GatewaysResponse_Ok struct { func (x *GatewaysResponse_Ok) Reset() { *x = GatewaysResponse_Ok{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_proto_msgTypes[49] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_proto_msgTypes[49] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GatewaysResponse_Ok) String() string { @@ -3562,7 +3464,7 @@ func (*GatewaysResponse_Ok) ProtoMessage() {} func (x *GatewaysResponse_Ok) ProtoReflect() protoreflect.Message { mi := &file_viz_proto_msgTypes[49] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4077,7 +3979,7 @@ func file_viz_proto_rawDescGZIP() []byte { var file_viz_proto_enumTypes = make([]protoimpl.EnumInfo, 3) var file_viz_proto_msgTypes = make([]protoimpl.MessageInfo, 50) -var file_viz_proto_goTypes = []interface{}{ +var file_viz_proto_goTypes = []any{ (CheckStatus)(0), // 0: linkerd2.viz.CheckStatus (HttpMethod_Registered)(0), // 1: linkerd2.viz.HttpMethod.Registered (Scheme_Registered)(0), // 2: linkerd2.viz.Scheme.Registered @@ -4217,597 +4119,7 @@ func file_viz_proto_init() { if File_viz_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_viz_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Empty); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CheckResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SelfCheckRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SelfCheckResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListServicesRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListServicesResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Service); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListPodsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListPodsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Pod); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HttpMethod); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Scheme); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Headers); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Eos); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApiError); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PodErrors); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Resource); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResourceSelection); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResourceError); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StatSummaryRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StatSummaryResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AuthzRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AuthzResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BasicStats); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TcpStats); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TrafficSplitStats); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ServerStats); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StatTable); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EdgesRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EdgesResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Edge); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TopRoutesRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TopRoutesResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RouteTable); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GatewaysTable); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GatewaysRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GatewaysResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Headers_Header); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PodErrors_PodError); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PodErrors_PodError_ContainerError); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StatSummaryResponse_Ok); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AuthzResponse_Ok); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StatTable_PodGroup); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StatTable_PodGroup_Row); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EdgesResponse_Ok); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TopRoutesResponse_Ok); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RouteTable_Row); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GatewaysTable_Row); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GatewaysResponse_Ok); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - file_viz_proto_msgTypes[9].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[9].OneofWrappers = []any{ (*Pod_Deployment)(nil), (*Pod_ReplicaSet)(nil), (*Pod_ReplicationController)(nil), @@ -4815,55 +4127,55 @@ func file_viz_proto_init() { (*Pod_DaemonSet)(nil), (*Pod_Job)(nil), } - file_viz_proto_msgTypes[10].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[10].OneofWrappers = []any{ (*HttpMethod_Registered_)(nil), (*HttpMethod_Unregistered)(nil), } - file_viz_proto_msgTypes[11].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[11].OneofWrappers = []any{ (*Scheme_Registered_)(nil), (*Scheme_Unregistered)(nil), } - file_viz_proto_msgTypes[13].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[13].OneofWrappers = []any{ (*Eos_GrpcStatusCode)(nil), (*Eos_ResetErrorCode)(nil), } - file_viz_proto_msgTypes[19].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[19].OneofWrappers = []any{ (*StatSummaryRequest_None)(nil), (*StatSummaryRequest_ToResource)(nil), (*StatSummaryRequest_FromResource)(nil), } - file_viz_proto_msgTypes[20].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[20].OneofWrappers = []any{ (*StatSummaryResponse_Ok_)(nil), (*StatSummaryResponse_Error)(nil), } - file_viz_proto_msgTypes[22].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[22].OneofWrappers = []any{ (*AuthzResponse_Ok_)(nil), (*AuthzResponse_Error)(nil), } - file_viz_proto_msgTypes[27].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[27].OneofWrappers = []any{ (*StatTable_PodGroup_)(nil), } - file_viz_proto_msgTypes[29].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[29].OneofWrappers = []any{ (*EdgesResponse_Ok_)(nil), (*EdgesResponse_Error)(nil), } - file_viz_proto_msgTypes[31].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[31].OneofWrappers = []any{ (*TopRoutesRequest_None)(nil), (*TopRoutesRequest_ToResource)(nil), } - file_viz_proto_msgTypes[32].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[32].OneofWrappers = []any{ (*TopRoutesResponse_Error)(nil), (*TopRoutesResponse_Ok_)(nil), } - file_viz_proto_msgTypes[36].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[36].OneofWrappers = []any{ (*GatewaysResponse_Ok_)(nil), (*GatewaysResponse_Error)(nil), } - file_viz_proto_msgTypes[37].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[37].OneofWrappers = []any{ (*Headers_Header_ValueStr)(nil), (*Headers_Header_ValueBin)(nil), } - file_viz_proto_msgTypes[38].OneofWrappers = []interface{}{ + file_viz_proto_msgTypes[38].OneofWrappers = []any{ (*PodErrors_PodError_Container)(nil), } type x struct{} diff --git a/viz/metrics-api/gen/viz/viz_grpc.pb.go b/viz/metrics-api/gen/viz/viz_grpc.pb.go index 19408c6457425..7acade30226cf 100644 --- a/viz/metrics-api/gen/viz/viz_grpc.pb.go +++ b/viz/metrics-api/gen/viz/viz_grpc.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: -// - protoc-gen-go-grpc v1.2.0 +// - protoc-gen-go-grpc v1.5.1 // - protoc v3.20.0 // source: viz.proto @@ -15,8 +15,19 @@ import ( // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + Api_StatSummary_FullMethodName = "/linkerd2.viz.Api/StatSummary" + Api_Edges_FullMethodName = "/linkerd2.viz.Api/Edges" + Api_Gateways_FullMethodName = "/linkerd2.viz.Api/Gateways" + Api_TopRoutes_FullMethodName = "/linkerd2.viz.Api/TopRoutes" + Api_ListPods_FullMethodName = "/linkerd2.viz.Api/ListPods" + Api_ListServices_FullMethodName = "/linkerd2.viz.Api/ListServices" + Api_SelfCheck_FullMethodName = "/linkerd2.viz.Api/SelfCheck" + Api_Authz_FullMethodName = "/linkerd2.viz.Api/Authz" +) // ApiClient is the client API for Api service. // @@ -41,8 +52,9 @@ func NewApiClient(cc grpc.ClientConnInterface) ApiClient { } func (c *apiClient) StatSummary(ctx context.Context, in *StatSummaryRequest, opts ...grpc.CallOption) (*StatSummaryResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(StatSummaryResponse) - err := c.cc.Invoke(ctx, "/linkerd2.viz.Api/StatSummary", in, out, opts...) + err := c.cc.Invoke(ctx, Api_StatSummary_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -50,8 +62,9 @@ func (c *apiClient) StatSummary(ctx context.Context, in *StatSummaryRequest, opt } func (c *apiClient) Edges(ctx context.Context, in *EdgesRequest, opts ...grpc.CallOption) (*EdgesResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(EdgesResponse) - err := c.cc.Invoke(ctx, "/linkerd2.viz.Api/Edges", in, out, opts...) + err := c.cc.Invoke(ctx, Api_Edges_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -59,8 +72,9 @@ func (c *apiClient) Edges(ctx context.Context, in *EdgesRequest, opts ...grpc.Ca } func (c *apiClient) Gateways(ctx context.Context, in *GatewaysRequest, opts ...grpc.CallOption) (*GatewaysResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(GatewaysResponse) - err := c.cc.Invoke(ctx, "/linkerd2.viz.Api/Gateways", in, out, opts...) + err := c.cc.Invoke(ctx, Api_Gateways_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -68,8 +82,9 @@ func (c *apiClient) Gateways(ctx context.Context, in *GatewaysRequest, opts ...g } func (c *apiClient) TopRoutes(ctx context.Context, in *TopRoutesRequest, opts ...grpc.CallOption) (*TopRoutesResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(TopRoutesResponse) - err := c.cc.Invoke(ctx, "/linkerd2.viz.Api/TopRoutes", in, out, opts...) + err := c.cc.Invoke(ctx, Api_TopRoutes_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -77,8 +92,9 @@ func (c *apiClient) TopRoutes(ctx context.Context, in *TopRoutesRequest, opts .. } func (c *apiClient) ListPods(ctx context.Context, in *ListPodsRequest, opts ...grpc.CallOption) (*ListPodsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(ListPodsResponse) - err := c.cc.Invoke(ctx, "/linkerd2.viz.Api/ListPods", in, out, opts...) + err := c.cc.Invoke(ctx, Api_ListPods_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -86,8 +102,9 @@ func (c *apiClient) ListPods(ctx context.Context, in *ListPodsRequest, opts ...g } func (c *apiClient) ListServices(ctx context.Context, in *ListServicesRequest, opts ...grpc.CallOption) (*ListServicesResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(ListServicesResponse) - err := c.cc.Invoke(ctx, "/linkerd2.viz.Api/ListServices", in, out, opts...) + err := c.cc.Invoke(ctx, Api_ListServices_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -95,8 +112,9 @@ func (c *apiClient) ListServices(ctx context.Context, in *ListServicesRequest, o } func (c *apiClient) SelfCheck(ctx context.Context, in *SelfCheckRequest, opts ...grpc.CallOption) (*SelfCheckResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(SelfCheckResponse) - err := c.cc.Invoke(ctx, "/linkerd2.viz.Api/SelfCheck", in, out, opts...) + err := c.cc.Invoke(ctx, Api_SelfCheck_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -104,8 +122,9 @@ func (c *apiClient) SelfCheck(ctx context.Context, in *SelfCheckRequest, opts .. } func (c *apiClient) Authz(ctx context.Context, in *AuthzRequest, opts ...grpc.CallOption) (*AuthzResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) out := new(AuthzResponse) - err := c.cc.Invoke(ctx, "/linkerd2.viz.Api/Authz", in, out, opts...) + err := c.cc.Invoke(ctx, Api_Authz_FullMethodName, in, out, cOpts...) if err != nil { return nil, err } @@ -114,7 +133,7 @@ func (c *apiClient) Authz(ctx context.Context, in *AuthzRequest, opts ...grpc.Ca // ApiServer is the server API for Api service. // All implementations must embed UnimplementedApiServer -// for forward compatibility +// for forward compatibility. type ApiServer interface { StatSummary(context.Context, *StatSummaryRequest) (*StatSummaryResponse, error) Edges(context.Context, *EdgesRequest) (*EdgesResponse, error) @@ -127,9 +146,12 @@ type ApiServer interface { mustEmbedUnimplementedApiServer() } -// UnimplementedApiServer must be embedded to have forward compatible implementations. -type UnimplementedApiServer struct { -} +// UnimplementedApiServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedApiServer struct{} func (UnimplementedApiServer) StatSummary(context.Context, *StatSummaryRequest) (*StatSummaryResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method StatSummary not implemented") @@ -156,6 +178,7 @@ func (UnimplementedApiServer) Authz(context.Context, *AuthzRequest) (*AuthzRespo return nil, status.Errorf(codes.Unimplemented, "method Authz not implemented") } func (UnimplementedApiServer) mustEmbedUnimplementedApiServer() {} +func (UnimplementedApiServer) testEmbeddedByValue() {} // UnsafeApiServer may be embedded to opt out of forward compatibility for this service. // Use of this interface is not recommended, as added methods to ApiServer will @@ -165,6 +188,13 @@ type UnsafeApiServer interface { } func RegisterApiServer(s grpc.ServiceRegistrar, srv ApiServer) { + // If the following call pancis, it indicates UnimplementedApiServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } s.RegisterService(&Api_ServiceDesc, srv) } @@ -178,7 +208,7 @@ func _Api_StatSummary_Handler(srv interface{}, ctx context.Context, dec func(int } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/linkerd2.viz.Api/StatSummary", + FullMethod: Api_StatSummary_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApiServer).StatSummary(ctx, req.(*StatSummaryRequest)) @@ -196,7 +226,7 @@ func _Api_Edges_Handler(srv interface{}, ctx context.Context, dec func(interface } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/linkerd2.viz.Api/Edges", + FullMethod: Api_Edges_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApiServer).Edges(ctx, req.(*EdgesRequest)) @@ -214,7 +244,7 @@ func _Api_Gateways_Handler(srv interface{}, ctx context.Context, dec func(interf } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/linkerd2.viz.Api/Gateways", + FullMethod: Api_Gateways_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApiServer).Gateways(ctx, req.(*GatewaysRequest)) @@ -232,7 +262,7 @@ func _Api_TopRoutes_Handler(srv interface{}, ctx context.Context, dec func(inter } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/linkerd2.viz.Api/TopRoutes", + FullMethod: Api_TopRoutes_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApiServer).TopRoutes(ctx, req.(*TopRoutesRequest)) @@ -250,7 +280,7 @@ func _Api_ListPods_Handler(srv interface{}, ctx context.Context, dec func(interf } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/linkerd2.viz.Api/ListPods", + FullMethod: Api_ListPods_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApiServer).ListPods(ctx, req.(*ListPodsRequest)) @@ -268,7 +298,7 @@ func _Api_ListServices_Handler(srv interface{}, ctx context.Context, dec func(in } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/linkerd2.viz.Api/ListServices", + FullMethod: Api_ListServices_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApiServer).ListServices(ctx, req.(*ListServicesRequest)) @@ -286,7 +316,7 @@ func _Api_SelfCheck_Handler(srv interface{}, ctx context.Context, dec func(inter } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/linkerd2.viz.Api/SelfCheck", + FullMethod: Api_SelfCheck_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApiServer).SelfCheck(ctx, req.(*SelfCheckRequest)) @@ -304,7 +334,7 @@ func _Api_Authz_Handler(srv interface{}, ctx context.Context, dec func(interface } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/linkerd2.viz.Api/Authz", + FullMethod: Api_Authz_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApiServer).Authz(ctx, req.(*AuthzRequest)) diff --git a/viz/pkg/healthcheck/healthcheck.go b/viz/pkg/healthcheck/healthcheck.go index f94f799fa53df..2fdd758154dac 100644 --- a/viz/pkg/healthcheck/healthcheck.go +++ b/viz/pkg/healthcheck/healthcheck.go @@ -414,7 +414,7 @@ func validateDataPlanePodReporting(pods []*pb.Pod) error { } if errMsg != "" { - return fmt.Errorf(errMsg) + return errors.New(errMsg) } return nil diff --git a/viz/tap/Dockerfile b/viz/tap/Dockerfile index a16c2c4d792b2..980d1479c1c6d 100644 --- a/viz/tap/Dockerfile +++ b/viz/tap/Dockerfile @@ -1,7 +1,7 @@ ARG BUILDPLATFORM=linux/amd64 # Precompile key slow-to-build dependencies -FROM --platform=$BUILDPLATFORM golang:1.22-alpine AS go-deps +FROM --platform=$BUILDPLATFORM golang:1.23-alpine AS go-deps WORKDIR /linkerd-build COPY go.mod go.sum ./ COPY bin/install-deps bin/ diff --git a/viz/tap/api/grpc_server.go b/viz/tap/api/grpc_server.go index 1e88ddecc189a..cc0b882ac67ad 100644 --- a/viz/tap/api/grpc_server.go +++ b/viz/tap/api/grpc_server.go @@ -125,7 +125,7 @@ func (s *GRPCTapServer) TapByResource(req *tapPb.TapByResourceRequest, stream ta } fmt.Fprintln(&errs, "restart these pods to enable tap and make them valid tap targets") } - return status.Errorf(codes.NotFound, errs.String()) + return status.Error(codes.NotFound, errs.String()) } log.Infof("Tapping %d pods for target: %q", len(pods), res.String()) diff --git a/viz/tap/gen/tap/viz_tap.pb.go b/viz/tap/gen/tap/viz_tap.pb.go index cf79eb252f78b..9ff3a810854d9 100644 --- a/viz/tap/gen/tap/viz_tap.pb.go +++ b/viz/tap/gen/tap/viz_tap.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.35.2 // protoc v3.20.0 // source: viz_tap.proto @@ -72,7 +72,7 @@ func (TapEvent_ProxyDirection) EnumDescriptor() ([]byte, []int) { return file_viz_tap_proto_rawDescGZIP(), []int{2, 0} } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in viz_tap.proto. type TapRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -97,11 +97,9 @@ type TapRequest struct { func (x *TapRequest) Reset() { *x = TapRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapRequest) String() string { @@ -112,7 +110,7 @@ func (*TapRequest) ProtoMessage() {} func (x *TapRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -248,11 +246,9 @@ type TapByResourceRequest struct { func (x *TapByResourceRequest) Reset() { *x = TapByResourceRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapByResourceRequest) String() string { @@ -263,7 +259,7 @@ func (*TapByResourceRequest) ProtoMessage() {} func (x *TapByResourceRequest) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -326,11 +322,9 @@ type TapEvent struct { func (x *TapEvent) Reset() { *x = TapEvent{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapEvent) String() string { @@ -341,7 +335,7 @@ func (*TapEvent) ProtoMessage() {} func (x *TapEvent) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -439,11 +433,9 @@ type TapByResourceRequest_Match struct { func (x *TapByResourceRequest_Match) Reset() { *x = TapByResourceRequest_Match{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapByResourceRequest_Match) String() string { @@ -454,7 +446,7 @@ func (*TapByResourceRequest_Match) ProtoMessage() {} func (x *TapByResourceRequest_Match) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -563,11 +555,9 @@ type TapByResourceRequest_Extract struct { func (x *TapByResourceRequest_Extract) Reset() { *x = TapByResourceRequest_Extract{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapByResourceRequest_Extract) String() string { @@ -578,7 +568,7 @@ func (*TapByResourceRequest_Extract) ProtoMessage() {} func (x *TapByResourceRequest_Extract) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -627,11 +617,9 @@ type TapByResourceRequest_Match_Seq struct { func (x *TapByResourceRequest_Match_Seq) Reset() { *x = TapByResourceRequest_Match_Seq{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapByResourceRequest_Match_Seq) String() string { @@ -642,7 +630,7 @@ func (*TapByResourceRequest_Match_Seq) ProtoMessage() {} func (x *TapByResourceRequest_Match_Seq) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -680,11 +668,9 @@ type TapByResourceRequest_Match_Http struct { func (x *TapByResourceRequest_Match_Http) Reset() { *x = TapByResourceRequest_Match_Http{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapByResourceRequest_Match_Http) String() string { @@ -695,7 +681,7 @@ func (*TapByResourceRequest_Match_Http) ProtoMessage() {} func (x *TapByResourceRequest_Match_Http) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -786,11 +772,9 @@ type TapByResourceRequest_Extract_Http struct { func (x *TapByResourceRequest_Extract_Http) Reset() { *x = TapByResourceRequest_Extract_Http{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapByResourceRequest_Extract_Http) String() string { @@ -801,7 +785,7 @@ func (*TapByResourceRequest_Extract_Http) ProtoMessage() {} func (x *TapByResourceRequest_Extract_Http) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -848,11 +832,9 @@ type TapByResourceRequest_Extract_Http_Headers struct { func (x *TapByResourceRequest_Extract_Http_Headers) Reset() { *x = TapByResourceRequest_Extract_Http_Headers{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapByResourceRequest_Extract_Http_Headers) String() string { @@ -863,7 +845,7 @@ func (*TapByResourceRequest_Extract_Http_Headers) ProtoMessage() {} func (x *TapByResourceRequest_Extract_Http_Headers) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -888,11 +870,9 @@ type TapEvent_EndpointMeta struct { func (x *TapEvent_EndpointMeta) Reset() { *x = TapEvent_EndpointMeta{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapEvent_EndpointMeta) String() string { @@ -903,7 +883,7 @@ func (*TapEvent_EndpointMeta) ProtoMessage() {} func (x *TapEvent_EndpointMeta) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -935,11 +915,9 @@ type TapEvent_RouteMeta struct { func (x *TapEvent_RouteMeta) Reset() { *x = TapEvent_RouteMeta{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapEvent_RouteMeta) String() string { @@ -950,7 +928,7 @@ func (*TapEvent_RouteMeta) ProtoMessage() {} func (x *TapEvent_RouteMeta) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -987,11 +965,9 @@ type TapEvent_Http struct { func (x *TapEvent_Http) Reset() { *x = TapEvent_Http{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapEvent_Http) String() string { @@ -1002,7 +978,7 @@ func (*TapEvent_Http) ProtoMessage() {} func (x *TapEvent_Http) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1080,11 +1056,9 @@ type TapEvent_Http_StreamId struct { func (x *TapEvent_Http_StreamId) Reset() { *x = TapEvent_Http_StreamId{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapEvent_Http_StreamId) String() string { @@ -1095,7 +1069,7 @@ func (*TapEvent_Http_StreamId) ProtoMessage() {} func (x *TapEvent_Http_StreamId) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1139,11 +1113,9 @@ type TapEvent_Http_RequestInit struct { func (x *TapEvent_Http_RequestInit) Reset() { *x = TapEvent_Http_RequestInit{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapEvent_Http_RequestInit) String() string { @@ -1154,7 +1126,7 @@ func (*TapEvent_Http_RequestInit) ProtoMessage() {} func (x *TapEvent_Http_RequestInit) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1224,11 +1196,9 @@ type TapEvent_Http_ResponseInit struct { func (x *TapEvent_Http_ResponseInit) Reset() { *x = TapEvent_Http_ResponseInit{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapEvent_Http_ResponseInit) String() string { @@ -1239,7 +1209,7 @@ func (*TapEvent_Http_ResponseInit) ProtoMessage() {} func (x *TapEvent_Http_ResponseInit) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1297,11 +1267,9 @@ type TapEvent_Http_ResponseEnd struct { func (x *TapEvent_Http_ResponseEnd) Reset() { *x = TapEvent_Http_ResponseEnd{} - if protoimpl.UnsafeEnabled { - mi := &file_viz_tap_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_viz_tap_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TapEvent_Http_ResponseEnd) String() string { @@ -1312,7 +1280,7 @@ func (*TapEvent_Http_ResponseEnd) ProtoMessage() {} func (x *TapEvent_Http_ResponseEnd) ProtoReflect() protoreflect.Message { mi := &file_viz_tap_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1613,7 +1581,7 @@ func file_viz_tap_proto_rawDescGZIP() []byte { var file_viz_tap_proto_enumTypes = make([]protoimpl.EnumInfo, 1) var file_viz_tap_proto_msgTypes = make([]protoimpl.MessageInfo, 18) -var file_viz_tap_proto_goTypes = []interface{}{ +var file_viz_tap_proto_goTypes = []any{ (TapEvent_ProxyDirection)(0), // 0: linkerd2.tap.TapEvent.ProxyDirection (*TapRequest)(nil), // 1: linkerd2.tap.TapRequest (*TapByResourceRequest)(nil), // 2: linkerd2.tap.TapByResourceRequest @@ -1693,227 +1661,33 @@ func file_viz_tap_proto_init() { if File_viz_tap_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_viz_tap_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapByResourceRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapEvent); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapByResourceRequest_Match); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapByResourceRequest_Extract); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapByResourceRequest_Match_Seq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapByResourceRequest_Match_Http); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapByResourceRequest_Extract_Http); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapByResourceRequest_Extract_Http_Headers); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapEvent_EndpointMeta); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapEvent_RouteMeta); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapEvent_Http); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapEvent_Http_StreamId); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapEvent_Http_RequestInit); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapEvent_Http_ResponseInit); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_viz_tap_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TapEvent_Http_ResponseEnd); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - file_viz_tap_proto_msgTypes[0].OneofWrappers = []interface{}{ + file_viz_tap_proto_msgTypes[0].OneofWrappers = []any{ (*TapRequest_Pod)(nil), (*TapRequest_Deployment)(nil), } - file_viz_tap_proto_msgTypes[2].OneofWrappers = []interface{}{ + file_viz_tap_proto_msgTypes[2].OneofWrappers = []any{ (*TapEvent_Http_)(nil), } - file_viz_tap_proto_msgTypes[3].OneofWrappers = []interface{}{ + file_viz_tap_proto_msgTypes[3].OneofWrappers = []any{ (*TapByResourceRequest_Match_All)(nil), (*TapByResourceRequest_Match_Any)(nil), (*TapByResourceRequest_Match_Not)(nil), (*TapByResourceRequest_Match_Destinations)(nil), (*TapByResourceRequest_Match_Http_)(nil), } - file_viz_tap_proto_msgTypes[4].OneofWrappers = []interface{}{ + file_viz_tap_proto_msgTypes[4].OneofWrappers = []any{ (*TapByResourceRequest_Extract_Http_)(nil), } - file_viz_tap_proto_msgTypes[6].OneofWrappers = []interface{}{ + file_viz_tap_proto_msgTypes[6].OneofWrappers = []any{ (*TapByResourceRequest_Match_Http_Scheme)(nil), (*TapByResourceRequest_Match_Http_Method)(nil), (*TapByResourceRequest_Match_Http_Authority)(nil), (*TapByResourceRequest_Match_Http_Path)(nil), } - file_viz_tap_proto_msgTypes[7].OneofWrappers = []interface{}{ + file_viz_tap_proto_msgTypes[7].OneofWrappers = []any{ (*TapByResourceRequest_Extract_Http_Headers_)(nil), } - file_viz_tap_proto_msgTypes[11].OneofWrappers = []interface{}{ + file_viz_tap_proto_msgTypes[11].OneofWrappers = []any{ (*TapEvent_Http_RequestInit_)(nil), (*TapEvent_Http_ResponseInit_)(nil), (*TapEvent_Http_ResponseEnd_)(nil), diff --git a/viz/tap/gen/tap/viz_tap_grpc.pb.go b/viz/tap/gen/tap/viz_tap_grpc.pb.go index 84ad69bd68f18..8541c67fb7a7a 100644 --- a/viz/tap/gen/tap/viz_tap_grpc.pb.go +++ b/viz/tap/gen/tap/viz_tap_grpc.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: -// - protoc-gen-go-grpc v1.2.0 +// - protoc-gen-go-grpc v1.5.1 // - protoc v3.20.0 // source: viz_tap.proto @@ -15,17 +15,22 @@ import ( // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + Tap_Tap_FullMethodName = "/linkerd2.tap.Tap/Tap" + Tap_TapByResource_FullMethodName = "/linkerd2.tap.Tap/TapByResource" +) // TapClient is the client API for Tap service. // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type TapClient interface { // Deprecated: Do not use. - Tap(ctx context.Context, in *TapRequest, opts ...grpc.CallOption) (Tap_TapClient, error) + Tap(ctx context.Context, in *TapRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[TapEvent], error) // Deprecated: Do not use. - TapByResource(ctx context.Context, in *TapByResourceRequest, opts ...grpc.CallOption) (Tap_TapByResourceClient, error) + TapByResource(ctx context.Context, in *TapByResourceRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[TapEvent], error) } type tapClient struct { @@ -37,12 +42,13 @@ func NewTapClient(cc grpc.ClientConnInterface) TapClient { } // Deprecated: Do not use. -func (c *tapClient) Tap(ctx context.Context, in *TapRequest, opts ...grpc.CallOption) (Tap_TapClient, error) { - stream, err := c.cc.NewStream(ctx, &Tap_ServiceDesc.Streams[0], "/linkerd2.tap.Tap/Tap", opts...) +func (c *tapClient) Tap(ctx context.Context, in *TapRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[TapEvent], error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + stream, err := c.cc.NewStream(ctx, &Tap_ServiceDesc.Streams[0], Tap_Tap_FullMethodName, cOpts...) if err != nil { return nil, err } - x := &tapTapClient{stream} + x := &grpc.GenericClientStream[TapRequest, TapEvent]{ClientStream: stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } @@ -52,30 +58,17 @@ func (c *tapClient) Tap(ctx context.Context, in *TapRequest, opts ...grpc.CallOp return x, nil } -type Tap_TapClient interface { - Recv() (*TapEvent, error) - grpc.ClientStream -} - -type tapTapClient struct { - grpc.ClientStream -} - -func (x *tapTapClient) Recv() (*TapEvent, error) { - m := new(TapEvent) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} +// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name. +type Tap_TapClient = grpc.ServerStreamingClient[TapEvent] // Deprecated: Do not use. -func (c *tapClient) TapByResource(ctx context.Context, in *TapByResourceRequest, opts ...grpc.CallOption) (Tap_TapByResourceClient, error) { - stream, err := c.cc.NewStream(ctx, &Tap_ServiceDesc.Streams[1], "/linkerd2.tap.Tap/TapByResource", opts...) +func (c *tapClient) TapByResource(ctx context.Context, in *TapByResourceRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[TapEvent], error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + stream, err := c.cc.NewStream(ctx, &Tap_ServiceDesc.Streams[1], Tap_TapByResource_FullMethodName, cOpts...) if err != nil { return nil, err } - x := &tapTapByResourceClient{stream} + x := &grpc.GenericClientStream[TapByResourceRequest, TapEvent]{ClientStream: stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } @@ -85,45 +78,35 @@ func (c *tapClient) TapByResource(ctx context.Context, in *TapByResourceRequest, return x, nil } -type Tap_TapByResourceClient interface { - Recv() (*TapEvent, error) - grpc.ClientStream -} - -type tapTapByResourceClient struct { - grpc.ClientStream -} - -func (x *tapTapByResourceClient) Recv() (*TapEvent, error) { - m := new(TapEvent) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} +// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name. +type Tap_TapByResourceClient = grpc.ServerStreamingClient[TapEvent] // TapServer is the server API for Tap service. // All implementations must embed UnimplementedTapServer -// for forward compatibility +// for forward compatibility. type TapServer interface { // Deprecated: Do not use. - Tap(*TapRequest, Tap_TapServer) error + Tap(*TapRequest, grpc.ServerStreamingServer[TapEvent]) error // Deprecated: Do not use. - TapByResource(*TapByResourceRequest, Tap_TapByResourceServer) error + TapByResource(*TapByResourceRequest, grpc.ServerStreamingServer[TapEvent]) error mustEmbedUnimplementedTapServer() } -// UnimplementedTapServer must be embedded to have forward compatible implementations. -type UnimplementedTapServer struct { -} +// UnimplementedTapServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedTapServer struct{} -func (UnimplementedTapServer) Tap(*TapRequest, Tap_TapServer) error { +func (UnimplementedTapServer) Tap(*TapRequest, grpc.ServerStreamingServer[TapEvent]) error { return status.Errorf(codes.Unimplemented, "method Tap not implemented") } -func (UnimplementedTapServer) TapByResource(*TapByResourceRequest, Tap_TapByResourceServer) error { +func (UnimplementedTapServer) TapByResource(*TapByResourceRequest, grpc.ServerStreamingServer[TapEvent]) error { return status.Errorf(codes.Unimplemented, "method TapByResource not implemented") } func (UnimplementedTapServer) mustEmbedUnimplementedTapServer() {} +func (UnimplementedTapServer) testEmbeddedByValue() {} // UnsafeTapServer may be embedded to opt out of forward compatibility for this service. // Use of this interface is not recommended, as added methods to TapServer will @@ -133,6 +116,13 @@ type UnsafeTapServer interface { } func RegisterTapServer(s grpc.ServiceRegistrar, srv TapServer) { + // If the following call pancis, it indicates UnimplementedTapServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } s.RegisterService(&Tap_ServiceDesc, srv) } @@ -141,42 +131,22 @@ func _Tap_Tap_Handler(srv interface{}, stream grpc.ServerStream) error { if err := stream.RecvMsg(m); err != nil { return err } - return srv.(TapServer).Tap(m, &tapTapServer{stream}) -} - -type Tap_TapServer interface { - Send(*TapEvent) error - grpc.ServerStream -} - -type tapTapServer struct { - grpc.ServerStream + return srv.(TapServer).Tap(m, &grpc.GenericServerStream[TapRequest, TapEvent]{ServerStream: stream}) } -func (x *tapTapServer) Send(m *TapEvent) error { - return x.ServerStream.SendMsg(m) -} +// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name. +type Tap_TapServer = grpc.ServerStreamingServer[TapEvent] func _Tap_TapByResource_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(TapByResourceRequest) if err := stream.RecvMsg(m); err != nil { return err } - return srv.(TapServer).TapByResource(m, &tapTapByResourceServer{stream}) -} - -type Tap_TapByResourceServer interface { - Send(*TapEvent) error - grpc.ServerStream + return srv.(TapServer).TapByResource(m, &grpc.GenericServerStream[TapByResourceRequest, TapEvent]{ServerStream: stream}) } -type tapTapByResourceServer struct { - grpc.ServerStream -} - -func (x *tapTapByResourceServer) Send(m *TapEvent) error { - return x.ServerStream.SendMsg(m) -} +// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name. +type Tap_TapByResourceServer = grpc.ServerStreamingServer[TapEvent] // Tap_ServiceDesc is the grpc.ServiceDesc for Tap service. // It's only intended for direct use with grpc.RegisterService, diff --git a/web/Dockerfile b/web/Dockerfile index 03013caad42c7..0949ee4d1fcb7 100644 --- a/web/Dockerfile +++ b/web/Dockerfile @@ -1,7 +1,7 @@ ARG BUILDPLATFORM=linux/amd64 # Precompile key slow-to-build dependencies -FROM --platform=$BUILDPLATFORM golang:1.22-alpine AS go-deps +FROM --platform=$BUILDPLATFORM golang:1.23-alpine AS go-deps WORKDIR /linkerd-build COPY go.mod go.sum ./ COPY bin/install-deps bin/