1# How to Release this Repo 2 31. Determine the current release version with `git tag -l`. It should look 4 something like `vX.Y.Z`. We'll call the current version `$CV` and the new 5 version `$NV`. 61. On master, run `git log $CV..` to list all the changes since the last 7 release. 81. `cd internal/version && go generate && cd ../..` 91. Edit `CHANGES.md` to include a summary of the changes. 101. Mail the CL containing the `CHANGES.md` changes. When the CL is approved, 11 submit it. 121. Without submitting any other CLs: 13 a. Switch to master. 14 b. `git pull` 15 c. Tag the repo with the next version: `git tag $NV`. 16 d. Push the tag: `git push origin $NV`. 171. Update [the releases page](https://github.com/googleapis/google-api-go-client/releases) 18 with the new release, copying the contents of the CHANGES.md. 19 20# Auto-regeneration 21 22A nightly cron job re-generates all of the clients. It runs `make all`. 23 24Releases are manually tagged (see above). 25 26See: 27 28* [Code for the cronjob, in the discovery-artifact-manager repo](https://github.com/googleapis/discovery-artifact-manager/blob/master/server/tasks/google_api_go_client.py) 29* [List of cronjobs](https://console.cloud.google.com/appengine/cronjobs?project=discovery-artifact-manager) 30* [App Engine stderr logs](https://console.cloud.google.com/logs/viewer?project=discovery-artifact-manager) 31