This directory contains the scripts for creating a new microservices-demo
release.
1. Decide on the next release version number using semantic versioning.
- Look at the commits since the previous release.
TAG
- This is the new version (e.g.,v0.3.5
).REPO_PREFIX
- This is the Docker repository.
export TAG=v0.3.5
export REPO_PREFIX=gcr.io/google-samples/microservices-demo
- Make sure you run
./hack/make-release.sh
from this project's root folder — not from inside thehack/
folder. - This script:
- uses
make-docker-images.sh
to build and push a Docker image for each microservice to the previously specified repository. - uses
make-release-artifacts.sh
to regenerates (and update the image $TAGS) YAML file at./release/kubernetes-manifests.yaml
. - runs
git tag
and pushes a new branch (e.g.,release/v0.3.5
) with the changes torelease/kubernetes-manifests.yaml
.
- uses
- Go through our Container Registry repository.
- Make sure a Docker image was created for each microservice (with the new version tag).
- Summarize the commits since the previous release.
- See previous releases for inspiration on release notes.
- When you ran
make-release.sh
, it created a new branch (e.g.,release/v0.3.5
). - Include the new release draft in the pull-request description for reviewers to see.
9. Connect to our online-boutique-release GKE cluster
- To do this, you can use:
gcloud container clusters get-credentials online-boutique-release \
--zone us-central1-c --project online-boutique-ci
10. Deploy release/kubernetes-manifests.yaml
to our online-boutique-release GKE cluster.
kubectl apply -f ./release/kubernetes-manifests.yaml