github.com/canthefason/helm@v2.2.1-0.20170221172616-16b043b8d505+incompatible/versioning.mk (about)

     1  MUTABLE_VERSION ?= canary
     2  
     3  GIT_COMMIT := $(shell git rev-parse HEAD)
     4  GIT_SHA := $(shell git rev-parse --short HEAD)
     5  GIT_TAG := $(shell git describe --tags --abbrev=0 2>/dev/null)
     6  GIT_DIRTY = $(shell test -n "`git status --porcelain`" && echo "dirty" || echo "clean")
     7  
     8  ifdef VERSION
     9  	DOCKER_VERSION = $(VERSION)
    10  	BINARY_VERSION = $(VERSION)
    11  endif
    12  
    13  DOCKER_VERSION ?= git-${GIT_SHA}
    14  BINARY_VERSION ?= ${GIT_TAG}-${GIT_SHA}
    15  
    16  IMAGE := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${SHORT_NAME}:${DOCKER_VERSION}
    17  MUTABLE_IMAGE := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${SHORT_NAME}:${MUTABLE_VERSION}
    18  
    19  LDFLAGS += -X k8s.io/helm/pkg/version.Version=${GIT_TAG}
    20  LDFLAGS += -X k8s.io/helm/pkg/version.GitCommit=${GIT_COMMIT}
    21  LDFLAGS += -X k8s.io/helm/pkg/version.GitTreeState=${GIT_DIRTY}
    22  
    23  DOCKER_PUSH = docker push
    24  ifeq ($(DOCKER_REGISTRY),gcr.io)
    25  	DOCKER_PUSH = gcloud docker push
    26  endif
    27  
    28  info:
    29  	@echo "Build tag:       ${DOCKER_VERSION}"
    30  	@echo "Registry:        ${DOCKER_REGISTRY}"
    31  	@echo "Immutable tag:   ${IMAGE}"
    32  	@echo "Mutable tag:     ${MUTABLE_IMAGE}"
    33  
    34  .PHONY: docker-push
    35  docker-push: docker-mutable-push docker-immutable-push
    36  
    37  .PHONY: docker-immutable-push
    38  docker-immutable-push:
    39  	${DOCKER_PUSH} ${IMAGE}
    40  
    41  .PHONY: docker-mutable-push
    42  docker-mutable-push:
    43  	${DOCKER_PUSH} ${MUTABLE_IMAGE}