blob: 6238b620d2bfcae489448d5f575c31df5c09a370 [file]
# Copyright 2022 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.
MUTABLE_VERSION ?= latest
VERSION ?= $(shell git rev-parse --short HEAD)
GCP_PROJECT_PROD := symbolic-datum-552
IMAGE_STAGING := gcr.io/go-dashboard-dev/perf
IMAGE_PROD := gcr.io/$(GCP_PROJECT_PROD)/perf
docker-prod:
docker build --force-rm -f Dockerfile --tag=$(IMAGE_PROD):$(VERSION) ..
docker tag $(IMAGE_PROD):$(VERSION) $(IMAGE_PROD):$(MUTABLE_VERSION)
docker-staging:
docker build --force-rm -f Dockerfile --tag=$(IMAGE_STAGING):$(VERSION) ..
docker tag $(IMAGE_STAGING):$(VERSION) $(IMAGE_STAGING):$(MUTABLE_VERSION)
push-prod:
gcloud builds submit --project=$(GCP_PROJECT_PROD) --config=cloudbuild.yaml \
--substitutions="TAG_NAME=$(VERSION)" ..
push-staging: docker-staging
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 --namespace prod set image deployment/perf-deployment perf=$(IMAGE_PROD):$(VERSION)
deploy-staging: push-staging
go install golang.org/x/build/cmd/xb
xb --staging kubectl set image deployment/perf-deployment perf=$(IMAGE_STAGING):$(VERSION)