Skip to content

Commit e0af7f0

Browse files
committed
cmd/releasebot: add check for beta1 release blockers
We now have a way of telling which release blocker issues apply to a beta1 release, so start checking for such issues, and prevent the release from proceeding if any of them are open. Fixes golang/go#39345. Change-Id: Id77098c9e72f45e043f97fa2b22bac811f29b0a4 Reviewed-on: https://go-review.googlesource.com/c/build/+/235778 Run-TryBot: Dmitri Shuralyov <[email protected]> TryBot-Result: Gobot Gobot <[email protected]> Reviewed-by: Alexander Rakoczy <[email protected]>
1 parent 1d2bb0d commit e0af7f0

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

cmd/releasebot/main.go

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -337,6 +337,9 @@ func (w *Work) doRelease() {
337337
}
338338
if w.BetaRelease || w.RCRelease {
339339
// TODO: go tool api -allow_new=false
340+
if strings.HasSuffix(w.Version, "beta1") {
341+
w.checkBeta1ReleaseBlockers()
342+
}
340343
} else {
341344
if !w.Security {
342345
w.checkReleaseBlockers()
@@ -421,6 +424,21 @@ func (w *Work) checkReleaseBlockers() {
421424
}
422425
}
423426

427+
func (w *Work) checkBeta1ReleaseBlockers() {
428+
if err := goRepo.ForeachIssue(func(gi *maintner.GitHubIssue) error {
429+
if gi.Milestone == nil || gi.Milestone.Title != w.Milestone.Title {
430+
return nil
431+
}
432+
if !gi.Closed && gi.HasLabel("release-blocker") && !gi.HasLabel("okay-after-beta1") {
433+
w.logError("open issue #%d is tagged release-blocker and not okay after beta1", gi.Number)
434+
}
435+
return nil
436+
}); err != nil {
437+
w.logError("error checking release-blockers: %v", err.Error())
438+
return
439+
}
440+
}
441+
424442
func (w *Work) nextStepsPrepare(changeID string) {
425443
if w.Security {
426444
w.log.Printf(`

0 commit comments

Comments
 (0)