Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/build/cmd/releasebot: consider a third -mode=wrapup mode for wrapping up a release #36086

Closed
dmitshur opened this issue Dec 11, 2019 · 3 comments
Labels
Builders x/build issues (builders, bots, dashboards) FeatureRequest FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone

Comments

@dmitshur
Copy link
Contributor

releasebot has two modes: prepare, and release. Prepare does some preparatory work, while release performs the actual work of releasing.

We can consider adding a third mode, to be run at the end of a release and ensure humans did not forget some post-release steps.

Background

There are some tasks done by release managers after -mode=release, including sending a CL to create a golang.org/dl/goX.Y.Z command (e.g., CL 204559), making a tweet (e.g., https://twitter.com/golang/status/1190073956876849152), redeploying the golang.org website, etc. After #36075 is finished, it can also check that x/website has the latest minor release documented on the Release History page; something that used to be done as part of prepare mode.

While some of those can and should be automated over time, at this time there are non-zero such tasks. We can consider creating a third mode to be run at the very end of a release, and its purpose would be to perform checks that all the post-release steps have been completed.

In the past, we've relied on release managers not forgetting/skipping steps in the release process, and people reporting issues when we do.

/cc @cagedmantis @toothrot @bradfitz

@dmitshur dmitshur added Builders x/build issues (builders, bots, dashboards) NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. FeatureRequest labels Dec 11, 2019
@dmitshur dmitshur added this to the Unreleased milestone Dec 11, 2019
@gopherbot
Copy link

Change https://golang.org/cl/210957 mentions this issue: cmd/releasebot: check for Release History entry only for Go 1.12

gopherbot pushed a commit to golang/build that referenced this issue Dec 11, 2019
The Release History pages have moved to x/website in CL 210797.
Checking that the current release has already been documented should
no longer happen as part of -mode=prepare for Go 1.13.x and newer.

We can consider moving this type of check into a new mode that is to be
run after a release is finished. That is discussed in golang/go#36086.

Fixes golang/go#36075
Updates golang/go#36086

Change-Id: I7547ddd4032e970ac7af1572a98698868d936a48
Reviewed-on: https://go-review.googlesource.com/c/build/+/210957
Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Alexander Rakoczy <alex@golang.org>
@dmitshur
Copy link
Contributor Author

CL 221097 deletes the following check from Work.checkDocs method, because it cannot be done as part of the prepare or release modes as it was done before (it's too soon):

// TODO: Delete this block after Go 1.14 is released (and Go 1.12 is no longer supported),
//       or consider moving it into a third -mode=wrapup. See golang.org/issue/36086.
if w.activeReleaseHistory() {
	// Check that the release is listed on the release history page.
	data, err := ioutil.ReadFile(filepath.Join(w.Dir, "gitwork", "doc/devel/release.html"))
	if err != nil {
		w.log.Panic(err)
	}
	if !strings.Contains(string(data), w.Version+" (released ") {
		w.logError("doc/devel/release.html does not document %s", w.Version)
	}
}

If a third wrapup mode is added, it can be re-added as part of that mode.

@dmitshur
Copy link
Contributor Author

dmitshur commented Aug 3, 2022

This is a key part of what relui does for us, and by now it has superseded releasebot. Closing.

@dmitshur dmitshur closed this as not planned Won't fix, can't repro, duplicate, stale Aug 3, 2022
@dmitshur dmitshur added this to Done in Go Release Team Aug 3, 2022
@golang golang locked and limited conversation to collaborators Aug 3, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Builders x/build issues (builders, bots, dashboards) FeatureRequest FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Projects
Archived in project
Development

No branches or pull requests

2 participants