summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main.go12
-rw-r--r--unix.go22
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
}