Skip to content

Commit 0ac5ae2

Browse files
author
Chao Xu
committed
Update dep support
1 parent dbe8fe0 commit 0ac5ae2

File tree

1 file changed

+12
-35
lines changed

1 file changed

+12
-35
lines changed

INSTALL.md

Lines changed: 12 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -143,38 +143,15 @@ After modifying, run `glide up -v` again to re-populate your /vendor directory.
143143
Optionally, Glide users can also use [`glide-vc`](https://github.com/sgotti/glide-vc)
144144
after running `glide up -v` to remove unused files from /vendor.
145145

146-
### Dep
147-
148-
[dep](https://github.com/golang/dep) is an up-and-coming dependency management tool,
149-
which has the goal of being accepted as part of the standard go toolchain. Its
150-
status is currently alpha. However, it comes the closest to working easily out
151-
of the box.
152-
153-
```sh
154-
$ go get github.com/golang/dep
155-
$ go install github.com/golang/dep/cmd/dep
156-
157-
# Make sure you have a go file in your directory which imports a package of
158-
# k8s.io/client-go first--I suggest copying one of the examples.
159-
$ dep init
160-
$ dep ensure k8s.io/client-go@^2.0.0
161-
```
162-
163-
Then you can try one of the
164-
[examples](https://github.com/kubernetes/client-go/tree/v2.0.0/examples/) from
165-
the 2.0.0 release.
166-
167-
This will set up a `vendor` directory in your current directory, add `k8s.io/client-go`
168-
to it, and flatten all of `k8s.io/client-go`'s dependencies into that vendor directory,
169-
so that your code and `client-go` will both get the same copy of each
170-
dependency.
171-
172-
After installing like this, you could either use dep for your other
173-
dependencies, or copy everything in the `vendor` directory into your
174-
`$GOPATH/src` directory and proceed as if you had done a fancy `go get` that
175-
flattened dependencies sanely.
176-
177-
One thing to note about dep is that it will omit dependencies that aren't
178-
actually used, and some dependencies of `client-go` are used only if you import
179-
one of the plugins (for example, the auth plugins). So you may need to run `dep
180-
ensure` again if you start importing a plugin that you weren't using before.
146+
### Dep (Not supported yet!)
147+
148+
[dep](https://github.com/golang/dep) is an up-and-coming dependency management
149+
tool, which has the goal of being accepted as part of the standard go toolchain.
150+
However, client-go does not work well with `dep` yet. To support `dep`, we need
151+
to fix at least two issues:
152+
1. publish native `Gopkg.toml` in client-go and other k8s.io repos, like `k8s.io/apimachinery`;
153+
2. find a way to express transitive constraints (see https://github.com/golang/dep/issues/1124).
154+
155+
If you use `dep` with client-go safely today, you have to specify client-go
156+
dependencies manually in Gopkg.toml with the versions listed in
157+
[Godeps.json](./Godeps/Godeps.json).

0 commit comments

Comments
 (0)