-
Bug
-
Resolution: Done
-
Undefined
-
None
-
None
-
None
Discussion: https://coreos.slack.com/archives/C03CJTNLKAT/p1665564837164349
Gist of the issue:
both openshift/kubernetes and openshift/etcd/server use opentelemetry's semconv package which belong to go.opentelemetry.io/otel module. Problem is that these packages (o/k and o/etcd/server) use different versions:
- https://github.com/openshift/kubernetes/blob/release-4.12/go.mod#L80 - v0.20.0
- https://github.com/openshift/etcd/blob/openshift-4.12/server/go.mod#L35 - v1.0.1
The semconv package differs between these two versions:
- https://github.com/open-telemetry/opentelemetry-go/tree/v1.0.1/semconv - subdirs (better represented on main branch)
- https://github.com/open-telemetry/opentelemetry-go/tree/v0.20.0/semconv - files are directly there
To have both dependencies' dependency resolved, we'd have to vendor both versions of the same package which isn't a thing - vendored packages don't even have go.mods or any directories that aren't storing go files.
Unless there's another way we will look into taking https://github.com/openshift/microshift/pull/976 as base and moving o/etcd into a separate submodule and changing the rebase mechanism. An enhancement is needed to present the idea.