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