OCPBUGS-92037: Synchronize From Upstream Repositories#757
OCPBUGS-92037: Synchronize From Upstream Repositories#757openshift-bot wants to merge 110 commits into
Conversation
asciinema.org is unreachable from GitHub Actions runners (Azure) since June 16, 2026 (asciinema/asciinema-server#479), causing the daily demo CI job to fail consistently. The upload step is not essential — the CI job's purpose is to validate that demo recordings can be generated successfully. Remove the -u flag and update the target's EXHELP text accordingly. Co-authored-by: Per G. da Silva <pegoncal@redhat.com> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
@openshift-bot: This pull request explicitly references no jira issue. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
WalkthroughThe PR updates parallel e2e execution and summary generation, changes ClusterObjectSet revision selection to distinguish siblings from previous revisions, refreshes module dependencies, and increases one HTTP client timeout. ChangesE2E workflow and summary flow
ClusterObjectSet revision selection
Dependency and client updates
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Important Pre-merge checks failedPlease resolve all errors before merging. Addressing warnings is optional. ❌ Failed checks (2 errors, 1 warning)
✅ Passed checks (12 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
[APPROVALNOTIFIER] This PR is APPROVED Approval requirements bypassed by manually added approval. This pull-request has been approved by: openshift-bot The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
1 similar comment
|
[APPROVALNOTIFIER] This PR is APPROVED Approval requirements bypassed by manually added approval. This pull-request has been approved by: openshift-bot The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
…(#2787) The 10-second timeout was too aggressive for large catalog responses. Increase it to 5 minutes to avoid timeouts when fetching catalogs. See https://redhat.atlassian.net/browse/OCPBUGS-92037 for details of the bug.
Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.45.0 to 0.46.0. - [Release notes](https://github.com/golang/tools/releases) - [Commits](golang/tools@v0.45.0...v0.46.0) --- updated-dependencies: - dependency-name: golang.org/x/tools dependency-version: 0.46.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [helm.sh/helm/v3](https://github.com/helm/helm) from 3.21.0 to 3.21.1. - [Release notes](https://github.com/helm/helm/releases) - [Commits](helm/helm@v3.21.0...v3.21.1) --- updated-dependencies: - dependency-name: helm.sh/helm/v3 dependency-version: 3.21.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Adapt the ClusterObjectSet controller to boxcutter v0.14.0's API: - WithPreviousOwners is replaced by WithSiblingOwners, which takes all active sibling revisions (both lower and higher) so boxcutter can distinguish siblings from true collisions during handover. - NewObjectEngine now requires a managedBy parameter. Changes: - listSiblingRevisions: returns all active revisions for the same ClusterExtension, excluding self, archived, and deleting revisions. - listPreviousRevisions: returns only lower-revision active siblings, used for archiving after rollout completes. - listOtherActiveRevisions: shared helper with predicate-based filtering used by both methods above. - buildBoxcutterPhases: uses WithSiblingOwners instead of WithPreviousOwners. - NewObjectEngine: passes FieldOwnerPrefix as the new managedBy param. - Unit tests: separate table-driven tests for listSiblingRevisions and listPreviousRevisions with shared callRevisionLister helper. Signed-off-by: Per G. da Silva <pegoncal@redhat.com> Co-authored-by: Per G. da Silva <pegoncal@redhat.com> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
304bc1d to
67229b9
Compare
|
New changes are detected. LGTM label has been removed. |
|
@openshift-bot: This pull request references Jira Issue OCPBUGS-92037, which is invalid:
Comment The bug has been updated to refer to the pull request using the external bug tracker. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
internal/operator-controller/controllers/clusterobjectset_controller.go (1)
444-447: 🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick winFilter sibling revisions by stable owner identity, not just
labels.OwnerNameKey.The comment says “same
ClusterExtension”, but this query only matches the owner-name label. If aClusterExtensionis deleted and recreated with the same name, staleClusterObjectSets from the old owner UID will now be treated as siblings here. With this change those stale revisions flow intoWithSiblingOwners(...), so reconciliation can suppress real collisions or archive revisions that belong to a different owner instance. Please also match the controller reference/UID (or persist an owner-UID label) before returning siblings, and add a recreate-with-same-name regression test.Based on learnings, prefer fail-safe behavior and explicit invariants over implicit assumptions.
Also applies to: 451-465
🤖 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 `@internal/operator-controller/controllers/clusterobjectset_controller.go` around lines 444 - 447, The sibling lookup in `clusterobjectset_controller.go` only filters by `labels.OwnerNameKey`, so `List` can վերադարձ stale `ClusterObjectSet`s from a deleted-and-recreated `ClusterExtension` with the same name. Update the sibling selection in the `TrackingCache.List` / `WithSiblingOwners(...)` path to also verify a stable owner identity such as controller reference UID or an owner-UID label, and keep only sets that belong to the same owner instance. Add a regression test covering recreate-with-same-name to ensure old revisions are not treated as siblings.Source: Learnings
🤖 Prompt for all review comments with 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.
Inline comments:
In `@go.mod`:
- Around line 218-233: The OpenTelemetry dependencies are split across minor
versions, so update the remaining v1.43.0 entries to match the v1.44.0 line
already used by go.opentelemetry.io/otel, including
go.opentelemetry.io/otel/exporters/otlp/otlptrace,
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc, and
go.opentelemetry.io/otel/sdk in both go.mod files to keep the otel module set
aligned.
In `@Makefile`:
- Around line 635-637: The demo-update loop in the Makefile can mask an earlier
failing generate-asciidemo.sh run because it keeps iterating and only returns
the last exit status. Update the demo validation loop around the
hack/demo/*-demo-script.sh iteration to fail fast: check each
generate-asciidemo.sh invocation immediately and exit the target non-zero on the
first failure, so make update-demos stops as soon as any demo validation breaks.
---
Outside diff comments:
In `@internal/operator-controller/controllers/clusterobjectset_controller.go`:
- Around line 444-447: The sibling lookup in `clusterobjectset_controller.go`
only filters by `labels.OwnerNameKey`, so `List` can վերադարձ stale
`ClusterObjectSet`s from a deleted-and-recreated `ClusterExtension` with the
same name. Update the sibling selection in the `TrackingCache.List` /
`WithSiblingOwners(...)` path to also verify a stable owner identity such as
controller reference UID or an owner-UID label, and keep only sets that belong
to the same owner instance. Add a regression test covering
recreate-with-same-name to ensure old revisions are not treated as siblings.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 412b85eb-4d08-4ea1-a8ac-e19affd9caa7
⛔ Files ignored due to path filters (309)
go.sumis excluded by!**/*.sumopenshift/tests-extension/go.sumis excluded by!**/*.sumopenshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/README.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/decode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/stream.gois excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/tag.gois excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/go-openapi/jsonreference/.gitignoreis excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/go-openapi/jsonreference/CONTRIBUTORS.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/go-openapi/jsonreference/README.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/.golangci.ymlis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/AGENTS.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/CHANGELOG.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/CLAUDE.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/CONTRIBUTING.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/Makefileis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/encoder.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/hash.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/key.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/kv.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/set.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/type_string.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/value.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/baggage/baggage.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/dependencies.Dockerfileis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/asyncfloat64.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/asyncint64.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/config.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/instrument.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/syncfloat64.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/syncint64.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/propagation/baggage.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.37.0/attribute_group.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.40.0/attribute_group.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.40.0/error_type.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.40.0/httpconv/metric.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.40.0/otelconv/metric.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/MIGRATION.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/README.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/attribute_group.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/error_type.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/exception.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/schema.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/trace/auto.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/trace/config.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/trace/internal/telemetry/span.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/version.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/versions.yamlis excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/cryptobyte/asn1.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/cryptobyte/asn1/asn1.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/cryptobyte/builder.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/cryptobyte/string.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/certs.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/channel.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/cipher.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/client.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/client_auth.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/connection.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/control.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/kex.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/keys.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/mux.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/server.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/session.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/entity.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/escape.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/foreign.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/parse.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/token.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/http2/server_wrap.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/http2/transport_wrap.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/serialization.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/README.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/alias.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_any.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_default.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_funcs.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_inlined.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_methods.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_time.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/decode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/encode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/errors.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/fields.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/fold.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/intern.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/internal.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonflags/flags.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonopts/options.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/decode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/encode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/wire.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/alias.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/decode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/encode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/errors.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/export.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/options.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/pools.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/quote.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/state.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/token.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/value.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/migrate.shis excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/options.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/value.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/schemaconv/openapi.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/schemaconv/proto_models.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/encoding.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/example.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/external_documentation.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/header.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/media_type.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/operation.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/parameter.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/path.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/request_body.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/response.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/security_scheme.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/server.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/spec.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/header.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/info.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/items.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/operation.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/parameter.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/path_item.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/paths.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/response.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/responses.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/schema.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/security_scheme.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/swagger.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/tag.gois excluded by!**/vendor/**openshift/tests-extension/vendor/modules.txtis excluded by!**/vendor/**vendor/github.com/fxamacker/cbor/v2/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/fxamacker/cbor/v2/decode.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fxamacker/cbor/v2/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fxamacker/cbor/v2/stream.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fxamacker/cbor/v2/tag.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/jsonreference/.gitignoreis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/jsonreference/CONTRIBUTORS.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/jsonreference/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/CHANGELOG.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/array.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/as.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/as_go126.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/compose.yamlis excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/conn.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/conn_go18.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/connector.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/copy.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/deprecated.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/encode.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/error.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pgpass/pgpass.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pgservice/pgservice.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pqtime/loc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pqtime/pqtime.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pqutil/path.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pqutil/perm.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/proto/proto.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/notice.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/notify.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/pqerror/codes.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/pqerror/pqerror.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/ssl.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/mattn/go-isatty/isatty_others.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/mattn/go-isatty/isatty_windows.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/.golangci.ymlis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/AGENTS.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/CHANGELOG.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/CLAUDE.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/CONTRIBUTING.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/Makefileis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/encoder.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/hash.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/key.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/kv.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/set.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/type_string.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/value.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/baggage/baggage.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/dependencies.Dockerfileis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/asyncfloat64.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/asyncint64.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/config.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/doc.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/instrument.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/syncfloat64.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/syncint64.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/propagation/baggage.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.37.0/attribute_group.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.40.0/attribute_group.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.40.0/error_type.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.40.0/httpconv/metric.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.40.0/otelconv/metric.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/MIGRATION.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/README.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/attribute_group.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/doc.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/error_type.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/exception.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/schema.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/trace/auto.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/trace/config.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/trace/internal/telemetry/span.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/version.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/versions.yamlis excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/server_wrap.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/transport_wrap.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/go/packages/packages.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/diff/unified.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/gcimporter/iexport.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/gcimporter/iimport.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/typesinternal/element.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/typesinternal/types.gois excluded by!**/vendor/**,!vendor/**vendor/helm.sh/helm/v3/pkg/action/install.gois excluded by!**/vendor/**,!vendor/**vendor/helm.sh/helm/v3/pkg/chartutil/jsonschema.gois excluded by!**/vendor/**,!vendor/**vendor/helm.sh/helm/v3/pkg/registry/client.gois excluded by!**/vendor/**,!vendor/**vendor/helm.sh/helm/v3/pkg/registry/fallback.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/serialization.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/README.mdis excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/alias.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_any.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_default.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_funcs.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_inlined.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_methods.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_time.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/decode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/doc.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/encode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/errors.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/fields.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/fold.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/intern.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/internal.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonflags/flags.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonopts/options.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/decode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/encode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/wire.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/alias.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/decode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/doc.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/encode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/errors.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/export.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/options.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/pools.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/quote.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/state.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/token.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/value.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/migrate.shis excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/options.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/value.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/schemaconv/openapi.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/schemaconv/proto_models.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/encoding.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/example.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/external_documentation.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/header.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/media_type.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/operation.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/parameter.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/path.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/request_body.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/response.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/security_scheme.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/server.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/spec.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/header.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/info.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/items.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/operation.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/parameter.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/path_item.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/paths.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/response.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/responses.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/schema.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/security_scheme.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/swagger.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/tag.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/validate/result.gois excluded by!**/vendor/**,!vendor/**vendor/modules.txtis excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/.codecov.yamlis excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/.golangci.yamlis excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/AGENTS.mdis excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/boxcutter.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/comparator.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/objects.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/results.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/types/options.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/types/types.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/managedcache/objectboundaccess.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/managedcache/trackingcache.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/ownerhandling/annotation.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/ownerhandling/native.gois excluded by!**/vendor/**,!vendor/**
📒 Files selected for processing (7)
Makefilego.modinternal/operator-controller/catalogmetadata/client/httputil.gointernal/operator-controller/controllers/clusterobjectset_controller.gointernal/operator-controller/controllers/clusterobjectset_controller_internal_test.gointernal/operator-controller/controllers/revision_engine_factory.goopenshift/tests-extension/go.mod
✅ Files skipped from review due to trivial changes (1)
- internal/operator-controller/catalogmetadata/client/httputil.go
| go.opentelemetry.io/otel v1.44.0 // indirect | ||
| go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.43.0 // indirect | ||
| go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.43.0 // indirect | ||
| go.opentelemetry.io/otel/metric v1.43.0 // indirect | ||
| go.opentelemetry.io/otel/metric v1.44.0 // indirect | ||
| go.opentelemetry.io/otel/sdk v1.43.0 // indirect | ||
| go.opentelemetry.io/otel/trace v1.43.0 // indirect | ||
| go.opentelemetry.io/otel/trace v1.44.0 // indirect | ||
| go.opentelemetry.io/proto/otlp v1.10.0 // indirect | ||
| go.podman.io/common v0.68.0 // indirect | ||
| go.podman.io/storage v1.63.0 // indirect | ||
| go.yaml.in/yaml/v2 v2.4.4 // indirect | ||
| go.yaml.in/yaml/v3 v3.0.4 // indirect | ||
| golang.org/x/crypto v0.51.0 // indirect | ||
| golang.org/x/net v0.55.0 // indirect | ||
| golang.org/x/crypto v0.53.0 // indirect | ||
| golang.org/x/net v0.56.0 // indirect | ||
| golang.org/x/oauth2 v0.36.0 // indirect | ||
| golang.org/x/sys v0.46.0 // indirect | ||
| golang.org/x/term v0.43.0 // indirect | ||
| golang.org/x/term v0.44.0 // indirect |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
rg -n 'go\.opentelemetry\.io/otel(/| )|go\.opentelemetry\.io/otel/exporters/otlp|go\.opentelemetry\.io/otel/sdk|go\.opentelemetry\.io/otel/trace|go\.opentelemetry\.io/otel/metric' go.mod openshift/tests-extension/go.modRepository: openshift/operator-framework-operator-controller
Length of output: 1182
🌐 Web query:
OpenTelemetry Go module version compatibility mixed minor versions otel sdk exporters otlp trace metric v1.43.0 v1.44.0
💡 Result:
In the OpenTelemetry Go ecosystem, modules are not guaranteed to be compatible simply by matching major versions; true compatibility is typically only assured for releases originating from the same commit [1]. While OpenTelemetry generally follows semantic versioning and aims for backward compatibility within a major version, relying on different minor versions across SDK components (e.g., mixing v1.43.0 and v1.44.0) can lead to unexpected runtime issues or dependency conflicts [1][2][3]. Key considerations for managing OpenTelemetry Go versions include: Dependency Consistency: OpenTelemetry maintainers typically release stable modules in unison, meaning they are tested and validated together [4]. Mixing minor versions (such as using v1.43.0 for the SDK and v1.44.0 for an OTLP exporter) is discouraged because it can result in conflicting internal dependencies, particularly when packages share underlying code or schema requirements [2][4]. Versioning Policy: OpenTelemetry Go follows standard Go module versioning [5][6]. Although the API guarantees backward compatibility for its stable components [7][3], mixing minor versions in your go.mod file may cause your build to pull in conflicting versions of transitive dependencies, which can lead to runtime errors, such as merging conflicts in Resource objects [2]. Best Practices: - Keep all OpenTelemetry modules at the same minor version (e.g., all at v1.44.0) to ensure the components are functionally aligned [3][4]. - If you encounter build or runtime issues after a partial upgrade, the recommended solution is to align all OpenTelemetry dependencies to the same version [3]. - When upgrading, it is generally safe and recommended to upgrade the entire suite of OpenTelemetry packages to the latest minor version to receive security patches and optimizations [3]. If you find that mixing versions is necessary for a specific reason, you should rigorously test the application, as the project does not explicitly guarantee compatibility across different minor versions of the SDK and exporters [1][3].
Citations:
- 1: Document compatibility between modules open-telemetry/opentelemetry-go#3806
- 2: Go OTEL version 1.39.0 -> 1.40.0 includes non backward compatible change open-telemetry/opentelemetry-go#7912
- 3: https://opentelemetry.io/docs/specs/otel/upgrading/
- 4: https://github.com/open-telemetry/opentelemetry-go/blob/v1.40.0/VERSIONING.md
- 5: https://github.com/open-telemetry/opentelemetry-go/blob/main/VERSIONING.md
- 6: Document our compatibility promise open-telemetry/opentelemetry-go#6274
- 7: https://opentelemetry.io/docs/specs/otel/versioning-and-stability/
Align the OpenTelemetry module versions
go.opentelemetry.io/otel, otel/metric, and otel/trace are on v1.44.0, while otel/exporters/otlp/* and otel/sdk are still on v1.43.0 in both go.mod and openshift/tests-extension/go.mod. Keep the OpenTelemetry packages on the same minor version to avoid pulling in an unsupported mix.
🤖 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` around lines 218 - 233, The OpenTelemetry dependencies are split
across minor versions, so update the remaining v1.43.0 entries to match the
v1.44.0 line already used by go.opentelemetry.io/otel, including
go.opentelemetry.io/otel/exporters/otlp/otlptrace,
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc, and
go.opentelemetry.io/otel/sdk in both go.mod files to keep the otel module set
aligned.
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6 to 6.4.0. - [Release notes](https://github.com/actions/setup-go/releases) - [Commits](actions/setup-go@v6...v6.4.0) --- updated-dependencies: - dependency-name: actions/setup-go dependency-version: 6.4.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…k (#2785) Run standard and experimental e2e tests simultaneously on separate KIND clusters via `make -j2 test-e2e test-experimental-e2e`, cutting local e2e wall-clock time by ~37% (25m → 16m). This is especially valuable when working with AI coding agents that benefit from faster feedback loops. Key changes: - Use Make pattern rules (kind-cluster-%, kind-load-%, etc.) with the stem identifying the variant. Cluster names, kubeconfig paths, and coverage names are derived by convention from the stem. Only variant-specific deviations need explicit overrides. - Remove .NOTPARALLEL directive (no longer needed with unique targets) - Isolate per-cluster kubeconfig files under .kubeconfig/ - Use separate KIND cluster names and prometheus host ports (30900 vs 30901) to avoid resource conflicts - Make PROMETHEUS_URL configurable via env var in summary reporter; skip summary generation when unset - Conditionally serialize kind-deploy when both targets run together to avoid races on shared files Linux prerequisite for parallel runs: sudo sysctl fs.inotify.max_user_instances=512 Co-authored-by: Claude <noreply@anthropic.com>
|
/test |
|
/retest |
|
/jira-refresh |
Signed-off-by: Todd Short <todd.short@me.com>
…to run outside of OCP
…ffinity for HA topology Rolling updates in HighlyAvailable clusters leave catalogd and operator-controller unavailable when the only running pod is evicted before its replacement is ready. Fix by defaulting replicas=1 and PDB disabled in the static Helm values (safe for SNO/External topologies, passes the SNO conformance test that asserts exactly one replica in SingleReplica topology mode). Add pod anti-affinity to prefer scheduling replicas on different nodes. cluster-olm-operator detects the cluster's ControlPlaneTopology at startup and overrides these values to replicas=2 and PDB enabled when a HighlyAvailable topology is detected, then re-renders the manifests before starting controllers. When a topology change is observed at runtime (exceedingly rare), the operator exits so its deployment controller restarts it, triggering a fresh Helm render with the correct values for the new topology. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Todd Short <tshort@redhat.com>
…etween both-watch-modes scenarios The both-watch-modes test loops over two scenarios (singlens, ownns) inside a single It block and was blocking on full namespace deletion between them. This caused flaky 300s timeouts on GCP techpreview clusters where master nodes run at 94-99% CPU, which starves the namespace controller and makes namespace termination arbitrarily slow. The wait was not guarding anything real: - EnsureCleanupClusterExtension already ensures the CE and CRD are gone; since CE deletion uses ForegroundPropagation, the ClusterObjectSet teardown must complete before the CE disappears, meaning all managed resources (Deployments, Services, etc.) are already deleted at that point. - The singleown bundle installs no ValidatingWebhookConfiguration or MutatingWebhookConfiguration, so there is no webhook admission risk. - Each scenario generates unique namespace names and CRD group suffixes via rand.String(4), so a terminating namespace from scenario 1 cannot collide with or interfere with scenario 2's resources. Trigger both namespace deletions and proceed without waiting. The DeferCleanup registrations that already exist will handle any residual cleanup after the spec exits. Fixes: OCPBUGS-84943 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Todd Short <tshort@redhat.com>
- Replace broken test-experimental-e2e target (test/experimental-e2e no longer exists) with /bin/true so triggered jobs always succeed - Pass -timeout=60m to go test; the previous invocation relied on Go's 10m default which is too short for BoxcutterRuntime clusters - Set E2E_STEP_TIMEOUT=15m; BoxcutterRuntime applies resources through sequential phases (CRD must reach Established before the deploy phase starts), making installations slower than the upstream 5m default - Skip ~@CatalogdHA scenarios (require multiple catalogd replicas not present in standard topology) - Skip ~@ProgressDeadline scenarios (require progressDeadlineMinutes < 10 but the OpenShift CRD enforces a minimum of 10) - Skip ~@httpproxy scenarios (too disruptive to cluster networking) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Todd Short <tshort@redhat.com>
The e2e-test-registry image is no longer built by CI after openshift/release#78581 removed it from the CI config. The dynamic per-scenario catalog system replaced the pre-built registry image, making this Dockerfile dead code.
It's no longer bring used. Signed-off-by: Todd Short <tshort@redhat.com>
Adds a new test that verifies cluster-olm-operator correctly configures operator-controller and catalogd deployments based on the cluster's control plane topology: - HA topologies (HighlyAvailable, HighlyAvailableArbiter, DualReplica): replicas=2 with a PodDisruptionBudget present - Non-HA topologies (SingleReplica/SNO, External): replicas=1, no PDB Also registers policyv1 in the test scheme to support PDB list queries. Assisted-by: claude Signed-off-by: Todd Short <tshort@redhat.com>
… builders Signed-off-by: Todd Short <tshort@redhat.com>
…ge to be consistent with ART for 5.0 Reconciling with https://github.com/openshift-eng/ocp-build-data/tree/7691ed4dc0b6585b358f9e73fb736ace9a48a286/images/ose-olm-operator-controller.yml
Set catalog image tags to v5.0 for the 4.23/5.0 release. Dynamically discover an installable package from the serving catalogs instead of hardcoding quay-operator v3.13.10, preferring quay-operator, cluster-logging, serverless-operator, logic-operator in that order then alling back to the first available package. Signed-off-by: Todd Short <tshort@redhat.com>
67229b9 to
ff57789
Compare
|
@openshift-bot: This pull request references Jira Issue OCPBUGS-92037, which is valid. The bug has been moved to the POST state. 3 validation(s) were run on this bug
DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
New changes are detected. LGTM label has been removed. |
|
@openshift-bot: This pull request references Jira Issue OCPBUGS-92037, which is valid. 3 validation(s) were run on this bug
DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with 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.
Inline comments:
In `@Makefile`:
- Line 339: The experimental E2E timeout override is still being inherited, so
`e2e-run-%` does not reliably get the longer timeout when invoked through
`test-experimental-e2e`. Update the `test-experimental-e2e` and `e2e-run-%`
Makefile targets so the fallback timeout is applied inside the `e2e-run-%`
recipe or `E2E_TIMEOUT` is assigned unconditionally there, ensuring the
experimental suite always uses the intended timeout rather than the inherited
25m value.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: a6727448-b2bf-46ae-b1e8-63bda7d11932
⛔ Files ignored due to path filters (309)
go.sumis excluded by!**/*.sumopenshift/tests-extension/go.sumis excluded by!**/*.sumopenshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/README.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/decode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/stream.gois excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/fxamacker/cbor/v2/tag.gois excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/go-openapi/jsonreference/.gitignoreis excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/go-openapi/jsonreference/CONTRIBUTORS.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/github.com/go-openapi/jsonreference/README.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/.golangci.ymlis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/AGENTS.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/CHANGELOG.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/CLAUDE.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/CONTRIBUTING.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/Makefileis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/encoder.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/hash.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/key.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/kv.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/set.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/type_string.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/attribute/value.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/baggage/baggage.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/dependencies.Dockerfileis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/asyncfloat64.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/asyncint64.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/config.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/instrument.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/syncfloat64.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/metric/syncint64.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/propagation/baggage.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.37.0/attribute_group.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.40.0/attribute_group.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.40.0/error_type.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.40.0/httpconv/metric.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.40.0/otelconv/metric.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/MIGRATION.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/README.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/attribute_group.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/error_type.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/exception.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/semconv/v1.41.0/schema.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/trace/auto.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/trace/config.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/trace/internal/telemetry/span.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/version.gois excluded by!**/vendor/**openshift/tests-extension/vendor/go.opentelemetry.io/otel/versions.yamlis excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/cryptobyte/asn1.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/cryptobyte/asn1/asn1.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/cryptobyte/builder.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/cryptobyte/string.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/certs.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/channel.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/cipher.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/client.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/client_auth.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/connection.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/control.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/kex.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/keys.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/mux.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/server.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/crypto/ssh/session.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/entity.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/escape.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/foreign.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/parse.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/html/token.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/http2/server_wrap.gois excluded by!**/vendor/**openshift/tests-extension/vendor/golang.org/x/net/http2/transport_wrap.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/serialization.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/README.mdis excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/alias.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_any.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_default.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_funcs.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_inlined.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_methods.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_time.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/decode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/encode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/errors.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/fields.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/fold.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/intern.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/internal.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonflags/flags.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonopts/options.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/decode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/encode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/wire.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/alias.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/decode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/doc.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/encode.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/errors.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/export.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/options.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/pools.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/quote.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/state.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/token.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/value.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/migrate.shis excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/options.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/value.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/schemaconv/openapi.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/schemaconv/proto_models.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/encoding.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/example.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/external_documentation.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/header.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/media_type.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/operation.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/parameter.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/path.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/request_body.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/response.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/security_scheme.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/server.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/spec3/spec.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/header.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/info.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/items.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/operation.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/parameter.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/path_item.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/paths.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/response.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/responses.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/schema.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/security_scheme.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/swagger.gois excluded by!**/vendor/**openshift/tests-extension/vendor/k8s.io/kube-openapi/pkg/validation/spec/tag.gois excluded by!**/vendor/**openshift/tests-extension/vendor/modules.txtis excluded by!**/vendor/**vendor/github.com/fxamacker/cbor/v2/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/fxamacker/cbor/v2/decode.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fxamacker/cbor/v2/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fxamacker/cbor/v2/stream.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fxamacker/cbor/v2/tag.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/jsonreference/.gitignoreis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/jsonreference/CONTRIBUTORS.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/jsonreference/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/CHANGELOG.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/array.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/as.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/as_go126.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/compose.yamlis excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/conn.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/conn_go18.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/connector.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/copy.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/deprecated.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/encode.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/error.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pgpass/pgpass.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pgservice/pgservice.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pqtime/loc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pqtime/pqtime.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pqutil/path.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/pqutil/perm.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/internal/proto/proto.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/notice.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/notify.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/pqerror/codes.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/pqerror/pqerror.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/lib/pq/ssl.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/mattn/go-isatty/isatty_others.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/mattn/go-isatty/isatty_windows.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/.golangci.ymlis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/AGENTS.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/CHANGELOG.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/CLAUDE.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/CONTRIBUTING.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/Makefileis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/encoder.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/hash.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/key.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/kv.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/set.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/type_string.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/attribute/value.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/baggage/baggage.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/dependencies.Dockerfileis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/asyncfloat64.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/asyncint64.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/config.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/doc.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/instrument.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/syncfloat64.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/metric/syncint64.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/propagation/baggage.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.37.0/attribute_group.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.40.0/attribute_group.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.40.0/error_type.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.40.0/httpconv/metric.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.40.0/otelconv/metric.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/MIGRATION.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/README.mdis excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/attribute_group.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/doc.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/error_type.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/exception.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/semconv/v1.41.0/schema.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/trace/auto.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/trace/config.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/trace/internal/telemetry/span.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/version.gois excluded by!**/vendor/**,!vendor/**vendor/go.opentelemetry.io/otel/versions.yamlis excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/server_wrap.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/transport_wrap.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/go/packages/packages.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/diff/unified.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/gcimporter/iexport.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/gcimporter/iimport.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/typesinternal/element.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/tools/internal/typesinternal/types.gois excluded by!**/vendor/**,!vendor/**vendor/helm.sh/helm/v3/pkg/action/install.gois excluded by!**/vendor/**,!vendor/**vendor/helm.sh/helm/v3/pkg/chartutil/jsonschema.gois excluded by!**/vendor/**,!vendor/**vendor/helm.sh/helm/v3/pkg/registry/client.gois excluded by!**/vendor/**,!vendor/**vendor/helm.sh/helm/v3/pkg/registry/fallback.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/serialization.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/README.mdis excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/alias.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_any.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_default.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_funcs.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_inlined.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_methods.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/arshal_time.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/decode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/doc.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/encode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/errors.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/fields.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/fold.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/intern.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/internal.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonflags/flags.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonopts/options.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/decode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/encode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/internal/jsonwire/wire.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/alias.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/decode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/doc.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/encode.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/errors.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/export.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/options.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/pools.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/quote.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/state.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/token.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/jsontext/value.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/migrate.shis excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/options.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/internal/third_party/go-json-experiment/json/value.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/schemaconv/openapi.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/schemaconv/proto_models.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/encoding.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/example.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/external_documentation.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/header.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/media_type.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/operation.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/parameter.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/path.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/request_body.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/response.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/security_scheme.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/server.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/spec3/spec.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/header.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/info.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/items.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/operation.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/parameter.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/path_item.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/paths.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/response.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/responses.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/schema.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/security_scheme.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/swagger.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/spec/tag.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/kube-openapi/pkg/validation/validate/result.gois excluded by!**/vendor/**,!vendor/**vendor/modules.txtis excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/.codecov.yamlis excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/.golangci.yamlis excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/AGENTS.mdis excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/boxcutter.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/comparator.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/objects.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/results.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/types/options.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/machinery/types/types.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/managedcache/objectboundaccess.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/managedcache/trackingcache.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/ownerhandling/annotation.gois excluded by!**/vendor/**,!vendor/**vendor/pkg.package-operator.run/boxcutter/ownerhandling/native.gois excluded by!**/vendor/**,!vendor/**
📒 Files selected for processing (12)
.gitignoreAGENTS.mdMakefilego.modinternal/operator-controller/catalogmetadata/client/httputil.gointernal/operator-controller/controllers/clusterobjectset_controller.gointernal/operator-controller/controllers/clusterobjectset_controller_internal_test.gointernal/operator-controller/controllers/revision_engine_factory.gokind-config/kind-config-2node.yamlopenshift/tests-extension/go.modtest/e2e/README.mdtest/internal/summary/summary.go
✅ Files skipped from review due to trivial changes (4)
- AGENTS.md
- .gitignore
- kind-config/kind-config-2node.yaml
- test/e2e/README.md
🚧 Files skipped from review as they are similar to previous changes (6)
- internal/operator-controller/catalogmetadata/client/httputil.go
- openshift/tests-extension/go.mod
- internal/operator-controller/controllers/clusterobjectset_controller.go
- internal/operator-controller/controllers/revision_engine_factory.go
- internal/operator-controller/controllers/clusterobjectset_controller_internal_test.go
- go.mod
| test-experimental-e2e: E2E_SOURCE_MANIFEST := $(EXPERIMENTAL_E2E_MANIFEST) | ||
| test-experimental-e2e: E2E_RELEASE_MANIFEST := $(EXPERIMENTAL_RELEASE_MANIFEST) | ||
| test-experimental-e2e: E2E_PROMETHEUS_VALUES := testdata/prometheus/values-experimental.yaml | ||
| test-experimental-e2e: E2E_TIMEOUT ?= 25m |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
make -n test-experimental-e2e 2>/dev/null | rg -n -- '-timeout[ =][^ ]+'Repository: openshift/operator-framework-operator-controller
Length of output: 186
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Find every E2E_TIMEOUT reference and show the surrounding Makefile context.
rg -n -C 3 'E2E_TIMEOUT|test-experimental-e2e|e2e-run-%' Makefile
# Show the relevant Makefile section with line numbers.
sed -n '320,450p' MakefileRepository: openshift/operator-framework-operator-controller
Length of output: 10696
🏁 Script executed:
#!/bin/bash
set -euo pipefail
tmpdir="$(mktemp -d)"
cat >"$tmpdir/Makefile" <<'EOF'
.PHONY: parent child
parent: VAR ?= 25m
parent: child
child: VAR ?= 20m
child:
`@echo` VAR=$(VAR)
EOF
echo "=== make parent ==="
make -C "$tmpdir" parent
echo "=== make child VAR from parent chain via intermediate target ==="
cat >"$tmpdir/Makefile" <<'EOF'
.PHONY: parent mid child
parent: VAR ?= 25m
parent: mid
mid: child
child: VAR ?= 20m
child:
`@echo` VAR=$(VAR)
EOF
make -C "$tmpdir" parent
echo "=== make -n with debug output ==="
make -C "$tmpdir" -n parent --debug=v 2>&1 | sed -n '1,120p'Repository: openshift/operator-framework-operator-controller
Length of output: 249
🌐 Web query:
GNU make target-specific variable assignment ?= inherited prerequisite precedence
💡 Result:
In GNU make, target-specific variable assignments—including the conditional assignment operator?=—function within the context of a specific target and are inherited by its prerequisites [1][2]. Key behaviors regarding target-specific variables and their inheritance include: 1. Inheritance Mechanism: When you define a target-specific variable, its value remains in effect for the recipe of that target and for the recipes of all its prerequisites (and their descendants), unless a prerequisite explicitly overrides it with its own target-specific variable value [2][3]. 2. Conditional Assignment (?=): The?= operator sets a variable only if it is not already defined [4]. When used as a target-specific assignment, it checks if the variable is defined within the context of the target. Because target-specific variables are effectively distinct from global variables, a target-specific?= assignment will use the global value if no target-specific value has been set yet, or it will do nothing if a target-specific value already exists for that target [1]. 3. Prerequisite Precedence and Scope: Target-specific variables are only available within the context of a target’s recipe and in other target-specific assignments [1][2]. They are generally not available during the initial parsing phase or in the prerequisite list of a rule [5][6]. If a file is a prerequisite for multiple targets, it inherits the target-specific variable values from the first target that triggers its build [1]. Prerequisites do not inherit target-specific variables from each other, only from the parent target that is currently being built [6]. 4. Precedence: Target-specific variables have the same priority as other makefile variables but are overridden by variables defined on the command line or via the override directive [1][2]. If a prerequisite has its own target-specific variable defined for the same variable name, that definition takes precedence over the inherited value [2][6].
Citations:
- 1: http://www.gnu.org/software/make/manual/html_node/Target_002dspecific.html
- 2: https://www.tack.ch/gnu/make/make_70.html
- 3: https://www.cs.dartmouth.edu/~cs23/make-documentation/Target_002dspecific.html
- 4: https://www.gnu.org/software/make/manual/html_node/Conditional-Assignment.html
- 5: https://stackoverflow.com/questions/57989276/makefile-target-specific-variables-in-target-dependencies-declaration
- 6: https://stackoverflow.com/questions/22679137/target-specific-variables-in-a-makefile-prerequisites
Preserve the experimental timeout override. The ?= on e2e-run-% won’t override the inherited E2E_TIMEOUT=25m from test-experimental-e2e, so the experimental suite can still run with the 25m value. Move the fallback into the recipe or set E2E_TIMEOUT unconditionally on e2e-run-%.
🧰 Tools
🪛 checkmake (0.3.2)
[warning] 339-339: Target "test-experimental-e2e" defined multiple times (lines 334 and 339).
(uniquetargets)
🤖 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 `@Makefile` at line 339, The experimental E2E timeout override is still being
inherited, so `e2e-run-%` does not reliably get the longer timeout when invoked
through `test-experimental-e2e`. Update the `test-experimental-e2e` and
`e2e-run-%` Makefile targets so the fallback timeout is applied inside the
`e2e-run-%` recipe or `E2E_TIMEOUT` is assigned unconditionally there, ensuring
the experimental suite always uses the intended timeout rather than the
inherited 25m value.
|
@openshift-bot: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
JIRA Tickets:
The downstream repository has been updated with the following following upstream commits:
The
vendor/directory has been updated and the following commits were carried:@catalogd-updateThis pull request is expected to merge without any human intervention. If tests are failing here, changes must land upstream to fix any issues so that future downstreaming efforts succeed.
/assign @openshift/openshift-team-operator-runtime
Summary by CodeRabbit
New Features
Bug Fixes
Documentation