From 8ddc35e1985cdb2411eb25faead86d631421a6ab Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Mon, 15 Jan 2024 13:53:44 -0600 Subject: [PATCH] closer to automatic 'go get' myself Signed-off-by: Jeff Carr --- main.go | 12 +++++++----- unix.go | 22 +++++++++++++++++++++- 2 files changed, 28 insertions(+), 6 deletions(-) diff --git a/main.go b/main.go index 4c682f6..ec13bd7 100644 --- a/main.go +++ b/main.go @@ -178,8 +178,8 @@ func repoworld() { buildOptions.NewLabel("get autotypist") buildOptions.NewButton("go get", func () { var newCmds [][]string - newCmds = append(newCmds, []string{"mkdir", "-p", "go/src/go.wit.com/apps"}) - newCmds = append(newCmds, []string{"cd", "go/src/go.wit.com/apps/myrepos"}) + newCmds = append(newCmds, []string{"mkdir", "-p", "~/go/src/go.wit.com/apps"}) + newCmds = append(newCmds, []string{"cd", "go/src/go.wit.com/apps/"}) newCmds = append(newCmds, []string{"go", "get", "-v", "-u", "go.wit.com/apps/myrepos"}) newCmds = append(newCmds, []string{"cd", "go/src/go.wit.com/apps/myrepos"}) newCmds = append(newCmds, []string{"go", "get", "-v", "-u", "."}) @@ -210,10 +210,11 @@ func repoworld() { buildOptions.NewLabel("--dry-run") dryrun = buildOptions.NewButton("show commands", func () { - if dryRunCommands() { + if goMake("--dry-run") { log.Warn("EVERYTHING MIGHT HAVE WORKED") } else { - log.Warn("EVERYTHING DID NOT WORK") + log.Warn("EVERYTHING WILL NOT WORK") + dryrun.Disable() } }) @@ -221,7 +222,8 @@ func repoworld() { doit = buildOptions.NewButton("run commands", func () { doit.Disable() log.Warn("should run the commands here") - if runCommands() { + // true here means dryrun == true. it's confusingly named + if goMake("--doit") { log.Warn("EVERYTHING WORKED") } else { log.Warn("EVERYTHING DID NOT WORK") diff --git a/unix.go b/unix.go index d167636..156e764 100644 --- a/unix.go +++ b/unix.go @@ -9,7 +9,9 @@ import ( var repopath string = "/home/jcarr/" -func dryRunCommands() bool { +// if dryRun == true, then it just prints out the values +// but doesn't do anything +func goMake(dryRun string) bool { var workingPath string = "go/src" for _, line := range script { if len(line) == 0 { @@ -33,6 +35,24 @@ func dryRunCommands() bool { s := strings.Join(line[1:], " ") path := repopath + workingPath log.Warn("NEED TO RUN path =", path, "cmd =", cmd, "argv:", s) + if dryRun == "--dry-run" { + continue + } + if dryRun == "--doit" { + log.Warn("Actually RUN path =", path, "cmd =", cmd, "argv:", s) + err, b, output := repostatus.RunCmd(repopath, line) + if err != nil { + log.Info("ABEND EXECUTION") + log.Info("error =", err) + log.Info("b =", b) + log.Info("output =", output) + return false + } + log.Warn("output was =", output) + continue + } + log.Warn("don't know what to do. dryRun ==", dryRun) + return false } return true }