# Copyright 2017 The Go Authors. All rights reserved. # Use of this source code is governed by a BSD-style # license that can be found in the LICENSE file. VERSION ?= $(shell git rev-parse --short HEAD) MUTABLE_VERSION ?= latest IMAGE_STAGING := gcr.io/go-dashboard-dev/tip IMAGE_PROD := gcr.io/symbolic-datum-552/tip .PHONY: usage usage: echo "See Makefile" exit 1 update-deps: go install golang.org/x/build/cmd/gitlock gitlock --update=Dockerfile --ignore=NONE --tags=autocert golang.org/x/tools/cmd/tip docker-image: Dockerfile *.go docker build --force-rm -f Dockerfile --tag=$(IMAGE_PROD):$(VERSION) . docker tag $(IMAGE_PROD):$(VERSION) $(IMAGE_PROD):$(MUTABLE_VERSION) docker tag $(IMAGE_PROD):$(VERSION) $(IMAGE_STAGING):$(VERSION) docker tag $(IMAGE_PROD):$(VERSION) $(IMAGE_STAGING):$(MUTABLE_VERSION) push-prod: docker-image docker push $(IMAGE_PROD):$(MUTABLE_VERSION) docker push $(IMAGE_PROD):$(VERSION) push-staging: docker-image docker push $(IMAGE_STAGING):$(MUTABLE_VERSION) docker push $(IMAGE_STAGING):$(VERSION) deploy-prod: push-prod go install golang.org/x/build/cmd/xb xb --prod kubectl set image deployment/tip-deployment tip=$(IMAGE_PROD):$(VERSION) deploy-staging: push-staging go install golang.org/x/build/cmd/xb xb --staging kubectl set image deployment/tip-deployment tip=$(IMAGE_STAGING):$(VERSION)