From 7624422635d15c33463f6a85ac2ccb1b0db452ec Mon Sep 17 00:00:00 2001 From: Nikhita Raghunath Date: Fri, 6 Dec 2019 15:53:00 +0530 Subject: [PATCH] client-go: update INSTALL.md to include semver tags Kubernetes-commit: ca36822f1e7ae718853e2dcd4013cc4e5ab27774 --- INSTALL.md | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 7d8bb5d9..6b2fff6b 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -52,14 +52,30 @@ go mod init ### Add client-go as a dependency -Indicate which version of `client-go` your project requires (replace `kubernetes-1.15.0` with the desired version): +Indicate which version of `client-go` your project requires: + +- If you are using Kubernetes versions >= `v1.17.0`, use a corresponding +`v0.x.y` tag. For example, `k8s.io/client-go@v0.17.0` corresponds to Kubernetes `v1.17.0`: ```sh -go get k8s.io/client-go@kubernetes-1.15.0 +go get k8s.io/client-go@v0.17.0 +``` + +You can also use a non-semver `kubernetes-1.x.y` tag to refer to a version +of `client-go` corresponding to a given Kubernetes release. Prior to Kubernetes +`v1.17.0` these were the only tags available for use with go modules. +For example, `kubernetes-1.16.3` corresponds to Kubernetes `v1.16.3`. +However, it is recommended to use semver-like `v0.x.y` tags over non-semver +`kubernetes-1.x.y` tags to have a seamless experience with go modules. + +- If you are using Kubernetes versions < `v1.17.0` (replace `kubernetes-1.16.3` with the desired version): + +```sh +go get k8s.io/client-go@kubernetes-1.16.3 ``` You can now import and use the `k8s.io/client-go` APIs in your project. The next time you `go build`, `go test`, or `go run` your project, `k8s.io/client-go` and its dependencies will be downloaded (if needed), and detailed dependency version info will be added to your `go.mod` file -(or you can also run `go mod tidy` to do this directly). \ No newline at end of file +(or you can also run `go mod tidy` to do this directly).