diff --git a/Makefile b/Makefile index ecd690786..75bc40d2c 100644 --- a/Makefile +++ b/Makefile @@ -2,9 +2,6 @@ BUILD_VERBOSE := -v TEST_VERBOSE := -v -DOCKER_IMAGE_NAME ?= $$USER/coredns -DOCKER_VERSION ?= $(shell grep 'coreVersion' coremain/version.go | awk '{ print $$3 }' | tr -d '"') - all: coredns # Phony this to ensure we always build the binary. @@ -13,12 +10,6 @@ all: coredns coredns: deps core/zmiddleware.go core/dnsserver/zdirectives.go go build $(BUILD_VERBOSE) -ldflags="-s -w" -.PHONY: docker -docker: deps - CGO_ENABLED=0 GOOS=linux go build -ldflags="-s -w" - docker build -t $(DOCKER_IMAGE_NAME) . - docker tag $(DOCKER_IMAGE_NAME):latest $(DOCKER_IMAGE_NAME):$(DOCKER_VERSION) - .PHONY: deps deps: fmt go get ${BUILD_VERBOSE} diff --git a/Makefile.release b/Makefile.release index 61f5e7ca9..a9835c081 100644 --- a/Makefile.release +++ b/Makefile.release @@ -24,14 +24,24 @@ # * will commit your change with 'Release $VERSION' # * push to github # * build the release and do all that fluff. +# +# Steps for docker +# * Login into docker: docker login (should have push creds for coredns registry) +# * Run: make -f Makefile.release docker +# +# Docker push should happen after you make the new release and uploaded it to Github. NAME:=coredns VERSION:=$(shell grep 'coreVersion' coremain/version.go | awk '{ print $$3 }' | tr -d '"') ARCH:=$(shell uname -m) GITHUB:=coredns +DOCKER:=coredns +DOCKER_IMAGE_NAME:=$(DOCKER)/$(NAME) all: commit push build tar release +docker: docker-build docker-release + .PHONY: push push: @echo Pushing release to master @@ -62,6 +72,17 @@ release: @echo Releasing: $(VERSION) gh-release create $(GITHUB)/$(NAME) $(VERSION) +.PHONY: docker-build +docker: + CGO_ENABLED=0 GOOS=linux go build -ldflags="-s -w" + docker build -t $(DOCKER_IMAGE_NAME) . + docker tag $(DOCKER_IMAGE_NAME):latest $(DOCKER_IMAGE_NAME):$(VERSION) + +.PHONY: docker-release +docker-release: + @echo Pushing: $(VERSION) + docker tag $(DOCKER_IMAGE_NAME):latest $(DOCKER_IMAGE_NAME):$(VERSION) + .PHONY: clean clean: rm -rf release