summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-12-13 19:30:12 -0600
committerJeff Carr <[email protected]>2024-12-13 19:30:12 -0600
commitd1708d6a4bea44c9935e0b26e7d3e3a209c3b4b1 (patch)
tree0313556372809a2c8c3ccd62bd122864946e6182
parent6f39827fb9f4b3ea2483998f20ac434d2bd721d9 (diff)
logic is betterv0.22.35
-rw-r--r--doRelease.go41
-rw-r--r--main.go34
-rw-r--r--releaseBox.go4
-rw-r--r--structs.go6
4 files changed, 22 insertions, 63 deletions
diff --git a/doRelease.go b/doRelease.go
index 68af367..6713259 100644
--- a/doRelease.go
+++ b/doRelease.go
@@ -3,7 +3,6 @@ package main
import (
"os"
- "path/filepath"
"strings"
"time"
@@ -227,18 +226,12 @@ func doPublishVersion() bool {
docmd := []string{"go", "get", "-v", gopath + "@" + me.release.version.String()}
log.Info("SHOULD RUN cmd HERE:", docmd)
- testf := filepath.Join(me.forge.GetGoSrc(), "go.wit.com/apps/guireleaser", "go.sum")
- if !shell.Exists(testf) {
- pb := me.forge.Repos.FindByGoPath("go.wit.com/apps/guireleaser")
- if pb != nil {
- if err := pb.RunStrict([]string{"go-mod-clean"}); err != nil {
- log.Info("go-mod-clean failed", err)
- }
- }
- if !shell.Exists(testf) {
- log.Info("go.sum missing", testf)
- panic("redo go.sum")
- }
+ if !me.startRepo.Exists("go.mod") {
+ log.Info("go.sum missing in", me.startRepo.GoPath)
+ log.Info("pick a different repo here")
+ log.Info("todo: error out earlier knowing this will upgrade")
+ log.Info("versions", me.startRepo.GetTargetVersion(), me.startRepo.GetMasterVersion())
+ panic("redo go.sum")
}
if me.current.Status.IsPrivate() {
// do not self update private repos
@@ -248,23 +241,17 @@ func doPublishVersion() bool {
// try to pull from google
var result cmd.Status
- if gopath == "go.wit.com/apps/guireleaser" {
+ if gopath == me.startRepo.GoPath {
log.Info("CAN NOT SELF UPDATE. cmd =", docmd)
log.Info("go get must be run from somewhere else other than guireleaser")
log.Info("chdir to autotypist if it exists")
- if shell.Exists("/home/jcarr/go/src/go.wit.com/apps/autotypist") {
- os.Chdir("/home/jcarr/go/src/go.wit.com/apps/autotypist")
- } else {
- log.Info("need to chdir somewhere with go.sum & go.mod")
- return false
- }
- // result = shell.PathRun("/home/jcarr/go/src/go.wit.com/apps/autotypist", docmd)
- } else {
- // publish go.mod & go.sum for use with go
- os.Unsetenv("GO111MODULE")
- log.Info("TRYING TO SELF UPDATE HERE. cmd =", docmd)
- result = me.release.guireleaser.Status.Run(docmd)
+ os.Exit(-1)
}
+ // publish go.mod & go.sum for use with go
+ os.Unsetenv("GO111MODULE")
+ log.Info("TRYING TO SELF UPDATE HERE. cmd =", docmd)
+ result = me.startRepo.Run(docmd)
+
if result.Error != nil {
log.Info("SELF UPDATE FAILED. error =", result.Error)
log.Info("SELF UPDATE FAILED. exit =", result.Exit)
@@ -279,7 +266,7 @@ func doPublishVersion() bool {
log.Info("SELF UPDATE FAILED")
return false
}
- log.Info("SELF UPDATE OK. out =", result.Stdout)
+ log.Info("SELF UPDATE OK. out =", strings.Join(result.Stdout, "\n"))
log.Info("SELF UPDATE WORKED")
return true
}
diff --git a/main.go b/main.go
index 126f5f6..6b6a74e 100644
--- a/main.go
+++ b/main.go
@@ -65,17 +65,6 @@ func main() {
os.Exit(0)
}
- /*
- // sanity check of things that might be around that mess
- // up things later
- // check to make sure we have a go.sum here
- gosum := filepath.Join(homeDir, "go/src/go.wit.com/apps/guireleaser/go.sum")
- if !shell.Exists(gosum) {
- log.Info("go.sum must exist here")
- os.Exit(0)
- }
- */
-
log.Info("Creating the Release Window")
// initialize the repo list window
@@ -122,28 +111,9 @@ func main() {
}
}
- // the repo from the command line
- // var myrepo *repolist.RepoRow
-
- // find myself. the guireleaser directory is used as a working scratchpad
- // for running go commands that can mess up the go.* files
- loop = me.repos.View.ReposSortByName()
- for loop.Scan() {
- repo := loop.Repo()
- if repo.GoPath() == "go.wit.com/apps/guireleaser" {
- if me.release.guireleaser == nil {
- me.release.guireleaser = repo
- }
- }
- log.Info("repolist.ReposSortByName() found", repo.GoPath())
- /*
- if repo.GoPath() == myargs.Repo {
- myrepo = repo
- }
- */
- }
+ me.startRepo = me.forge.Repos.FindByGoPath("go.wit.com/apps/helloworld")
- if me.release.guireleaser == nil {
+ if me.startRepo == nil {
log.Info("Can not release if guireleaser was not found")
os.Exit(0)
}
diff --git a/releaseBox.go b/releaseBox.go
index cfde8ec..cfef2a2 100644
--- a/releaseBox.go
+++ b/releaseBox.go
@@ -34,10 +34,6 @@ type releaseStruct struct {
sendVersionB *gui.Node
checkSafeB *gui.Node
whitelist map[string]*repolist.RepoRow
-
- // store myself here. use myself to
- // do garbage go get tests and other potential junk
- guireleaser *repolist.RepoRow
}
func (w *autoType) Disable() {
diff --git a/structs.go b/structs.go
index 6cc8b4e..54ae116 100644
--- a/structs.go
+++ b/structs.go
@@ -6,6 +6,7 @@ import (
"go.wit.com/lib/gadgets"
"go.wit.com/lib/gui/repolist"
"go.wit.com/lib/protobuf/forgepb"
+ "go.wit.com/lib/protobuf/gitpb"
)
var me *autoType
@@ -20,6 +21,11 @@ type autoType struct {
reposgroup *gui.Node
current *repolist.RepoRow
+ // this is the repo we are starting in
+ // make sure it never changes so go.mod and go.sum are always there
+ // 'go get' is called from here
+ startRepo *gitpb.Repo
+
// guireleaser window
mainWindow *gui.Node
mainBox *gui.Node