Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
d01f09d
introduce struct
gracewehner Nov 8, 2024
132ed6f
Merge branch 'main' into grace/single-change-for-new-default-config
gracewehner Nov 8, 2024
69b583b
remove unnecessary code
gracewehner Nov 13, 2024
13c7db9
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner May 5, 2025
b447eb7
check in changes
gracewehner May 6, 2025
c59d04a
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Jun 9, 2025
0843929
ccp
gracewehner Jun 11, 2025
4954f27
v2
gracewehner Jun 11, 2025
3ad8d3c
merger
gracewehner Jun 12, 2025
a472a49
configmapparser
gracewehner Jun 12, 2025
827ce1e
configmapparserforccp
gracewehner Jun 12, 2025
3fa641d
cleanup
gracewehner Jun 12, 2025
90b34dd
more cleanup
gracewehner Jun 12, 2025
024a21d
more more cleanup
gracewehner Jun 12, 2025
c1caf49
cleanup
gracewehner Jun 13, 2025
4f44f6d
cleanup, podannotations, build
gracewehner Jun 13, 2025
a5553da
build fixes
gracewehner Jun 13, 2025
248b456
fixes from tests
gracewehner Jun 16, 2025
41db99e
tests pass
gracewehner Jun 16, 2025
1b817f6
fixes
gracewehner Jun 20, 2025
7b7280c
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Jun 20, 2025
d4005af
test cleanup
gracewehner Jun 20, 2025
52a70b9
fix fluent-bit build
gracewehner Jun 23, 2025
8849f37
actually fix fluent-bit
gracewehner Jun 23, 2025
d4a1a9d
fix dockerfile
gracewehner Jun 23, 2025
798afc2
fix dockerfile
gracewehner Jun 23, 2025
a046146
fixes
Jun 27, 2025
0c280ff
cleanup
gracewehner Jun 27, 2025
fb5491a
run unit tests in build
gracewehner Jun 27, 2025
c901288
fix pipeline naming
gracewehner Jun 27, 2025
e2c6e51
actually fix
gracewehner Jun 27, 2025
667e9b0
fix copy to main container
gracewehner Jun 27, 2025
bad0e00
finishing tests
gracewehner Jun 27, 2025
38d7d4d
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
Jul 2, 2025
8bac961
Merge branch 'grace/single-change-for-new-default-config' of https://…
Jul 2, 2025
c12d3e0
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Jul 8, 2025
4a4d6e5
fix unit tests
gracewehner Jul 8, 2025
fd4a6d7
unit tests for ccp and ccp bug fixes
gracewehner Jul 9, 2025
5600250
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Jul 11, 2025
e6eaeda
add node-autoprovisioning
gracewehner Jul 11, 2025
313433d
more unit tests
gracewehner Jul 14, 2025
3cced0d
simpler way to add test cases
gracewehner Jul 15, 2025
0524eec
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Jul 18, 2025
2d32c7f
cleanup and fixes
gracewehner Jul 18, 2025
c491bda
go mod tidy
gracewehner Jul 18, 2025
566dfb2
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Jul 30, 2025
60a6c74
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Oct 16, 2025
7d3d25c
add log instead of fmt
gracewehner Oct 16, 2025
89df4fe
Merge branch 'main' into grace/single-change-for-new-default-config
gracewehner Oct 16, 2025
b845587
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Oct 17, 2025
cab92b8
update tests
gracewehner Oct 17, 2025
15d869f
local-csi-driver tests
gracewehner Oct 17, 2025
8ca5cbf
all env vars in tests
gracewehner Oct 17, 2025
5d186e8
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Oct 20, 2025
6cc011b
tests
gracewehner Oct 30, 2025
a7e1dcf
Merge remote-tracking branch 'origin/main' into grace/single-change-f…
gracewehner Feb 11, 2026
4839fa7
add dcgm
gracewehner Feb 12, 2026
3f11212
fix dockerfiles
gracewehner Feb 12, 2026
819ec98
acutally fix dockerfile
gracewehner Feb 12, 2026
8045c0d
fixes
gracewehner Feb 12, 2026
f9cc6c5
cleanup readme
gracewehner Feb 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions .pipelines/azure-pipeline-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ trigger:
- main
- bot/otelcollector-upgrade-*
- dependabot*
- grace/single-change-for-new-default-config
pr:
autoCancel: true
branches:
Expand Down Expand Up @@ -324,6 +325,47 @@ extends:
test-cluster-yamls/**
TargetFolder: '$(Build.ArtifactStagingDirectory)/testkube-files'


- job: Run_Unit_Tests
displayName: "Test: Run unit tests"
pool:
name: Azure-Pipelines-CI-Test-EO
image: ci-1es-managed-ubuntu-2204
os: linux
variables:
skipComponentGovernanceDetection: true
steps:
- checkout: self
persistCredentials: true
- task: GoTool@0
displayName: "Test: specify golang version"
inputs:
version: $(GOLANG_VERSION)
- bash: |
go test -v .
workingDirectory: $(Build.SourcesDirectory)/otelcollector/shared/configmap/mp
displayName: "Test: run configmap processing unit tests"

- job: Run_CCP_Unit_Tests
displayName: "Test: Run CCP unit tests"
pool:
name: Azure-Pipelines-CI-Test-EO
image: ci-1es-managed-ubuntu-2204
os: linux
variables:
skipComponentGovernanceDetection: true
steps:
- checkout: self
persistCredentials: true
- task: GoTool@0
displayName: "Test: specify golang version"
inputs:
version: $(GOLANG_VERSION)
- bash: |
go test -v .
workingDirectory: $(Build.SourcesDirectory)/otelcollector/shared/configmap/ccp
displayName: "Test: run configmap processing unit tests"

- job: Linux_Golang_Reference_App
displayName: "Build: linux golang reference app image"
pool:
Expand Down
23 changes: 9 additions & 14 deletions otelcollector/build/linux/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@ ARG GOLANG_VERSION
ARG FLUENTBIT_GOLANG_VERSION
FROM --platform=$BUILDPLATFORM mcr.microsoft.com/oss/go/microsoft/golang:${FLUENTBIT_GOLANG_VERSION} as fluent-bit-builder
WORKDIR /src
COPY ./fluent-bit/src/go.mod ./fluent-bit/src/go.sum .
RUN go version
COPY ./fluent-bit/src/ ./fluent-bit/src/
COPY ./shared/ ./shared/
WORKDIR /src/shared/
RUN go mod download
WORKDIR /src/fluent-bit/src/
RUN go mod download
COPY ./fluent-bit/src/ .
RUN apt-get update && apt-get install gcc-aarch64-linux-gnu -y
ARG TARGETOS TARGETARCH
RUN if [ "$TARGETARCH" = "arm64" ] ; then CC=aarch64-linux-gnu-gcc CGO_ENABLED=1 GOOS=$TARGETOS GOARCH=$TARGETARCH go build -buildmode=c-shared -ldflags '-extldflags=-Wl,-z,now' -o out_appinsights.so . ; else CGO_ENABLED=1 GOOS=$TARGETOS GOARCH=$TARGETARCH go build -buildmode=c-shared -ldflags '-extldflags=-Wl,-z,now' -o out_appinsights.so . ; fi
Expand Down Expand Up @@ -63,17 +65,10 @@ FROM --platform=$BUILDPLATFORM mcr.microsoft.com/oss/go/microsoft/golang:${GOLAN
WORKDIR /
# Create directories
RUN mkdir -p ./shared/configmap/mp/
RUN mkdir -p ./shared/configmap/common/
RUN mkdir -p ./main/
# Copy shared go files
COPY ../shared/*.go ./main/shared/
COPY ./shared/go.mod ./main/shared/
COPY ./shared/go.sum ./main/shared/
COPY ../shared/configmap/mp/*.go ./main/shared/configmap/mp/
COPY ../shared/configmap/ccp/*.go ./main/shared/configmap/ccp/
COPY ./shared/configmap/mp/go.mod ./main/shared/configmap/mp/
COPY ./shared/configmap/mp/go.sum ./main/shared/configmap/mp/
COPY ./shared/configmap/ccp/go.mod ./main/shared/configmap/ccp/
COPY ./shared/configmap/ccp/go.sum ./main/shared/configmap/ccp/
# Copy shared module (includes mp, ccp, common, and test helpers)
COPY ./shared/ ./main/shared/
# Copy main go files
COPY ./main/*.go ./main/
COPY ./go.mod ./main/
Expand Down Expand Up @@ -160,7 +155,7 @@ COPY --from=main-builder --chmod=777 /main/main.exe $tmpdir/main
COPY ./scripts/*.sh $tmpdir/
COPY ./metricextension/me.config ./metricextension/me_internal.config ./metricextension/me_ds.config ./metricextension/me_ds_setdim.config ./metricextension/me_ds_internal.config ./metricextension/me_ds_internal_setdim.config /usr/sbin/
COPY ./fluent-bit/fluent-bit.yaml ./fluent-bit/fluent-bit-daemonset.yaml ./fluent-bit/fluent-bit-parsers.conf $tmpdir/fluent-bit/
COPY --from=fluent-bit-builder /src/out_appinsights.so $tmpdir/fluent-bit/bin/
COPY --from=fluent-bit-builder /src/fluent-bit/src/out_appinsights.so $tmpdir/fluent-bit/bin/
COPY --from=fluent-bit-binary-builder /usr/local/bin/fluent-bit /usr/local/bin/fluent-bit
COPY --from=fluent-bit-binary-builder /usr/local/etc/fluent-bit /usr/local/etc/fluent-bit
COPY ./LICENSE $tmpdir/microsoft
Expand Down
13 changes: 3 additions & 10 deletions otelcollector/build/linux/ccp/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -39,17 +39,10 @@ FROM --platform=$BUILDPLATFORM mcr.microsoft.com/oss/go/microsoft/golang:${GOLAN
WORKDIR /
# Create directories
RUN mkdir -p ./shared/configmap/mp/
RUN mkdir -p ./shared/configmap/common/
RUN mkdir -p ./main/
# Copy shared go files
COPY ../shared/*.go ./main/shared/
COPY ./shared/go.mod ./main/shared/
COPY ./shared/go.sum ./main/shared/
COPY ../shared/configmap/mp/*.go ./main/shared/configmap/mp/
COPY ../shared/configmap/ccp/*.go ./main/shared/configmap/ccp/
COPY ./shared/configmap/mp/go.mod ./main/shared/configmap/mp/
COPY ./shared/configmap/mp/go.sum ./main/shared/configmap/mp/
COPY ./shared/configmap/ccp/go.mod ./main/shared/configmap/ccp/
COPY ./shared/configmap/ccp/go.sum ./main/shared/configmap/ccp/
# Copy shared module (includes mp, ccp, common, and helpers)
COPY ./shared/ ./main/shared/
# Copy main go files
COPY ./main/*.go ./main/
COPY ./go.mod ./main/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,6 @@
- source_labels: [__meta_kubernetes_pod_name]
action: replace
target_label: kubernetes_pod_name
- source_labels: [__meta_kubernetes_namespace]
action: keep
regex: $$AZMON_PROMETHEUS_POD_ANNOTATION_NAMESPACES_REGEX$$
4 changes: 3 additions & 1 deletion otelcollector/fluent-bit/src/go.mod
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
module Docker-Provider/source/plugins/go/src

replace github.com/prometheus-collector/shared => ../../shared

go 1.24.0

toolchain go1.24.1

require (
github.com/fluent/fluent-bit-go v0.0.0-20220311094233-780004bf5562
github.com/microsoft/ApplicationInsights-Go v0.4.4
github.com/mitchellh/mapstructure v1.5.0
github.com/prometheus-collector/shared v0.0.0-00010101000000-000000000000
github.com/prometheus/client_golang v1.23.2
github.com/shirou/gopsutil/v4 v4.26.1
github.com/ugorji/go/codec v1.3.0
Expand Down
2 changes: 2 additions & 0 deletions otelcollector/fluent-bit/src/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,8 @@ k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 h1:hwvWFiBzdWw1FhfY1FooPn3kzWuJ8
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 h1:gBQPwqORJ8d8/YNZWEjoZs7npUVDpVXUUOFfW6CgAqE=
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg=
sigs.k8s.io/structured-merge-diff/v4 v4.4.2 h1:MdmvkGuXi/8io6ixD5wud3vOLwc1rj0aNqRlpuvjmwA=
sigs.k8s.io/structured-merge-diff/v4 v4.4.2/go.mod h1:N8f93tFZh9U6vpxwRArLiikrE5/2tiu1w1AGfACIGE4=
sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU=
sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY=
sigs.k8s.io/structured-merge-diff/v6 v6.3.0 h1:jTijUJbW353oVOd9oTlifJqOGEkUw2jB/fXCbTiQEco=
Expand Down
134 changes: 9 additions & 125 deletions otelcollector/fluent-bit/src/telemetry.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import (
"github.com/fluent/fluent-bit-go/output"
"github.com/microsoft/ApplicationInsights-Go/appinsights"
"github.com/microsoft/ApplicationInsights-Go/appinsights/contracts"
"github.com/prometheus-collector/shared"
yaml "gopkg.in/yaml.v2"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
Expand Down Expand Up @@ -904,132 +905,15 @@ func PushMEProcessedAndReceivedCountToAppInsightsMetrics() {
}

if os.Getenv(envControllerType) == "ReplicaSet" {
if KubeletKeepListRegex != "" {
metric.Properties["KubeletKeepListRegex"] = KubeletKeepListRegex
}
if CoreDNSKeepListRegex != "" {
metric.Properties["CoreDNSKeepListRegex"] = CoreDNSKeepListRegex
}
if CAdvisorKeepListRegex != "" {
metric.Properties["CAdvisorKeepListRegex"] = CAdvisorKeepListRegex
}
if KubeProxyKeepListRegex != "" {
metric.Properties["KubeProxyKeepListRegex"] = KubeProxyKeepListRegex
}
if ApiServerKeepListRegex != "" {
metric.Properties["ApiServerKeepListRegex"] = ApiServerKeepListRegex
}
if KubeStateKeepListRegex != "" {
metric.Properties["KubeStateKeepListRegex"] = KubeStateKeepListRegex
}
if NodeExporterKeepListRegex != "" {
metric.Properties["NodeExporterKeepListRegex"] = NodeExporterKeepListRegex
}
if WinExporterKeepListRegex != "" {
metric.Properties["WinExporterKeepListRegex"] = WinExporterKeepListRegex
}
if WinKubeProxyKeepListRegex != "" {
metric.Properties["WinKubeProxyKeepListRegex"] = WinKubeProxyKeepListRegex
}
if PodannotationKeepListRegex != "" {
metric.Properties["PodannotationKeepListRegex"] = PodannotationKeepListRegex
}
if KappieBasicKeepListRegex != "" {
metric.Properties["KappieBasicKeepListRegex"] = KappieBasicKeepListRegex
}
if AcstorCapacityProvisionerKeepListRegex != "" {
metric.Properties["AcstorCapacityProvisionerRegex"] = AcstorCapacityProvisionerKeepListRegex
}
if AcstorMetricsExporterKeepListRegex != "" {
metric.Properties["AcstorMetricsExporterRegex"] = AcstorMetricsExporterKeepListRegex
}
if LocalCSIDriverKeepListRegex != "" {
metric.Properties["LocalCSIDriverExporterRegex"] = LocalCSIDriverKeepListRegex
}
if ZtunnelKeepListRegex != "" {
metric.Properties["ZtunnelKeepListRegex"] = ZtunnelKeepListRegex
}
if IstioCniKeepListRegex != "" {
metric.Properties["IstioCniKeepListRegex"] = IstioCniKeepListRegex
}
if WaypointProxyKeepListRegex != "" {
metric.Properties["WaypointProxyKeepListRegex"] = WaypointProxyKeepListRegex
}
if DCGMExporterKeepListRegex != "" {
metric.Properties["DCGMExporterRegex"] = DCGMExporterKeepListRegex
}
if NetworkObservabilityCiliumKeepListRegex != "" {
metric.Properties["NetworkObservabilityCiliumRegex"] = NetworkObservabilityCiliumKeepListRegex
}
if NetworkObservabilityHubbleKeepListRegex != "" {
metric.Properties["NetworkObservabilityHubbleRegex"] = NetworkObservabilityHubbleKeepListRegex
}
if NetworkObservabilityRetinaKeepListRegex != "" {
metric.Properties["NetworkObservabilityRetinaRegex"] = NetworkObservabilityRetinaKeepListRegex
}

if KubeletScrapeInterval != "" {
metric.Properties["KubeletScrapeInterval"] = KubeletScrapeInterval
}
if CoreDNSScrapeInterval != "" {
metric.Properties["CoreDNSScrapeInterval"] = CoreDNSScrapeInterval
}
if CAdvisorScrapeInterval != "" {
metric.Properties["CAdvisorScrapeInterval"] = CAdvisorScrapeInterval
}
if KubeProxyScrapeInterval != "" {
metric.Properties["KubeProxyScrapeInterval"] = KubeProxyScrapeInterval
}
if ApiServerScrapeInterval != "" {
metric.Properties["ApiServerScrapeInterval"] = ApiServerScrapeInterval
}
if KubeStateScrapeInterval != "" {
metric.Properties["KubeStateScrapeInterval"] = KubeStateScrapeInterval
}
if NodeExporterScrapeInterval != "" {
metric.Properties["NodeExporterScrapeInterval"] = NodeExporterScrapeInterval
}
if WinExporterScrapeInterval != "" {
metric.Properties["WinExporterScrapeInterval"] = WinExporterScrapeInterval
}
if WinKubeProxyScrapeInterval != "" {
metric.Properties["WinKubeProxyScrapeInterval"] = WinKubeProxyScrapeInterval
}
if PromHealthScrapeInterval != "" {
metric.Properties["PromHealthScrapeInterval"] = PromHealthScrapeInterval
}
if PodAnnotationScrapeInterval != "" {
metric.Properties["PodAnnotationScrapeInterval"] = PodAnnotationScrapeInterval
}
if KappieBasicScrapeInterval != "" {
metric.Properties["KappieBasicScrapeInterval"] = KappieBasicScrapeInterval
}
if AcstorCapacityProvisionerScrapeInterval != "" {
metric.Properties["AcstorCapacityProvisionerScrapeInterval"] = AcstorCapacityProvisionerScrapeInterval
}
if AcstorMetricsExporterScrapeInterval != "" {
metric.Properties["AcstorMetricsExporterScrapeInterval"] = AcstorMetricsExporterScrapeInterval
}
if ZtunnelScrapeInterval != "" {
metric.Properties["ZtunnelScrapeInterval"] = ZtunnelScrapeInterval
}
if IstioCniScrapeInterval != "" {
metric.Properties["IstioCniScrapeInterval"] = IstioCniScrapeInterval
}
if WaypointProxyScrapeInterval != "" {
metric.Properties["WaypointProxyScrapeInterval"] = WaypointProxyScrapeInterval
}
if DCGMExporterScrapeInterval != "" {
metric.Properties["DCGMExporterScrapeInterval"] = DCGMExporterScrapeInterval
}
if NetworkObservabilityCiliumScrapeInterval != "" {
metric.Properties["NetworkObservabilityCiliumScrapeInterval"] = NetworkObservabilityCiliumScrapeInterval
}
if NetworkObservabilityHubbleScrapeInterval != "" {
metric.Properties["NetworkObservabilityHubbleScrapeInterval"] = NetworkObservabilityHubbleScrapeInterval
}
if NetworkObservabilityRetinaScrapeInterval != "" {
metric.Properties["NetworkObservabilityRetinaScrapeInterval"] = NetworkObservabilityRetinaScrapeInterval
for jobName, job := range shared.DefaultScrapeJobs {
metric.Properties[fmt.Sprintf("%sEnabled", jobName)] = strconv.FormatBool(job.Enabled)
if job.KeepListRegex != "" {
metric.Properties[fmt.Sprintf("%sKeepListRegex", jobName)] = job.KeepListRegex
}
if job.ScrapeInterval != "" {
metric.Properties[fmt.Sprintf("%sScrapeInterval", jobName)] = job.ScrapeInterval
}
}
}

Expand Down
20 changes: 15 additions & 5 deletions otelcollector/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -10,29 +10,39 @@ replace github.com/prometheus-collector/shared/configmap/mp => ./shared/configma

replace github.com/prometheus-collector/shared/configmap/ccp => ./shared/configmap/ccp

replace github.com/prometheus-collector/shared/configmap/common/testhelpers => ./shared/configmap/common/testhelpers

require (
github.com/prometheus-collector/shared v0.0.0-00010101000000-000000000000
github.com/prometheus-collector/shared/configmap/ccp v0.0.0-00010101000000-000000000000
github.com/prometheus-collector/shared/configmap/mp v0.0.0-00010101000000-000000000000
github.com/prometheus-collector/shared/configmap/common/testhelpers v0.0.0-00010101000000-000000000000
)

require (
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/fxamacker/cbor/v2 v2.7.0 // indirect
github.com/go-logr/logr v1.4.2 // indirect
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/google/go-cmp v0.7.0 // indirect
github.com/google/gofuzz v1.2.0 // indirect
github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/onsi/ginkgo/v2 v2.21.0 // indirect
github.com/onsi/gomega v1.35.1 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/prometheus/client_model v0.6.1 // indirect
github.com/prometheus/common v0.63.0 // indirect
github.com/prometheus/client_model v0.6.2 // indirect
github.com/prometheus/common v0.65.0 // indirect
github.com/stretchr/testify v1.10.0 // indirect
github.com/x448/float16 v0.8.4 // indirect
golang.org/x/net v0.38.0 // indirect
golang.org/x/text v0.23.0 // indirect
google.golang.org/protobuf v1.36.5 // indirect
golang.org/x/net v0.40.0 // indirect
golang.org/x/sys v0.33.0 // indirect
golang.org/x/text v0.25.0 // indirect
golang.org/x/tools v0.26.0 // indirect
google.golang.org/protobuf v1.36.6 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
Expand Down
Loading
Loading