DockerCLI/Makefile

42 lines
963 B
Makefile

#
# github.com/docker/cli
#
# build the CLI
.PHONY: build
build: clean
@go build -o ./build/docker github.com/docker/cli/cmd/docker
# remove build artifacts
.PHONY: clean
clean:
@rm -rf ./build/*
# run go test
# the "-tags daemon" part is temporary
.PHONY: test
test:
@go test -tags daemon -v $(shell go list ./... | grep -v /vendor/)
# run linters
.PHONY: lint
lint:
@gometalinter --config gometalinter.json ./...
# build the CLI for multiple architectures
.PHONY: cross
cross: clean
@gox -output build/docker-{{.OS}}-{{.Arch}} \
-osarch="linux/arm linux/amd64 darwin/amd64 windows/amd64" \
github.com/docker/cli/cmd/docker
# download dependencies (vendor/) listed in vendor.conf
.PHONY: vendor
vendor: vendor.conf
@vndr 2> /dev/null
@if [ "`git status --porcelain -- vendor 2>/dev/null`" ]; then \
echo; echo "vendoring is wrong. These files were changed:"; \
echo; git status --porcelain -- vendor 2>/dev/null; \
echo; exit 1; \
fi;