Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
1 change: 1 addition & 0 deletions e2e/adapter/adapter_failover.go
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ var _ = ginkgo.Describe("[Suite: adapter-failures][negative] Adapter framework c
ginkgo.GinkgoWriter.Printf("Successfully uninstalled adapter: %s\n", releaseName)
}
})

Expect(err).NotTo(HaveOccurred(), "failed to deploy test adapter")
ginkgo.GinkgoWriter.Printf("Successfully deployed adapter: %s (release: %s)\n", adapterName, releaseName)

Expand Down
13 changes: 9 additions & 4 deletions e2e/adapter/adapter_with_maestro.go
Original file line number Diff line number Diff line change
Expand Up @@ -510,9 +510,11 @@ var _ = ginkgo.Describe("[Suite: adapter][maestro-transport][negative] Adapter F
deployOpts.ReleaseName = releaseName
deployOpts.AdapterName = adapterName

// Set adapterRelease BEFORE deployment so cleanup will run even if deployment fails

adapterRelease = releaseName
err = h.DeployAdapter(ctx, deployOpts)
Expect(err).NotTo(HaveOccurred(), "failed to deploy test adapter")
adapterRelease = releaseName
ginkgo.GinkgoWriter.Printf("Successfully deployed adapter: %s (release: %s)\n", adapterName, releaseName)

// Create cluster after adapter is deployed
Expand Down Expand Up @@ -655,9 +657,10 @@ var _ = ginkgo.Describe("[Suite: adapter][maestro-transport][negative] Adapter F
deployOpts.ReleaseName = releaseName
deployOpts.AdapterName = adapterName

// Set adapterRelease BEFORE deployment so cleanup will run even if deployment fails
adapterRelease = releaseName
err = h.DeployAdapter(ctx, deployOpts)
Expect(err).NotTo(HaveOccurred(), "failed to deploy test adapter")
adapterRelease = releaseName
ginkgo.GinkgoWriter.Printf("Successfully deployed adapter: %s (release: %s)\n", adapterName, releaseName)

// Create cluster after adapter is deployed
Expand Down Expand Up @@ -843,9 +846,11 @@ var _ = ginkgo.Describe("[Suite: adapter][maestro-transport][negative] Adapter F
deployOpts.ReleaseName = releaseName
deployOpts.AdapterName = adapterName

// Set adapterRelease BEFORE deployment so cleanup will run even if deployment fails
adapterRelease = releaseName

err = h.DeployAdapter(ctx, deployOpts)
Expect(err).NotTo(HaveOccurred(), "failed to deploy test adapter")
adapterRelease = releaseName
ginkgo.GinkgoWriter.Printf("Successfully deployed adapter: %s (release: %s)\n", adapterName, releaseName)

// Create cluster after adapter is deployed
Expand Down Expand Up @@ -1011,9 +1016,9 @@ var _ = ginkgo.Describe("[Suite: adapter][maestro-transport][negative] Adapter F
"adapterConfig.hyperfleetApi.baseUrl": "http://invalid-hyperfleet-api-endpoint.local:9999",
}

adapterRelease = releaseName
err = h.DeployAdapter(ctx, deployOpts)
Expect(err).NotTo(HaveOccurred(), "failed to deploy test adapter")
adapterRelease = releaseName
ginkgo.GinkgoWriter.Printf("Successfully deployed adapter: %s (release: %s)\n", adapterName, releaseName)

// Create cluster after adapter is deployed
Expand Down
47 changes: 21 additions & 26 deletions env/env.ci
Original file line number Diff line number Diff line change
Expand Up @@ -3,41 +3,36 @@
# Do NOT modify this file without testing the changes in the E2E pipeline.
# ============================================================================

# Image Registry Configuration
export IMAGE_REGISTRY="${IMAGE_REGISTRY:-registry.ci.openshift.org}"

# API Component Configuration
export API_IMAGE_REPO="${API_IMAGE_REPO:-ci/hyperfleet-api}"
# =====================================================================
# Image Overrides
# =====================================================================
export IMAGE_REGISTRY="${IMAGE_REGISTRY:-quay.io}"
export API_IMAGE_REPO="${API_IMAGE_REPO:-redhat-services-prod/hyperfleet-tenant/hyperfleet/hyperfleet-api}"
export API_IMAGE_TAG="${API_IMAGE_TAG:-latest}"
export API_SERVICE_TYPE="${API_SERVICE_TYPE:-LoadBalancer}"

export SENTINEL_IMAGE_REPO="${SENTINEL_IMAGE_REPO:-redhat-services-prod/hyperfleet-tenant/hyperfleet/hyperfleet-sentinel}"
export SENTINEL_IMAGE_TAG="${SENTINEL_IMAGE_TAG:-latest}"
export ADAPTER_IMAGE_REPO="${ADAPTER_IMAGE_REPO:-redhat-services-prod/hyperfleet-tenant/hyperfleet/hyperfleet-adapter}"
export ADAPTER_IMAGE_TAG="${ADAPTER_IMAGE_TAG:-latest}"

# =====================================================================
# API Adapter Configuration
# ============================================================================
# NOTE: These are SEPARATE from tier0 deployment configuration above
# These should be set based on specific test case requirements
# Set per test case as needed

# Adapters for API cluster configuration
export API_ADAPTERS_CLUSTER="${API_ADAPTERS_CLUSTER:-cl-namespace,cl-job,cl-deployment,cl-maestro}"

# Adapters for API nodepool configuration
export API_ADAPTERS_NODEPOOL="${API_ADAPTERS_NODEPOOL:-np-configmap}"

# Sentinel Component Configuration
export SENTINEL_IMAGE_REPO="${SENTINEL_IMAGE_REPO:-ci/hyperfleet-sentinel}"
export SENTINEL_IMAGE_TAG="${SENTINEL_IMAGE_TAG:-latest}"
# API/Sentinel/Adapter Overrides
# =====================================================================
export SENTINEL_BROKER_TYPE="${SENTINEL_BROKER_TYPE:-googlepubsub}"
export SENTINEL_GOOGLEPUBSUB_CREATE_TOPIC_IF_MISSING="${SENTINEL_GOOGLEPUBSUB_CREATE_TOPIC_IF_MISSING:-true}"

# Adapter Component Configuration
export ADAPTER_IMAGE_REPO="${ADAPTER_IMAGE_REPO:-ci/hyperfleet-adapter}"
export ADAPTER_IMAGE_TAG="${ADAPTER_IMAGE_TAG:-latest}"
export ADAPTER_GOOGLEPUBSUB_CREATE_TOPIC_IF_MISSING="${ADAPTER_GOOGLEPUBSUB_CREATE_TOPIC_IF_MISSING:-true}"
export ADAPTER_GOOGLEPUBSUB_CREATE_SUBSCRIPTION_IF_MISSING="${ADAPTER_GOOGLEPUBSUB_CREATE_SUBSCRIPTION_IF_MISSING:-true}"

export API_SERVICE_TYPE="${API_SERVICE_TYPE:-LoadBalancer}"
# NOTE: These are SEPARATE from tier0 deployment configuration above
# These should be set based on specific test case requirements
# Set per test case as needed
export API_ADAPTERS_NODEPOOL="${API_ADAPTERS_NODEPOOL:-np-configmap}"
export API_ADAPTERS_CLUSTER="${API_ADAPTERS_CLUSTER:-cl-namespace,cl-job,cl-deployment,cl-maestro}"


# =====================================================================
# Helm chart overrides
# =====================================================================
# Helm Chart Sources
# Note: ADAPTER_CHART_* and API_CHART_* vars are also required by tier2 E2E tests
# (e.g., crash recovery) which deploy dedicated adapters and upgrade API config at runtime.
Expand Down
52 changes: 24 additions & 28 deletions env/env.local
Original file line number Diff line number Diff line change
Expand Up @@ -4,44 +4,42 @@
# Can be modified without testing the changes in the E2E pipeline
# ============================================================================

export GCP_PROJECT_ID="${GCP_PROJECT_ID:-hcm-hyperfleet}"
export QUAY_USER="${QUAY_USER:-}"
export RUN_ID="${RUN_ID:-${NAMESPACE}}"

# Image Registry Configuration
export IMAGE_REGISTRY="${IMAGE_REGISTRY:-registry.ci.openshift.org}"

# API Component Configuration
export API_IMAGE_REPO="${API_IMAGE_REPO:-ci/hyperfleet-api}"
# =====================================================================
# Image Overrides
# =====================================================================
export IMAGE_REGISTRY="${IMAGE_REGISTRY:-quay.io}"
export API_IMAGE_REPO="${API_IMAGE_REPO:-redhat-services-prod/hyperfleet-tenant/hyperfleet/hyperfleet-api}"
export API_IMAGE_TAG="${API_IMAGE_TAG:-latest}"
Comment on lines +12 to 16

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

env.local defines RUN_ID but env.ci doesn't. Every other required variable is defined in both files. Consider adding export RUN_ID="${RUN_ID:-${NAMESPACE}}" to env.ci for consistency, so developers sourcing it locally don't hit the BeforeSuite fatal.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Developers shouldn't be sourcing env.ci -- I believe env.ci should just be used for prow environment not user runs

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added it to the e2e scripts in the openshift/release repo but maybe having it set here would be better, will update

export API_SERVICE_TYPE="${API_SERVICE_TYPE:-LoadBalancer}"

export SENTINEL_IMAGE_REPO="${SENTINEL_IMAGE_REPO:-redhat-services-prod/hyperfleet-tenant/hyperfleet/hyperfleet-sentinel}"
export SENTINEL_IMAGE_TAG="${SENTINEL_IMAGE_TAG:-latest}"
export ADAPTER_IMAGE_REPO="${ADAPTER_IMAGE_REPO:-redhat-services-prod/hyperfleet-tenant/hyperfleet/hyperfleet-adapter}"
export ADAPTER_IMAGE_TAG="${ADAPTER_IMAGE_TAG:-latest}"

# =====================================================================
# API Adapter Configuration
# API/Sentinel/Adapter Overrides
# =====================================================================
# NOTE: These are SEPARATE from tier0 deployment configuration above
# These should be set based on specific test case requirements
# Set per test case as needed

# Adapters for API cluster configuration
export API_ADAPTERS_CLUSTER="${API_ADAPTERS_CLUSTER:-cl-namespace,cl-job,cl-deployment,cl-maestro}"

# Adapters for API nodepool configuration
export API_ADAPTERS_NODEPOOL="${API_ADAPTERS_NODEPOOL:-np-configmap}"

# Sentinel Component Configuration
export SENTINEL_IMAGE_REPO="${SENTINEL_IMAGE_REPO:-ci/hyperfleet-sentinel}"
export SENTINEL_IMAGE_TAG="${SENTINEL_IMAGE_TAG:-latest}"
export SENTINEL_BROKER_TYPE="${SENTINEL_BROKER_TYPE:-googlepubsub}"
export SENTINEL_GOOGLEPUBSUB_CREATE_TOPIC_IF_MISSING="${SENTINEL_GOOGLEPUBSUB_CREATE_TOPIC_IF_MISSING:-true}"

# Adapter Component Configuration
export ADAPTER_IMAGE_REPO="${ADAPTER_IMAGE_REPO:-ci/hyperfleet-adapter}"
export ADAPTER_IMAGE_TAG="${ADAPTER_IMAGE_TAG:-latest}"
export ADAPTER_GOOGLEPUBSUB_CREATE_TOPIC_IF_MISSING="${ADAPTER_GOOGLEPUBSUB_CREATE_TOPIC_IF_MISSING:-true}"
export ADAPTER_GOOGLEPUBSUB_CREATE_SUBSCRIPTION_IF_MISSING="${ADAPTER_GOOGLEPUBSUB_CREATE_SUBSCRIPTION_IF_MISSING:-true}"

export API_SERVICE_TYPE="${API_SERVICE_TYPE:-LoadBalancer}"
# NOTE: These are SEPARATE from tier0 deployment configuration above
# These should be set based on specific test case requirements
# Set per test case as needed
export API_ADAPTERS_NODEPOOL="${API_ADAPTERS_NODEPOOL:-np-configmap}"
export API_ADAPTERS_CLUSTER="${API_ADAPTERS_CLUSTER:-cl-namespace,cl-job,cl-deployment,cl-maestro}"


# =====================================================================
# Helm chart overrides
# =====================================================================
# Helm Chart Sources
# Note: ADAPTER_CHART_* and API_CHART_* vars are also required by tier2 E2E tests
# Note: ADAPTER_CHART_* and API_CHART_* vars are also required by tier1 and tier2 E2E tests
# (e.g., crash recovery) which deploy dedicated adapters and upgrade API config at runtime.
# When running tier2 tests in CI, ensure these are exported alongside GINKGO_LABEL_FILTER=tier2.
export API_CHART_REPO="${API_CHART_REPO:-https://github.com/openshift-hyperfleet/hyperfleet-api.git}"
Expand All @@ -57,5 +55,3 @@ export ADAPTER_CHART_REF="${ADAPTER_CHART_REF:-main}"
export ADAPTER_CHART_PATH="${ADAPTER_CHART_PATH:-charts}"


export GCP_PROJECT_ID="${GCP_PROJECT_ID:-hcm-hyperfleet}"
export QUAY_USER="${QUAY_USER:-}"
96 changes: 75 additions & 21 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,15 @@ go 1.25.0
require (
cloud.google.com/go/pubsub/v2 v2.6.0
github.com/google/uuid v1.6.0
github.com/oapi-codegen/runtime v1.1.2
github.com/oapi-codegen/runtime v1.4.2
github.com/onsi/ginkgo/v2 v2.27.2
github.com/onsi/gomega v1.38.2
github.com/openshift-hyperfleet/hyperfleet-api-spec v1.0.24
github.com/samber/lo v1.53.0
github.com/spf13/cobra v1.8.0
github.com/spf13/viper v1.18.0
github.com/spf13/cobra v1.10.2
github.com/spf13/viper v1.21.0
google.golang.org/grpc v1.80.0
helm.sh/helm/v3 v3.21.0
k8s.io/api v0.35.1
k8s.io/apimachinery v0.35.1
k8s.io/client-go v0.35.1
Expand All @@ -23,57 +24,103 @@ require (
cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect
cloud.google.com/go/compute/metadata v0.9.0 // indirect
cloud.google.com/go/iam v1.7.0 // indirect
dario.cat/mergo v1.0.1 // indirect
github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c // indirect
github.com/BurntSushi/toml v1.6.0 // indirect
github.com/MakeNowJust/heredoc v1.0.0 // indirect
github.com/Masterminds/goutils v1.1.1 // indirect
github.com/Masterminds/semver/v3 v3.4.0 // indirect
github.com/Masterminds/sprig/v3 v3.3.0 // indirect
github.com/Masterminds/squirrel v1.5.4 // indirect
github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
github.com/blang/semver/v4 v4.0.0 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/chai2010/gettext-go v1.0.2 // indirect
github.com/containerd/containerd v1.7.30 // indirect

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔒 Security & Privacy | 🟠 Major | 🏗️ Heavy lift

Remove the vulnerable containerd pin.

github.com/containerd/containerd v1.7.30 falls inside GO-2026-5378's affected range (v1.7.27 before v1.7.32), and the Go vuln DB also lists GO-2026-5758/CVE-2026-53488 and GO-2026-5338/CVE-2026-50195 for the module. Keeping it in the module graph drags a known-vulnerable supply-chain dependency into the build; please regenerate the dependency set so this release is no longer selected. (pkg.go.dev)

🧰 Tools
🪛 OSV Scanner (2.4.0)

[HIGH] 40-40: github.com/containerd/containerd 1.7.30: containerd CRI checkpoint restore CDI annotation smuggling in github.com/containerd/containerd

(GO-2026-5064)


[HIGH] 40-40: github.com/containerd/containerd 1.7.30: containerd: CRI checkpoint import allows local image tag poisoning in github.com/containerd/containerd

(GO-2026-5338)


[HIGH] 40-40: github.com/containerd/containerd 1.7.30: containerd user ID handling bypass allows runAsNonRoot evasion in github.com/containerd/containerd

(GO-2026-5378)


[HIGH] 40-40: github.com/containerd/containerd 1.7.30: containerd image-triggered runtime DoS via unbounded group parsing in github.com/containerd/containerd

(GO-2026-5475)


[HIGH] 40-40: github.com/containerd/containerd 1.7.30: Arbitrary host CRI log file read via symlink following in CRI checkpoint restore in github.com/containerd/containerd

(GO-2026-5622)


[HIGH] 40-40: github.com/containerd/containerd 1.7.30: containerd CRI — image-config LABEL flows to restart-monitor binary:// logger: host-root command execution from an image pull in github.com/containerd/containerd

(GO-2026-5758)


[HIGH] 40-40: github.com/containerd/containerd 1.7.30: containerd user ID handling bypass allows runAsNonRoot evasion

(GHSA-fqw6-gf59-qr4w)


[HIGH] 40-40: github.com/containerd/containerd 1.7.30: containerd image-triggered runtime DoS via unbounded group parsing

(GHSA-jpcc-p29g-p8mq)


[HIGH] 40-40: github.com/containerd/containerd 1.7.30: containerd CRI — image-config LABEL flows to restart-monitor binary:// logger: host-root command execution from an image pull

(GHSA-xhf5-7wjv-pqxp)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@go.mod` at line 40, Remove the vulnerable containerd dependency pin from the
module graph by updating the dependency set so
`github.com/containerd/containerd` is no longer selected at v1.7.30. Regenerate
the module metadata via the normal dependency management flow, and ensure any
reference to `github.com/containerd/containerd` in go.mod/go.sum is replaced
with a non-vulnerable resolved version outside the affected range. Verify the
resulting dependency graph no longer includes the vulnerable `containerd`
module.

Source: Linters/SAST tools

github.com/containerd/errdefs v0.3.0 // indirect
github.com/containerd/log v0.1.0 // indirect
github.com/containerd/platforms v0.2.1 // indirect
github.com/cyphar/filepath-securejoin v0.6.1 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/emicklei/go-restful/v3 v3.12.2 // indirect
github.com/evanphx/json-patch v5.9.11+incompatible // indirect
github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f // indirect
github.com/fatih/color v1.13.0 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/fsnotify/fsnotify v1.7.0 // indirect
github.com/fsnotify/fsnotify v1.9.0 // indirect
github.com/fxamacker/cbor/v2 v2.9.0 // indirect
github.com/go-errors/errors v1.4.2 // indirect
github.com/go-gorp/gorp/v3 v3.1.0 // indirect
github.com/go-logr/logr v1.4.3 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-openapi/jsonpointer v0.21.0 // indirect
github.com/go-openapi/jsonreference v0.20.2 // indirect
github.com/go-openapi/swag v0.23.0 // indirect
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
github.com/gobwas/glob v0.2.3 // indirect
github.com/google/btree v1.1.3 // indirect
github.com/google/gnostic-models v0.7.0 // indirect
github.com/google/go-cmp v0.7.0 // indirect
github.com/google/pprof v0.0.0-20250403155104-27863c87afa6 // indirect
github.com/google/s2a-go v0.1.9 // indirect
github.com/googleapis/enterprise-certificate-proxy v0.3.14 // indirect
github.com/googleapis/gax-go/v2 v2.21.0 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/gosuri/uitable v0.0.4 // indirect
github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect
github.com/hashicorp/errwrap v1.1.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
github.com/huandu/xstrings v1.5.0 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/jmoiron/sqlx v1.4.0 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/magiconair/properties v1.8.7 // indirect
github.com/klauspost/compress v1.18.0 // indirect
github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect
github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect
github.com/lib/pq v1.11.2 // indirect
github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de // indirect
github.com/mailru/easyjson v0.7.7 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/mattn/go-colorable v0.1.14 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/mattn/go-runewidth v0.0.9 // indirect
github.com/mitchellh/copystructure v1.2.0 // indirect
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
github.com/mitchellh/reflectwalk v1.0.2 // indirect
github.com/moby/term v0.5.2 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
github.com/pelletier/go-toml/v2 v2.1.0 // indirect
github.com/sagikazarmark/locafero v0.4.0 // indirect
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
github.com/sourcegraph/conc v0.3.0 // indirect
github.com/spf13/afero v1.11.0 // indirect
github.com/spf13/cast v1.6.0 // indirect
github.com/spf13/pflag v1.0.9 // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect
github.com/opencontainers/image-spec v1.1.1 // indirect
github.com/pelletier/go-toml/v2 v2.2.4 // indirect
github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/rubenv/sql-migrate v1.8.1 // indirect
github.com/russross/blackfriday/v2 v2.1.0 // indirect
github.com/sagikazarmark/locafero v0.11.0 // indirect
github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 // indirect
github.com/shopspring/decimal v1.4.0 // indirect
github.com/sirupsen/logrus v1.9.3 // indirect
github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8 // indirect
github.com/spf13/afero v1.15.0 // indirect
github.com/spf13/cast v1.10.0 // indirect
github.com/spf13/pflag v1.0.10 // indirect
github.com/subosito/gotenv v1.6.0 // indirect
github.com/x448/float16 v0.8.4 // indirect
github.com/xlab/treeprint v1.2.0 // indirect
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.61.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.68.0 // indirect
go.opentelemetry.io/otel v1.43.0 // indirect
go.opentelemetry.io/otel/metric v1.43.0 // indirect
go.opentelemetry.io/otel/trace v1.43.0 // indirect
go.uber.org/atomic v1.9.0 // indirect
go.uber.org/multierr v1.9.0 // indirect
go.yaml.in/yaml/v2 v2.4.3 // indirect
go.yaml.in/yaml/v2 v2.4.4 // indirect
go.yaml.in/yaml/v3 v3.0.4 // indirect
golang.org/x/crypto v0.49.0 // indirect
golang.org/x/exp v0.0.0-20230905200255-921286631fa9 // indirect
golang.org/x/mod v0.33.0 // indirect
golang.org/x/net v0.52.0 // indirect
golang.org/x/oauth2 v0.36.0 // indirect
Expand All @@ -86,16 +133,23 @@ require (
google.golang.org/api v0.274.0 // indirect
google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20260401024825-9d38bb4040a9 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260401001100-f93e5f3e9f0f // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260406210006-6f92a3bedf2d // indirect
google.golang.org/protobuf v1.36.11 // indirect
gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/apiextensions-apiserver v0.35.1 // indirect
k8s.io/apiserver v0.35.1 // indirect
k8s.io/cli-runtime v0.35.1 // indirect
k8s.io/component-base v0.35.1 // indirect
k8s.io/klog/v2 v2.130.1 // indirect
k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 // indirect
k8s.io/kubectl v0.35.1 // indirect
k8s.io/utils v0.0.0-20251002143259-bc988d571ff4 // indirect
oras.land/oras-go/v2 v2.6.0 // indirect
sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect
sigs.k8s.io/kustomize/api v0.20.1 // indirect
sigs.k8s.io/kustomize/kyaml v0.20.1 // indirect
sigs.k8s.io/randfill v1.0.0 // indirect
sigs.k8s.io/structured-merge-diff/v6 v6.3.0 // indirect
sigs.k8s.io/yaml v1.6.0 // indirect
Expand Down
Loading