From 8ecee6edaf2b834c34e77f71da9e7bdc28ea6136 Mon Sep 17 00:00:00 2001 From: Chris Crone Date: Thu, 18 Feb 2021 13:53:00 +0100 Subject: [PATCH 1/3] deps: Bump Docker, Golang, linter * Docker 20.10.3 * Golang 1.16 * golangci-lint 1.37.0 Signed-off-by: Chris Crone --- .github/workflows/aci-tests.yml | 2 +- .github/workflows/ci.yml | 4 ++-- .github/workflows/ecs-tests.yml | 2 +- .github/workflows/kube-tests.yml | 2 +- .github/workflows/release.yaml | 4 ++-- Dockerfile | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/aci-tests.yml b/.github/workflows/aci-tests.yml index 0f9a43cf..2854f62b 100644 --- a/.github/workflows/aci-tests.yml +++ b/.github/workflows/aci-tests.yml @@ -36,7 +36,7 @@ jobs: - name: Setup docker CLI run: | - curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.2.tgz | tar xz + curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.3.tgz | tar xz sudo cp ./docker/docker /usr/bin/ && rm -rf docker && docker version - name: Checkout code into the Go module directory diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 20226555..fe1a56a3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,7 +32,7 @@ jobs: env: BUILD_TAGS: kube,e2e run: | - curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sudo sh -s -- -b /usr/bin/ v1.33.0 + curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sudo sh -s -- -b /usr/bin/ v1.37.0 make -f builder.Makefile lint build: @@ -51,7 +51,7 @@ jobs: - name: Setup docker CLI run: | - curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.2.tgz | tar xz + curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.3.tgz | tar xz sudo cp ./docker/docker /usr/bin/ && rm -rf docker && docker version - name: Checkout code into the Go module directory diff --git a/.github/workflows/ecs-tests.yml b/.github/workflows/ecs-tests.yml index 45d655d8..c19f67cd 100644 --- a/.github/workflows/ecs-tests.yml +++ b/.github/workflows/ecs-tests.yml @@ -37,7 +37,7 @@ jobs: - name: Setup docker CLI run: | - curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.2.tgz | tar xz + curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.3.tgz | tar xz sudo cp ./docker/docker /usr/bin/ && rm -rf docker && docker version - name: Checkout code into the Go module directory diff --git a/.github/workflows/kube-tests.yml b/.github/workflows/kube-tests.yml index fc113e56..932ea6ab 100644 --- a/.github/workflows/kube-tests.yml +++ b/.github/workflows/kube-tests.yml @@ -37,7 +37,7 @@ jobs: - name: Setup docker CLI run: | - curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.2.tgz | tar xz + curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.3.tgz | tar xz sudo cp ./docker/docker /usr/bin/ && rm -rf docker && docker version - name: Setup Kube tools diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 63b6e0e0..819d1dd8 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -16,13 +16,13 @@ jobs: - name: Setup docker CLI run: | - curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.2.tgz | tar xz + curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.3.tgz | tar xz sudo cp ./docker/docker /usr/bin/ && rm -rf docker && docker version - name: Checkout code into the Go module directory uses: actions/checkout@v2 - - uses: actions/cache@v1 + - uses: actions/cache@v2 with: path: ~/go/pkg/mod key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} diff --git a/Dockerfile b/Dockerfile index 00f36c83..1d958457 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,7 +16,7 @@ # limitations under the License. ARG GO_VERSION=1.16-alpine -ARG GOLANGCI_LINT_VERSION=v1.33.0-alpine +ARG GOLANGCI_LINT_VERSION=v1.37.0-alpine ARG PROTOC_GEN_GO_VERSION=v1.4.3 FROM --platform=${BUILDPLATFORM} golang:${GO_VERSION} AS base From 2c9cc00e0cb154c9d443713de0669ea971648a88 Mon Sep 17 00:00:00 2001 From: Chris Crone Date: Thu, 18 Feb 2021 13:58:31 +0100 Subject: [PATCH 2/3] build: Add Linux and Darwin arm64 builds Signed-off-by: Chris Crone --- builder.Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/builder.Makefile b/builder.Makefile index a1b00d8f..da3971e4 100644 --- a/builder.Makefile +++ b/builder.Makefile @@ -60,7 +60,9 @@ cli: .PHONY: cross cross: GOOS=linux GOARCH=amd64 $(GO_BUILD) $(TAGS) -o $(BINARY)-linux-amd64 ./cli + GOOS=linux GOARCH=arm64 $(GO_BUILD) $(TAGS) -o $(BINARY)-linux-arm64 ./cli GOOS=darwin GOARCH=amd64 $(GO_BUILD) $(TAGS) -o $(BINARY)-darwin-amd64 ./cli + GOOS=darwin GOARCH=arm64 $(GO_BUILD) $(TAGS) -o $(BINARY)-darwin-arm64 ./cli GOOS=windows GOARCH=amd64 $(GO_BUILD) $(TAGS) -o $(BINARY)-windows-amd64.exe ./cli .PHONY: test @@ -87,7 +89,9 @@ check-go-mod: package: cross mkdir -p dist tar -czf dist/docker-linux-amd64.tar.gz $(TAR_TRANSFORM) packaging/LICENSE $(BINARY)-linux-amd64 + tar -czf dist/docker-linux-arm64.tar.gz $(TAR_TRANSFORM) packaging/LICENSE $(BINARY)-linux-arm64 tar -czf dist/docker-darwin-amd64.tar.gz $(TAR_TRANSFORM) packaging/LICENSE $(BINARY)-darwin-amd64 + tar -czf dist/docker-darwin-arm64.tar.gz $(TAR_TRANSFORM) packaging/LICENSE $(BINARY)-darwin-arm64 cp $(BINARY)-windows-amd64.exe $(WORK_DIR)/docker.exe rm -f dist/docker-windows-amd64.zip && zip dist/docker-windows-amd64.zip -j packaging/LICENSE $(WORK_DIR)/docker.exe rm -r $(WORK_DIR) From a4a3a38dd87b6baefbbfd2ffa16d33510fa6b816 Mon Sep 17 00:00:00 2001 From: Chris Crone Date: Thu, 18 Feb 2021 17:29:05 +0100 Subject: [PATCH 3/3] lint: Fix linting errors Signed-off-by: Chris Crone --- cli/cmd/compose/down.go | 6 ++---- cli/cmd/compose/pull.go | 1 + local/compose/down.go | 15 +++++++-------- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/cli/cmd/compose/down.go b/cli/cmd/compose/down.go index 1339aafb..36ac97e5 100644 --- a/cli/cmd/compose/down.go +++ b/cli/cmd/compose/down.go @@ -19,16 +19,14 @@ package compose import ( "context" "fmt" - "github.com/docker/compose-cli/api/context/store" "time" "github.com/compose-spec/compose-go/types" - - "github.com/docker/compose-cli/api/compose" - "github.com/spf13/cobra" "github.com/docker/compose-cli/api/client" + "github.com/docker/compose-cli/api/compose" + "github.com/docker/compose-cli/api/context/store" "github.com/docker/compose-cli/api/progress" ) diff --git a/cli/cmd/compose/pull.go b/cli/cmd/compose/pull.go index 3dca9eb7..d7b8b7dd 100644 --- a/cli/cmd/compose/pull.go +++ b/cli/cmd/compose/pull.go @@ -18,6 +18,7 @@ package compose import ( "context" + "github.com/spf13/cobra" "github.com/docker/compose-cli/api/client" diff --git a/local/compose/down.go b/local/compose/down.go index b2967d1e..0c29f4da 100644 --- a/local/compose/down.go +++ b/local/compose/down.go @@ -19,20 +19,19 @@ package compose import ( "context" "fmt" - "github.com/docker/docker/errdefs" "path/filepath" "strings" "time" - "github.com/docker/compose-cli/api/compose" - - "github.com/docker/compose-cli/api/progress" - "github.com/compose-spec/compose-go/cli" "github.com/compose-spec/compose-go/types" moby "github.com/docker/docker/api/types" "github.com/docker/docker/api/types/filters" + "github.com/docker/docker/errdefs" "golang.org/x/sync/errgroup" + + "github.com/docker/compose-cli/api/compose" + "github.com/docker/compose-cli/api/progress" ) func (s *composeService) Down(ctx context.Context, projectName string, options compose.DownOptions) error { @@ -96,7 +95,7 @@ func (s *composeService) Down(ctx context.Context, projectName string, options c image := image eg.Go(func() error { resourceToRemove = true - return s.removeImage(image, w, err, ctx) + return s.removeImage(ctx, image, w) }) } } @@ -122,10 +121,10 @@ func (s *composeService) getServiceImages(options compose.DownOptions, projectNa return images } -func (s *composeService) removeImage(image string, w progress.Writer, err error, ctx context.Context) error { +func (s *composeService) removeImage(ctx context.Context, image string, w progress.Writer) error { id := fmt.Sprintf("Image %s", image) w.Event(progress.NewEvent(id, progress.Working, "Removing")) - _, err = s.apiClient.ImageRemove(ctx, image, moby.ImageRemoveOptions{}) + _, err := s.apiClient.ImageRemove(ctx, image, moby.ImageRemoveOptions{}) if err == nil { w.Event(progress.NewEvent(id, progress.Done, "Removed")) return nil