Skip to content

Commit 6aef3e3

Browse files
feat: operator v2 (for Hubble control plane) (#444)
# Description Writing a new operator to support Hubble in non-Cilium clusters (see #417). This operator manages all CiliumIdentities and CiliumEndpoints for the cluster. ``` > ./retina-operator -h Start Retina Operator Usage: retina-operator [flags] retina-operator [command] Available Commands: completion Generate the autocompletion script for the specified shell help Help about any command manage-cilium-crds Start the Retina operator for Hubble control plane Flags: --config string config file (default "retina/operator-config.yaml") --enable-leader-election Enable leader election for controller manager. -h, --help help for retina-operator --metrics-addr string The address the metric endpoint binds to. (default ":8080") --probe-addr string The address the probe endpoint binds to. (default ":8081") Use "retina-operator [command] --help" for more information about a command. > ./retina-operator manage-cilium-crds -h Start the Retina operator for Hubble control plane Usage: retina-operator manage-cilium-crds [flags] retina-operator manage-cilium-crds [command] Available Commands: hive Inspect the hive Flags: --allocator-list-timeout duration timeout to list initial allocator state (default 3m0s) --cilium-endpoint-gc-interval duration GC interval for cilium endpoints (default 5m0s) --cluster-id uint32 Unique identifier of the cluster --cluster-name string Name of the cluster (default "default") --config string Configuration file (to configure the operator, this argument is required) --config-dir string Configuration directory that contains a file for each option --controller-group-metrics strings List of controller group names for which to to enable metrics. Accepts 'all' and 'none'. The set of controller group names available is not guaranteed to be stable between Cilium versions. -D, --debug Enable debugging mode --enable-cilium-endpoint-slice If set to true, the CiliumEndpointSlice feature is enabled. If any CiliumEndpoints resources are created, updated, or deleted in the cluster, all those changes are broadcast as CiliumEndpointSlice updates to all of the Cilium agents. --enable-k8s Enable the k8s clientset (default true) --enable-k8s-api-discovery Enable discovery of Kubernetes API groups and resources with the discovery API --enable-k8s-endpoint-slice Enables k8s EndpointSlice feature in Cilium if the k8s cluster supports it (default true) --enable-metrics Enable Prometheus metrics --enable-telemetry enable telemetry (send logs and metrics to a remote server) -h, --help help for v2 --identity-allocation-mode string Identity allocation mode (default "crd") > ./retina-operator Starting Retina Operator ts=2024-06-17T17:30:29.829-0400 level=info caller=legacy/deployment.go:87 msg="Starting legacy operator undefined" > ./retina-operator v2 ... time="2024-06-17T17:31:44-04:00" level=info msg="starting hive. Some logs will say 'cilium' since some code is derived from cilium" subsys=operator time="2024-06-17T17:31:44-04:00" level=info msg=Invoked duration="66.167µs" function="github.com/microsoft/retina/operator/cmd/hubble.init.func10 (cmd/hubble/cells.go:47)" subsys=hive ts=2024-06-17T17:31:44.919-0400 level=info caller=hubble/zap.go:60 msg="Traces telemetry initialized with zapai" version= appInsightsID= ts=2024-06-17T17:31:44.919-0400 level=info caller=cell/invoke.go:40 msg=Invoked duration=0.016847234 subsys=hive function="github.com/microsoft/retina/operator/cmd/hubble.setupZapHook (cmd/hubble/zap.go:34)" ts=2024-06-17T17:31:44.919-0400 level=info caller=cell/invoke.go:40 msg=Invoked function="pprof.init.func1 (pkg/pprof/cell.go:50)" subsys=hive duration=0.000154826 ``` ## Related Issue Fixes #419 ## Checklist - [x] I have read the [contributing documentation](https://retina.sh/docs/contributing). - [x] I signed and signed-off the commits (`git commit -S -s ...`). See [this documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification) on signing commits. - [x] I have correctly attributed the author(s) of the code. - [x] I have tested the changes locally. - [x] I have followed the project's style guidelines. - [ ] I have updated the documentation, if necessary. - [x] I have added tests, if applicable. - Includes unit tests. - Will have to add e2e tests in follow-up PR. ## Screenshots (if applicable) or Testing Completed ![image](https://github.com/microsoft/retina/assets/2801007/d211d02a-fa18-4e3a-9b94-3cfaa159e279) ![image](https://github.com/microsoft/retina/assets/2801007/67e7385a-0fa3-4760-a546-a880a9d00221) ![image](https://github.com/microsoft/retina/assets/2801007/4c05e7cd-4d38-45be-a10f-6c2c29bf80ec) ![image](https://github.com/microsoft/retina/assets/2801007/c98eff10-7870-40d1-bd98-eaec36ed3414) ## Additional Notes Co-authored-by: Jacques Massa <[email protected]>
1 parent 6dc50c6 commit 6aef3e3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+4605
-301
lines changed

Makefile

+6-1
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ ALL_ARCH.windows = amd64
4949
ENABLE_TLS ?= true
5050
CERT_DIR := $(REPO_ROOT)/.certs
5151

52+
CERT_FILES := tls.crt:tls-client-cert-file \
53+
tls.key:tls-client-key-file \
54+
ca.crt:tls-ca-cert-files
55+
5256
# TAG is OS and platform agonstic, which can be used for binary version and image manifest tag,
5357
# while RETINA_PLATFORM_TAG is platform specific, which can be used for image built for specific platforms.
5458
RETINA_PLATFORM_TAG ?= $(TAG)-$(subst /,-,$(PLATFORM))
@@ -525,7 +529,8 @@ quick-deploy-hubble:
525529
$(MAKE) helm-uninstall || true
526530
$(MAKE) helm-install-without-tls HELM_IMAGE_TAG=$(TAG)-linux-amd64
527531

532+
528533
.PHONY: simplify-dashboards
529534
simplify-dashboards:
530-
cd deploy/legacy/graphana/dashboards && go test . -tags=dashboard,simplifydashboard -v && cd $(REPO_ROOT)
535+
cd deploy/legacy/grafana/dashboards && go test . -tags=dashboard,simplifydashboard -v && cd $(REPO_ROOT)
531536

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# DAshboards
2+
3+
Dashboards here are a copy of dashboards in the Dashboard [https://msazure.visualstudio.com/One/_git/Azure-Observability-ECG-Grafana-DashboardAuthoring?path=/Azure%20Dashboards/Managed%20Prometheus/Network-Observability] Authoring Repo.

deploy/hubble/manifests/controller/helm/retina/templates/operator/deployment.yaml

+12
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,18 @@ spec:
5454
image: {{ .Values.operator.repository }}:{{ .Values.operator.tag }}
5555
imagePullPolicy: {{ .Values.operator.pullPolicy }}
5656
name: retina-operator
57+
{{- if .Values.operator.container.command }}
58+
command:
59+
{{- range .Values.operator.container.command }}
60+
- {{ . }}
61+
{{- end }}
62+
{{- end }}
63+
{{- if .Values.operator.container.args}}
64+
args:
65+
{{- range $.Values.operator.container.args}}
66+
- {{ . | quote }}
67+
{{- end}}
68+
{{- end}}
5769
env:
5870
# this env var is used by retina OSS telemetry and zap
5971
- name: POD_NAME

deploy/hubble/manifests/controller/helm/retina/values.yaml

+9-1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,13 @@ operator:
2222
leaderElection: true
2323
identityGCInterval: 15m # cilium default
2424
endpointGCInterval: 5m # cilium default
25+
container:
26+
command:
27+
- "/retina-operator"
28+
args:
29+
- "manage-cilium-crds"
30+
- "--config-dir"
31+
- "/retina"
2532

2633
agent:
2734
leaderElection: false
@@ -32,7 +39,8 @@ agent:
3239
init:
3340
enabled: true
3441
name: retina-agent-init
35-
repository: acndev.azurecr.io/retina-agent-init
42+
repository: ghcr.io/microsoft/retina/retina-init
43+
3644
tag: "latest"
3745
pullPolicy: Always
3846
container:

deploy/legacy/manifests/controller/helm/retina/templates/operator.yaml

+13-3
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,20 @@ spec:
5050
securityContext:
5151
runAsNonRoot: true
5252
containers:
53-
- command:
54-
- /retina-operator
55-
image: {{ .Values.operator.repository }}:{{ .Values.operator.tag }}
53+
- image: {{ .Values.operator.repository }}:{{ .Values.operator.tag }}
5654
name: retina-operator
55+
{{- if .Values.operator.container.command }}
56+
command:
57+
{{- range .Values.operator.container.command }}
58+
- {{ . }}
59+
{{- end }}
60+
{{- end }}
61+
{{- if .Values.operator.container.args}}
62+
args:
63+
{{- range $.Values.operator.container.args}}
64+
- {{ . | quote }}
65+
{{- end}}
66+
{{- end}}
5767
volumeMounts:
5868
- name: retina-operator-config
5969
mountPath: /retina/

deploy/legacy/manifests/controller/helm/retina/values.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ operator:
2323
requests:
2424
cpu: 10m
2525
memory: 128Mi
26+
container:
27+
command:
28+
- "/retina-operator"
29+
args:
30+
- "--config"
31+
- "/retina/operator-config.yaml"
2632

2733
image:
2834
repository: ghcr.io/microsoft/retina/retina-agent

get-certs.sh

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
#!/usr/bin/env bash
2+
3+
set -euo pipefail
4+
set -x
5+
6+
# Directory where certificates will be stored
7+
CERT_DIR="$(pwd)/.certs"
8+
mkdir -p "$CERT_DIR"
9+
10+
declare -A CERT_FILES=(
11+
["tls.crt"]="tls-client-cert-file"
12+
["tls.key"]="tls-client-key-file"
13+
["ca.crt"]="tls-ca-cert-files"
14+
)
15+
16+
for FILE in "${!CERT_FILES[@]}"; do
17+
KEY="${CERT_FILES[$FILE]}"
18+
JSONPATH="{.data['${FILE//./\\.}']}"
19+
20+
# Retrieve the secret and decode it
21+
kubectl get secret hubble-relay-client-certs -n kube-system \
22+
-o jsonpath="${JSONPATH}" | \
23+
base64 -d > "$CERT_DIR/$FILE"
24+
25+
# Set the appropriate hubble CLI config
26+
hubble config set "$KEY" "$CERT_DIR/$FILE"
27+
done
28+
29+
hubble config set tls true
30+
hubble config set tls-server-name instance.hubble-relay.cilium.io

go.mod

+64
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@ module github.com/microsoft/retina
33
go 1.22.3
44

55
require (
6+
github.com/go-chi/chi/v5 v5.1.0
67
github.com/go-chi/chi/v5 v5.1.0
78
github.com/google/uuid v1.6.0
89
github.com/prometheus/client_golang v1.19.1
910
github.com/spf13/cobra v1.8.1
1011
go.uber.org/zap v1.27.0
12+
go.uber.org/zap v1.27.0
1113
k8s.io/client-go v0.30.1
1214
)
1315

@@ -37,6 +39,10 @@ require (
3739
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.9 // indirect
3840
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.13 // indirect
3941
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.13 // indirect
42+
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.3 // indirect
43+
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.9 // indirect
44+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.13 // indirect
45+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.13 // indirect
4046
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect
4147
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.13 // indirect
4248
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.3 // indirect
@@ -47,13 +53,25 @@ require (
4753
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.2 // indirect
4854
github.com/aws/aws-sdk-go-v2/service/sts v1.30.1 // indirect
4955
github.com/aws/smithy-go v1.20.3 // indirect
56+
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.13 // indirect
57+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.3 // indirect
58+
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.15 // indirect
59+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.15 // indirect
60+
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.13 // indirect
61+
github.com/aws/aws-sdk-go-v2/service/sso v1.22.1 // indirect
62+
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.2 // indirect
63+
github.com/aws/aws-sdk-go-v2/service/sts v1.30.1 // indirect
64+
github.com/aws/smithy-go v1.20.3 // indirect
5065
github.com/beorn7/perks v1.0.1 // indirect
5166
github.com/blang/semver/v4 v4.0.0 // indirect
5267
github.com/cespare/xxhash/v2 v2.2.0 // indirect
5368
github.com/chai2010/gettext-go v1.0.2 // indirect
5469
github.com/cilium/dns v1.1.51-0.20231120140355-729345173dc3 // indirect
5570
github.com/cilium/lumberjack/v2 v2.3.0 // indirect
5671
github.com/cilium/stream v0.0.0-20240226091623-f979d32855f8 // indirect
72+
github.com/cilium/dns v1.1.51-0.20231120140355-729345173dc3 // indirect
73+
github.com/cilium/lumberjack/v2 v2.3.0 // indirect
74+
github.com/cilium/stream v0.0.0-20240226091623-f979d32855f8 // indirect
5775
github.com/cncf/xds/go v0.0.0-20231128003011-0fa0005c9caa // indirect
5876
github.com/containerd/cgroups/v3 v3.0.2 // indirect
5977
github.com/containerd/containerd v1.7.14 // indirect
@@ -64,6 +82,7 @@ require (
6482
github.com/containerd/ttrpc v1.2.3 // indirect
6583
github.com/containerd/typeurl/v2 v2.1.1 // indirect
6684
github.com/containernetworking/cni v1.1.2 // indirect
85+
github.com/containernetworking/cni v1.1.2 // indirect
6786
github.com/coreos/go-semver v0.3.1 // indirect
6887
github.com/coreos/go-systemd/v22 v22.5.0 // indirect
6988
github.com/cyphar/filepath-securejoin v0.2.4 // indirect
@@ -80,13 +99,15 @@ require (
8099
github.com/emicklei/go-restful/v3 v3.11.2 // indirect
81100
github.com/envoyproxy/protoc-gen-validate v1.0.4 // indirect
82101
github.com/evanphx/json-patch v5.9.0+incompatible // indirect
102+
github.com/evanphx/json-patch v5.9.0+incompatible // indirect
83103
github.com/evanphx/json-patch/v5 v5.9.0 // indirect
84104
github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d // indirect
85105
github.com/fatih/color v1.16.0 // indirect
86106
github.com/felixge/httpsnoop v1.0.4 // indirect
87107
github.com/fsnotify/fsnotify v1.7.0 // indirect
88108
github.com/go-errors/errors v1.4.2 // indirect
89109
github.com/go-gorp/gorp/v3 v3.1.0 // indirect
110+
github.com/go-jose/go-jose/v3 v3.0.3 // indirect
90111
github.com/go-logr/stdr v1.2.2 // indirect
91112
github.com/go-openapi/analysis v0.23.0 // indirect
92113
github.com/go-openapi/errors v0.22.0 // indirect
@@ -98,6 +119,16 @@ require (
98119
github.com/go-openapi/strfmt v0.23.0 // indirect
99120
github.com/go-openapi/swag v0.23.0 // indirect
100121
github.com/go-openapi/validate v0.24.0 // indirect
122+
github.com/go-openapi/analysis v0.23.0 // indirect
123+
github.com/go-openapi/errors v0.22.0 // indirect
124+
github.com/go-openapi/jsonpointer v0.21.0 // indirect
125+
github.com/go-openapi/jsonreference v0.21.0 // indirect
126+
github.com/go-openapi/loads v0.22.0 // indirect
127+
github.com/go-openapi/runtime v0.28.0 // indirect
128+
github.com/go-openapi/spec v0.21.0 // indirect
129+
github.com/go-openapi/strfmt v0.23.0 // indirect
130+
github.com/go-openapi/swag v0.23.0 // indirect
131+
github.com/go-openapi/validate v0.24.0 // indirect
101132
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
102133
github.com/gobwas/glob v0.2.3 // indirect
103134
github.com/godbus/dbus/v5 v5.1.0 // indirect
@@ -108,8 +139,10 @@ require (
108139
github.com/google/btree v1.1.2 // indirect
109140
github.com/google/gnostic-models v0.6.9-0.20230804172637-c7be7c783f49 // indirect
110141
github.com/google/gops v0.3.27 // indirect
142+
github.com/google/gops v0.3.27 // indirect
111143
github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 // indirect
112144
github.com/google/renameio/v2 v2.0.0 // indirect
145+
github.com/google/renameio/v2 v2.0.0 // indirect
113146
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect
114147
github.com/gorilla/mux v1.8.1 // indirect
115148
github.com/gorilla/websocket v1.5.1 // indirect
@@ -121,6 +154,7 @@ require (
121154
github.com/hashicorp/go-hclog v1.5.0 // indirect
122155
github.com/hashicorp/go-immutable-radix v1.3.1 // indirect
123156
github.com/hashicorp/go-immutable-radix/v2 v2.1.0 // indirect
157+
github.com/hashicorp/go-immutable-radix/v2 v2.1.0 // indirect
124158
github.com/hashicorp/go-multierror v1.1.1 // indirect
125159
github.com/hashicorp/go-rootcerts v1.0.2 // indirect
126160
github.com/hashicorp/golang-lru v0.5.4 // indirect
@@ -141,6 +175,7 @@ require (
141175
github.com/lib/pq v1.10.9 // indirect
142176
github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de // indirect
143177
github.com/mackerelio/go-osstat v0.2.4 // indirect
178+
github.com/mackerelio/go-osstat v0.2.4 // indirect
144179
github.com/magiconair/properties v1.8.7 // indirect
145180
github.com/mailru/easyjson v0.7.7 // indirect
146181
github.com/mattn/go-colorable v0.1.13 // indirect
@@ -177,6 +212,7 @@ require (
177212
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
178213
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
179214
github.com/prometheus/procfs v0.15.1 // indirect
215+
github.com/prometheus/procfs v0.15.1 // indirect
180216
github.com/rogpeppe/go-internal v1.12.0 // indirect
181217
github.com/rubenv/sql-migrate v1.5.2 // indirect
182218
github.com/russross/blackfriday/v2 v2.1.0 // indirect
@@ -188,21 +224,29 @@ require (
188224
github.com/sourcegraph/conc v0.3.0 // indirect
189225
github.com/spf13/afero v1.11.0 // indirect
190226
github.com/spf13/cast v1.6.0 // indirect
227+
github.com/spiffe/go-spiffe/v2 v2.1.7 // indirect
228+
github.com/spiffe/spire-api-sdk v1.9.1 // indirect
191229
github.com/subosito/gotenv v1.6.0 // indirect
192230
github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635 // indirect
193231
github.com/tidwall/gjson v1.17.1 // indirect
194232
github.com/tidwall/match v1.1.1 // indirect
195233
github.com/tidwall/pretty v1.2.0 // indirect
196234
github.com/tidwall/sjson v1.2.5 // indirect
235+
github.com/tidwall/gjson v1.17.1 // indirect
236+
github.com/tidwall/match v1.1.1 // indirect
237+
github.com/tidwall/pretty v1.2.0 // indirect
238+
github.com/tidwall/sjson v1.2.5 // indirect
197239
github.com/vishvananda/netns v0.0.4 // indirect
198240
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
199241
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
200242
github.com/xeipuuv/gojsonschema v1.2.0 // indirect
201243
github.com/xlab/treeprint v1.2.0 // indirect
244+
github.com/zeebo/errs v1.3.0 // indirect
202245
go.etcd.io/etcd/api/v3 v3.5.12 // indirect
203246
go.etcd.io/etcd/client/pkg/v3 v3.5.12 // indirect
204247
go.etcd.io/etcd/client/v3 v3.5.12 // indirect
205248
go.mongodb.org/mongo-driver v1.14.0 // indirect
249+
go.mongodb.org/mongo-driver v1.14.0 // indirect
206250
go.opencensus.io v0.24.0 // indirect
207251
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect
208252
go.starlark.net v0.0.0-20230814145427-12f4cb8177e4 // indirect
@@ -217,6 +261,7 @@ require (
217261
google.golang.org/genproto v0.0.0-20240213162025-012b6fc9bca9 // indirect
218262
google.golang.org/genproto/googleapis/api v0.0.0-20240311132316-a219d84964c2 // indirect
219263
google.golang.org/genproto/googleapis/rpc v0.0.0-20240318140521-94a12d6c2237 // indirect
264+
google.golang.org/genproto/googleapis/rpc v0.0.0-20240318140521-94a12d6c2237 // indirect
220265
google.golang.org/grpc v1.62.1 // indirect
221266
gopkg.in/inf.v0 v0.9.1 // indirect
222267
gopkg.in/ini.v1 v1.67.0 // indirect
@@ -231,6 +276,7 @@ require (
231276
require (
232277
github.com/go-chi/chi v4.1.2+incompatible
233278
github.com/go-logr/logr v1.4.2 // indirect
279+
github.com/go-logr/logr v1.4.2 // indirect
234280
github.com/gogo/protobuf v1.3.2 // indirect
235281
github.com/golang/protobuf v1.5.4 // indirect
236282
github.com/google/go-cmp v0.6.0
@@ -244,8 +290,10 @@ require (
244290
go.uber.org/multierr v1.11.0 // indirect
245291
golang.org/x/net v0.26.0 // indirect
246292
golang.org/x/oauth2 v0.21.0 // indirect
293+
golang.org/x/oauth2 v0.21.0 // indirect
247294
golang.org/x/sync v0.7.0
248295
golang.org/x/sys v0.22.0
296+
golang.org/x/sys v0.22.0
249297
golang.org/x/term v0.21.0 // indirect
250298
google.golang.org/protobuf v1.34.2
251299
gopkg.in/yaml.v2 v2.4.0 // indirect
@@ -265,10 +313,12 @@ require (
265313
github.com/Azure/azure-sdk-for-go v68.0.0+incompatible
266314
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.12.0
267315
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.7.0
316+
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.7.0
268317
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/containerservice/armcontainerservice/v4 v4.8.0
269318
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dashboard/armdashboard v1.2.0
270319
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/monitor/armmonitor v0.11.0
271320
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v5 v5.2.0
321+
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v5 v5.2.0
272322
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.2.0
273323
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.2
274324
github.com/Microsoft/hcsshim v0.12.0-rc.3
@@ -277,15 +327,22 @@ require (
277327
github.com/aws/aws-sdk-go-v2/config v1.27.24
278328
github.com/aws/aws-sdk-go-v2/credentials v1.17.24
279329
github.com/aws/aws-sdk-go-v2/service/s3 v1.58.0
330+
github.com/aws/aws-sdk-go-v2 v1.30.1
331+
github.com/aws/aws-sdk-go-v2/config v1.27.24
332+
github.com/aws/aws-sdk-go-v2/credentials v1.17.24
333+
github.com/aws/aws-sdk-go-v2/service/s3 v1.58.0
280334
github.com/cakturk/go-netstat v0.0.0-20200220111822-e5b49efee7a5
281335
github.com/cilium/cilium v1.16.0-pre.1.0.20240403152809-b9853ecbcaeb
336+
github.com/cilium/cilium v1.16.0-pre.1.0.20240403152809-b9853ecbcaeb
282337
github.com/cilium/ebpf v0.15.0
283338
github.com/cilium/proxy v0.0.0-20231031145409-f19708f3d018
339+
github.com/cilium/proxy v0.0.0-20231031145409-f19708f3d018
284340
github.com/cilium/workerpool v1.2.0
285341
github.com/florianl/go-tc v0.4.3
286342
github.com/go-logr/zapr v1.3.0
287343
github.com/google/gopacket v1.1.19
288344
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0
345+
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0
289346
github.com/inspektor-gadget/inspektor-gadget v0.27.0
290347
github.com/jellydator/ttlcache/v3 v3.1.1
291348
github.com/jsternberg/zap-logfmt v1.3.0
@@ -296,15 +353,22 @@ require (
296353
github.com/prometheus/client_model v0.6.1
297354
github.com/prometheus/common v0.55.0
298355
github.com/safchain/ethtool v0.4.1
356+
github.com/prometheus/common v0.55.0
357+
github.com/safchain/ethtool v0.4.1
299358
github.com/sirupsen/logrus v1.9.3
300359
github.com/spf13/viper v1.19.0
301360
github.com/vishvananda/netlink v1.2.1-beta.2.0.20240524165444-4d4ba1473f21
302361
go.etcd.io/etcd v3.3.27+incompatible
303362
go.opentelemetry.io/otel v1.28.0
304363
go.opentelemetry.io/otel/metric v1.28.0
305364
go.opentelemetry.io/otel/trace v1.28.0
365+
go.etcd.io/etcd v3.3.27+incompatible
366+
go.opentelemetry.io/otel v1.28.0
367+
go.opentelemetry.io/otel/metric v1.28.0
368+
go.opentelemetry.io/otel/trace v1.28.0
306369
go.uber.org/mock v0.4.0
307370
golang.org/x/exp v0.0.0-20240318143956-a85f2c67cd81
371+
golang.org/x/exp v0.0.0-20240318143956-a85f2c67cd81
308372
gopkg.in/natefinch/lumberjack.v2 v2.2.1
309373
gotest.tools v2.2.0+incompatible
310374
gotest.tools/v3 v3.5.1

0 commit comments

Comments
 (0)