Until we have a proper setup for building this automatically with every binary release, here are the steps for making a release. We make releases when they are ready, not on every PR.
- Build the container for testing:
make release
cd build/kube-dns
make container PREFIX=<your-docker-hub> TAG=rc
-
Manually deploy this to your own cluster by updating the replication controller and deleting the running pod(s).
-
Verify it works.
-
Update the TAG version in
Makefile
and update theChangelog
. Update the*.yaml.in
to point to the new tag. Send a PR but mark it as "DO NOT MERGE". -
Once the PR is approved, build and push the container for real for all architectures:
# Build for linux/amd64 (default) $ make push ARCH=amd64 # ---> gcr.io/google_containers/kube-dns-amd64:TAG $ make push ARCH=arm # ---> gcr.io/google_containers/kube-dns-arm:TAG $ make push ARCH=arm64 # ---> gcr.io/google_containers/kube-dns-arm64:TAG $ make push ARCH=ppc64le # ---> gcr.io/google_containers/kube-dns-ppc64le:TAG
-
Manually deploy this to your own cluster by updating the replication controller and deleting the running pod(s).
-
Verify it works.
-
Allow the PR to be merged.