Skip to content

Commit 9d81762

Browse files
committed
Use Go Modules instead of Glock (fixes #338)
Previously, this project was using glock to manage external go dependencies. As of go 1.11, go comes with builtin module support. Go Modules fully supersede glock functionality. As of go 1.16, either an environment variable or go modules are required for this project to build. This commit migrates the repository away from glock, and instead uses go modules. This gets rid of an unneeded dependency, and also allows the project to natively compile under go 1.16 (which requires `go.mod` by default). For go >= 1.13, compilation will "just work". To build under go 1.11 and go 1.12 one needs to set an environment variable 'GO111MODULE=on'. Since go <= 1.14 can be considered end of life, this change will likely not be impact any existing build scripts. This commit also updates the Travis Tests with more modern go versions, so that they can pass.
1 parent 4edc190 commit 9d81762

File tree

6 files changed

+254
-14
lines changed

6 files changed

+254
-14
lines changed

.travis.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
language: go
22
go:
3-
- "1.9"
4-
- "1.10"
5-
- "1.11"
3+
- "1.14"
4+
- "1.15"
5+
- "1.16"
66
install:
77
- make get-deps
88
script:

GLOCKFILE

Lines changed: 0 additions & 6 deletions
This file was deleted.

Makefile

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ dist: dist-clean
3030

3131

3232
release: dist
33-
glock sync -n < GLOCKFILE
33+
go mod tidy
3434
tar -cvzf docker-gen-alpine-linux-amd64-$(TAG).tar.gz -C dist/alpine-linux/amd64 docker-gen
3535
tar -cvzf docker-gen-alpine-linux-arm64-$(TAG).tar.gz -C dist/alpine-linux/arm64 docker-gen
3636
tar -cvzf docker-gen-alpine-linux-armhf-$(TAG).tar.gz -C dist/alpine-linux/armhf docker-gen
@@ -43,8 +43,7 @@ release: dist
4343
tar -cvzf docker-gen-darwin-i386-$(TAG).tar.gz -C dist/darwin/i386 docker-gen
4444

4545
get-deps:
46-
go get github.com/robfig/glock
47-
glock sync -n < GLOCKFILE
46+
go get ./...
4847

4948
check-gofmt:
5049
if [ -n "$(shell gofmt -l .)" ]; then \

README.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -434,8 +434,11 @@ $ docker-gen -notify "/bin/bash /tmp/etcd.sh" -interval 10 templates/etcd.tmpl /
434434

435435
### Development
436436

437-
This project uses [glock](https://github.com/robfig/glock) for managing 3rd party dependencies.
438-
You'll need to install glock into your workspace before hacking on docker-gen.
437+
This project uses [Go Modules](https://golang.org/ref/mod) for managing 3rd party dependencies.
438+
This means that at least `go 1.11` is required.
439+
440+
For `go 1.11` and `go 1.12` it is additionally required to manually enable support by setting `GO111MODULE=on`.
441+
For later versions, this is not required.
439442

440443
```
441444
$ git clone <your fork>

go.mod

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
module github.com/jwilder/docker-gen
2+
3+
go 1.11
4+
5+
require (
6+
github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78 // indirect
7+
github.com/BurntSushi/toml v0.3.1
8+
github.com/Microsoft/go-winio v0.4.16 // indirect
9+
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect
10+
github.com/containerd/continuity v0.0.0-20210315143101-93e15499afd5 // indirect
11+
github.com/docker/docker v1.4.2-0.20171014114940-f2afa2623594 // indirect
12+
github.com/docker/go-connections v0.4.0 // indirect
13+
github.com/docker/go-units v0.3.2 // indirect
14+
github.com/fsouza/go-dockerclient v0.0.0-20171009031830-d2a6d0596004
15+
github.com/gogo/protobuf v1.3.2 // indirect
16+
github.com/google/go-cmp v0.5.5 // indirect
17+
github.com/gorilla/context v1.1.1 // indirect
18+
github.com/gorilla/mux v0.0.0-20160718151158-d391bea3118c // indirect
19+
github.com/gotestyourself/gotestyourself v2.2.0+incompatible // indirect
20+
github.com/opencontainers/image-spec v1.0.1 // indirect
21+
github.com/opencontainers/runc v0.1.1 // indirect
22+
github.com/opencontainers/selinux v1.8.0 // indirect
23+
github.com/sirupsen/logrus v1.8.1 // indirect
24+
github.com/stretchr/testify v1.7.0 // indirect
25+
golang.org/x/sys v0.0.0-20210331175145-43e1dd70ce54 // indirect
26+
gotest.tools v2.2.0+incompatible // indirect
27+
)

0 commit comments

Comments
 (0)