Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

client dependencies to k8s.io/client-go #473

Closed
daisy-ycguo opened this issue Nov 4, 2019 · 3 comments
Closed

client dependencies to k8s.io/client-go #473

daisy-ycguo opened this issue Nov 4, 2019 · 3 comments
Labels
kind/question Issue type question

Comments

@daisy-ycguo
Copy link
Member

Ask your question here:

In client/go.mod, it is said:

	k8s.io/api v0.0.0-20190226173710-145d52631d00
	k8s.io/apimachinery v0.0.0-20190221084156-01f179d85dbc
	k8s.io/cli-runtime v0.0.0-20190325194458-f2b4781c3ae1
	k8s.io/client-go v0.0.0-20190226174127-78295b709ec6
	k8s.io/kube-openapi v0.0.0-20190722073852-5e22f3d471e6 // indirect

Yet, Client has dependencies to knative.dev/pkg. The dependencies in knative.dev/pkg are defined as

[[constraint]]
  name = "k8s.io/api"
  version = "kubernetes-1.15.3"

[[override]]
  name = "k8s.io/apiextensions-apiserver"
  version = "kubernetes-1.15.3"

[[constraint]]
  name = "k8s.io/apimachinery"
  version = "kubernetes-1.15.3"

[[constraint]]
  name = "k8s.io/client-go"
  version = "kubernetes-1.15.3"

[[constraint]]
  name = "k8s.io/code-generator"
  version = "kubernetes-1.15.3"

The version of k8s.io/client-go used by client is older than knative.dev/pkg. It will cause problem when adding eventing dependencies. Do we need to manually change the dependency to k8s.io/client-go from v0.0.0-20190226174127-78295b709ec6 to kubernetes-1.15.3 ?

@daisy-ycguo daisy-ycguo added the kind/question Issue type question label Nov 4, 2019
@rhuss
Copy link
Contributor

rhuss commented Nov 4, 2019

Yes, its an issue if transitive dependencies mismatch. The best solution is to update/downgrade the original dependencies so that there common transistive dependency align.

In this case I suggest to update manually k8s.io/client-go v0.0.0-20190226174127-78295b709ec6 to k8s.io/client-go kubernetes-1.15.3 manually (the timestamp will be inserted during compile run). We should align with knative.dev/pkg's kubernetes dependency anyway.

@daisy-ycguo
Copy link
Member Author

daisy-ycguo commented Nov 4, 2019

Thanks Roland.

After testing for several times, I find the best appropriate versions for those dependencies:

k8s.io/api v0.0.0-20190528110122-9ad12a4af326 // v1.12.9, required by Serving 0.9 and Eventing 0.9
k8s.io/cli-runtime v0.0.0-20190528110732-ad79ea2fbc0f // v1.12.9, required by Serving 0.9 and Eventing 0.9
k8s.io/client-go v0.0.0-20190528110200-4f3abb12cae2 // v1.12.9, required by Serving 0.9 and Eventing 0.9
knative.dev/eventing v0.9.0 // have to use 0.9.0, because v0.10.0 cannot work with knative.dev/pkg release-0.9
knative.dev/pkg v0.0.0-20190913154335-74659889c421 // release-0.9, required by Serving 0.9 and Eventing 0.9
knative.dev/serving v0.9.0

I made these changes in my PR #470

@daisy-ycguo
Copy link
Member Author

daisy-ycguo commented Nov 4, 2019

I have to keep the current k8s libraries version because of a wired issue caused by Doc generation.
We will wait for a next big upgrade to k8s v1.15 directly then.
I closed this issue.

coryrc pushed a commit to coryrc/client that referenced this issue May 14, 2020
…native#473)

* Remove unnecessary bundling: serving and build, and build and istio.

* Also disable waiting for build pods if build is no longer installed.
dsimansk pushed a commit to dsimansk/client that referenced this issue Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/question Issue type question
Projects
None yet
Development

No branches or pull requests

2 participants