try to build the protobuf files

This commit is contained in:
Jeff Carr 2024-11-25 01:52:49 -06:00
parent ac4b3e0c1d
commit 5db343390b
4 changed files with 69 additions and 87 deletions

View File

@ -193,39 +193,3 @@ func globalBuildOptions(vbox *gui.Node) {
})
grid.NextRow()
}
// this code isn't ready yet
/*
s.checkB = s.grid.NewButton("Check repos are working", func() {
me.Disable()
defer me.Enable()
for loop.Scan() {
if repo.GitURL() != "" {
log.Info("repo already checked. do they match?")
log.Info("go.wit.com =", repo.GoURL())
log.Info("localurl =", repo.Path())
} else {
ok, giturl := gowit.CheckRegistered(repo)
if ok {
log.Info("is url correct?", repo.Path(), "vs", giturl)
repo.giturl = giturl
if giturl != repo.Path() {
log.Info("repo check failed", repo.String())
s.unknownOL.SetText(repo.String())
s.unknownOL.Show()
s.unknownSubmitB.Show()
return
}
} else {
log.Info("repo check failed", repo.String())
repo.giturl = "look in .git/config"
s.unknownOL.SetText(repo.String())
s.unknownOL.Show()
s.unknownSubmitB.Show()
return
}
}
}
s.checkB.SetText("GOOD")
})
*/

View File

@ -158,20 +158,3 @@ func globalResetOptions(box *gui.Node) {
}
})
}
func attemptAutoRebuild() {
gosrc := me.goSrcPwd.String()
quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/apps/autotypist"})
quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/debian"})
quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/tree"})
quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/nocui"})
quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/gocui"})
quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/andlabs"})
quickCmd(filepath.Join(gosrc, "go.wit.com/toolkits/nocui/"), []string{"make"})
quickCmd(filepath.Join(gosrc, "go.wit.com/toolkits/gocui/"), []string{"make"})
quickCmd(filepath.Join(gosrc, "go.wit.com/toolkits/andlabs/"), []string{"make"})
quickCmd(filepath.Join(gosrc, "go.wit.com/apps/autotypist/"), []string{"make", "build"})
}

69
rebuildAutotypist.go Normal file
View File

@ -0,0 +1,69 @@
package main
import (
"path/filepath"
"strings"
"github.com/go-cmd/cmd"
"go.wit.com/lib/gui/shell"
"go.wit.com/log"
)
// attempt to rebuild this app
// This should work from a blank slate
// TODO: make sure this works in a empty directory with a go-work file
func attemptAutoRebuild() bool {
gosrc := me.goSrcPwd.String()
if r, ok := quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/apps/autotypist"}); !ok { return buildDied(r) }
if r, ok := quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/debian"}); !ok { return buildDied(r) }
if r, ok := quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/tree"}); !ok { return buildDied(r) }
if r, ok := quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/nocui"}); !ok { return buildDied(r) }
if r, ok := quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/gocui"}); !ok { return buildDied(r) }
if r, ok := quickCmd(gosrc, []string{"go-clone", "--recursive", "go.wit.com/toolkits/andlabs"}); !ok { return buildDied(r) }
if r, ok := quickCmd(filepath.Join(gosrc, "go.wit.com/toolkits/nocui/"), []string{"make"}); !ok { return buildDied(r) }
if r, ok := quickCmd(filepath.Join(gosrc, "go.wit.com/toolkits/gocui/"), []string{"make"}); !ok { return buildDied(r) }
if r, ok := quickCmd(filepath.Join(gosrc, "go.wit.com/toolkits/andlabs/"), []string{"make"}); !ok { return buildDied(r) }
// build the protobuf files
// TODO: verify the right protoc-gen-go exists
if !shell.Exists("/usr/bin/protoc-gen-go") {
log.Warn("missing /usr/bin/protc-gen-go. apt install protoc-gen-go")
return false
}
quickCmd(filepath.Join(gosrc, "go.wit.com/lib/protobuf/virtbuf/"), []string{"make"})
quickCmd(filepath.Join(gosrc, "go.wit.com/apps/autotypist/"), []string{"make", "build"})
return true
}
// only errors on bad errors
func quickCmd(fullpath string, cmd []string) (*cmd.Status, bool) {
if me.autoDryRun.Checked() {
log.Warn("RUN --dry-run", fullpath, cmd)
return nil, true
} else {
log.Warn("RUN:", fullpath, cmd)
}
r := shell.PathRun(fullpath, cmd)
output := strings.TrimSpace(strings.Join(r.Stdout, "\n"))
if r.Error != nil {
log.Warn("cmd =", cmd)
log.Warn("err =", r.Error)
log.Warn("b =", r.Exit)
log.Warn("output =", output)
return &r, false
} else if r.Exit != 0 {
log.Warn("b =", r.Exit)
log.Warn("output =", output)
return &r, true
}
log.Warn("output = ", output)
return &r, true
}
func buildDied(r *cmd.Status) bool {
return false
}

View File

@ -1,34 +0,0 @@
package main
import (
"strings"
"go.wit.com/lib/gui/shell"
"go.wit.com/log"
)
// only errors on bad errors
func quickCmd(fullpath string, cmd []string) bool {
if me.autoDryRun.Checked() {
log.Warn("RUN --dry-run", fullpath, cmd)
return false
} else {
log.Warn("RUN:", fullpath, cmd)
}
r := shell.PathRun(fullpath, cmd)
output := strings.TrimSpace(strings.Join(r.Stdout, "\n"))
if r.Error != nil {
log.Warn("cmd =", cmd)
log.Warn("err =", r.Error)
log.Warn("b =", r.Exit)
log.Warn("output =", output)
return false
} else if r.Exit != 0 {
log.Warn("b =", r.Exit)
log.Warn("output =", output)
return true
}
log.Warn("output = ", output)
return true
}