diff --git a/.circleci/config.yml b/.circleci/config.yml index c0fcf6dfc7..467f61e2ca 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -11,7 +11,7 @@ jobs: # Needed to install go OS: linux ARCH: amd64 - GOVERSION: 1.11 + GOVERSION: 1.13 # Needed to install protoc PROTOC_VERSION: 3.6.1 diff --git a/Dockerfile b/Dockerfile index fa099aa4f2..85a00f30d7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,10 @@ # NOTE(dperny): for some reason, alpine was giving me trouble -FROM golang:1.11.0-stretch +ARG GO_VERSION=1.13.15 +ARG DEBIAN_FRONTEND=noninteractive +ARG BASE_DEBIAN_DISTRO="buster" +ARG GOLANG_IMAGE="golang:${GO_VERSION}-${BASE_DEBIAN_DISTRO}" + +FROM ${GOLANG_IMAGE} RUN apt-get update && apt-get install -y make git unzip @@ -16,6 +21,7 @@ WORKDIR /go/src/github.com/docker/swarmkit/ # install the dependencies from `make setup` # we only copy `direct.mk` to avoid busting the cache too easily COPY direct.mk . +COPY hack/protobuild hack/protobuild RUN make --file=direct.mk setup # now we can copy the rest diff --git a/README.md b/README.md index ffc744c313..36a43de881 100644 --- a/README.md +++ b/README.md @@ -332,3 +332,5 @@ drzndxnjz3c8iujdewzaplgr6 redis 5 redis:3.0.7 RUNNING ``` As you can see, every Task running on `node-1` was rebalanced to either `node-2` or `node-3` by the reconciliation loop. + + diff --git a/direct.mk b/direct.mk index 4e1f4bf216..17f418217d 100644 --- a/direct.mk +++ b/direct.mk @@ -42,7 +42,11 @@ setup: ## install dependencies # install golangci-lint version 1.17.1 to ./bin/golangci-lint @curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s v1.17.1 @go get -u github.com/lk4d4/vndr - @go get -u github.com/stevvooe/protobuild + # horrid, awful hack to fix CI. we use a version of protobuild that predates + # some changes that result in it failing on some newer version because of + # dependencies. this is a binary checked into this branch, then copied into + # the go path where it would be expected. + @cp $$(go env GOPATH)/src/github.com/docker/swarmkit/hack/protobuild $$(go env GOPATH)/bin/protobuild .PHONY: generate generate: protos diff --git a/hack/protobuild b/hack/protobuild new file mode 100755 index 0000000000..a0dc71364b Binary files /dev/null and b/hack/protobuild differ