This repository has been archived by the owner on Apr 25, 2023. It is now read-only.
added blank import to ensure correct workqueue metric registration #1388
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
we're facing (as described here: #1386 and #1372) a racing condition on workqueue metrics registration, between
what we want is
sigs.k8s.io/controller-runtime/pkg/metrics
to get registered first, but both of:have a dependency from
k8s.io/apiserver/pkg/server
, that is bringingk8s.io/component-base/metrics/prometheus/workqueue
into the picture (and it gets initialized beforesigs.k8s.io/controller-runtime/pkg/metrics
this PR (#1386) solved the issue for the
controller-manager
executable produced withmake build
, but it doesn't solve it for the singlehyperfed
executable produced withmake container
as the compilation entrypoint is different (cmd/controller-manager/main.go
vscmd/hyperfed/main.go
)Which issue(s) this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)
format, will close the issue(s) when PR gets merged):Fixes #1386
Special notes for your reviewer:
I'm not sure if worth it to uniform the output between
make container
andmake build
, so that we produce the same executable (hyperfed
) on both targets.. please let me know your thoughts