build/cmd/releasebot
Dmitri Shuralyov 673ce34b0f cmd/releasebot, cmd/release: use releasebot work dir for staging releases
Using a directory inside the system temporary directory for staging
releases can be problematic, because os.Rename may fail to move the
file if /tmp is mounted on a filesystem that is different from where
the releasebot work directory is.

Use $HOME/go-releasebot-work/goX.Y.Z/release-staging as the staging
directory instead.

Change-Id: I74f5f6ace1c0df154a1de989e825f67e808d3c34
Reviewed-on: https://go-review.googlesource.com/c/build/+/191159
Reviewed-by: Andrew Bonventre <andybons@golang.org>
Reviewed-by: Alexander Rakoczy <alex@golang.org>
2019-08-21 18:33:30 +00:00
..
README.md cmd/releasebot: add support for beta releases 2018-06-19 19:43:43 +00:00
gcs.go cmd/releasebot: adapt to new minor release process 2018-06-13 21:27:35 +00:00
git.go cmd/releasebot: run all.bash in prepare mode 2019-01-09 19:52:41 +00:00
github.go cmd/releasebot: don't mention release status issue in security release mode 2019-08-19 17:20:10 +00:00
http.go cmd/releasebot: initial release process automation 2017-11-13 15:36:14 +00:00
main.go cmd/releasebot, cmd/release: use releasebot work dir for staging releases 2019-08-21 18:33:30 +00:00
markdown.go cmd/releasebot: adapt to new minor release process 2018-06-13 21:27:35 +00:00

README.md

golang.org/x/build/cmd/releasebot

Command releasebot runs a Go release.

The release happens in two stages:

  • the prepare stage checks preconditions, and if needed makes the release commit and mails it for review;
  • the release stage runs after the release commit (if any) is merged, and it tags, builds and cleans up the release.

At the moment only minor and beta releases are supported.

Permissions

The user running a release will need:

  • A GitHub personal access token with the public_repo scope in ~/.github-issue-token, and an account with write access to golang/go
  • gomote access and a token in your name
  • gcloud application default credentials, and an account with GCS access to golang-org for bucket golang-release-staging
  • release-manager group membership on Gerrit

NOTE: all but the Gerrit permission are ensured by the bot on startup.