summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--draw.go41
-rw-r--r--structs.go3
2 files changed, 42 insertions, 2 deletions
diff --git a/draw.go b/draw.go
index 33d655f..255d5f3 100644
--- a/draw.go
+++ b/draw.go
@@ -37,12 +37,49 @@ func draw(rs *RepoStatus) {
rs.grid.NewButton("recommend", func() {
log.Warn("Is repo dirty?", rs.dirtyLabel.Get())
log.Warn("list the known tags")
+ rs.develMerge.Disable()
+ rs.releaseVersion.Disable()
rs.populateTags()
- log.Warn("Does master == devel? ")
- log.Warn("Does devel == jcarr?")
+ log.Warn("Does devel == jcarr?", rs.develBranch.Get(), rs.jcarrBranch.Get())
+ if rs.develBranch.Get() != rs.jcarrBranch.Get() {
+ log.Warn("devel does not equal jcarr")
+ log.Warn("merge or squash?")
+ return
+ }
+ log.Warn("Does master == devel? ", rs.masterBranch.Get(), rs.develBranch.Get())
+ if rs.masterBranch.Get() != rs.develBranch.Get() {
+ log.Warn("master does not equal devel. merge devel into master")
+ rs.develMerge.Enable()
+ return
+ }
+ rs.getLastTagVersion()
+ if rs.lasttag.Get() != rs.masterBranch.Get() {
+ log.Warn("master does not equal last tag")
+ rs.releaseVersion.Enable()
+ return
+ }
log.Warn("Is repo pushed upstream? git.wit.org or github?")
})
+ rs.develMerge = rs.grid.NewButton("merge devel to master", func() {
+ rs.checkoutBranch("master")
+ if rs.getCurrentBranchName() != "master" {
+ log.Warn("something went wrong switching to the master branch. full stop!")
+ return
+ }
+ log.Warn("Should merge devel into master here")
+ out := run(rs.repopath, "git", "merge devel")
+ log.Warn("devel is merged? merginess is complete. perhaps", out)
+ rs.develMerge.Disable() // don't let this run twice for now
+ })
+ rs.develMerge.Disable()
+
+ rs.releaseVersion = rs.grid.NewButton("release version", func() {
+ lasttag := rs.lasttag.Get()
+ log.Warn("Should release version here", lasttag)
+ })
+ rs.releaseVersion.Disable()
+
rs.grid.Margin()
rs.grid.Pad()
}
diff --git a/structs.go b/structs.go
index b2b8b94..e9c79bb 100644
--- a/structs.go
+++ b/structs.go
@@ -33,6 +33,9 @@ type RepoStatus struct {
develBranch *gadgets.OneLiner
jcarrBranch *gadgets.OneLiner
+ develMerge *gui.Node
+ releaseVersion *gui.Node
+
speed *gadgets.OneLiner
speedActual *gadgets.OneLiner
}