summaryrefslogtreecommitdiff
path: root/globalDisplayOptions.go
diff options
context:
space:
mode:
Diffstat (limited to 'globalDisplayOptions.go')
-rw-r--r--globalDisplayOptions.go39
1 files changed, 33 insertions, 6 deletions
diff --git a/globalDisplayOptions.go b/globalDisplayOptions.go
index 7c83a6c..c2a07dc 100644
--- a/globalDisplayOptions.go
+++ b/globalDisplayOptions.go
@@ -87,7 +87,7 @@ func globalDisplayOptions(box *gui.Node) {
hidegrid.NextRow()
group1 = vbox.NewGroup("prep for release")
- grid := group1.NewGrid("test", 0, 0)
+ grid := group1.RawGrid()
var longB *gui.Node
longB = grid.NewButton("generate go.sum files", func() {
@@ -121,11 +121,38 @@ func globalDisplayOptions(box *gui.Node) {
})
grid.NextRow()
- var setTarget *gui.Node
- // check to see if target versions need to be changed
- setTarget = grid.NewButton("increment target versions", func() {
- if incrementTargetVersion() {
- setTarget.SetText("DONE")
+ grid.NewButton("increment tags", func() {
+ for _, repo := range me.repos.View.AllRepos() {
+ if whitelist(repo.GoPath()) {
+ continue
+ }
+ if repo.ReadOnly() {
+ continue
+ }
+ lasttag := repo.LastTag()
+ masterv := repo.Status.GetMasterVersion()
+ targetv := repo.Status.GetTargetVersion()
+
+ if lasttag == masterv {
+ // nothing to do if curv == masterv
+ // unless go.sum depends on changed repos
+ continue
+ }
+
+ newversion := repo.Status.GetNewVersionTag()
+ if newversion == targetv {
+ log.Info(repo.GoPath(), "targetv has been increased already to", targetv)
+ continue
+ }
+
+ if masterv != targetv {
+ log.Info(repo.GoPath(), "master and target differ", masterv, targetv)
+ repo.Status.IncrementVersion()
+ newversion := repo.Status.GetNewVersionTag()
+ repo.Status.SetTargetVersion(newversion)
+ // already incremented
+ continue
+ }
}
})
grid.NextRow()