test build app

Signed-off-by: Jeff Carr <jcarr@wit.com>
This commit is contained in:
Jeff Carr 2019-06-04 17:01:33 -07:00
parent 74cdf39cbe
commit 294025f248
3 changed files with 120 additions and 0 deletions

2
.gitignore vendored
View File

@ -10,6 +10,8 @@ example-aminal/example-aminal
example-multiple-windows/example-multiple-windows
example-lookupAAAA/example-lookupAAAA
build/build
test1/test1
test2/test2
test3/test3

3
build/Makefile Normal file
View File

@ -0,0 +1,3 @@
all:
go build
./build

115
build/main.go Normal file
View File

@ -0,0 +1,115 @@
package main
import "log"
// import "fmt"
import "os"
import "os/user"
import "time"
import "runtime"
// import "io/ioutil"
// import "strings"
// github.com/bramvdbogaerde/go-scp
import "github.com/davecgh/go-spew/spew"
import "git.wit.com/wit/shell"
var filename string
var builddir string
var homedir string
func main() {
os.Chdir("~/go/src/wit/cloud-control-panel")
setupUser()
log.Println("homedir", homedir)
log.Println("builddir", builddir)
log.Println("filename", filename)
shell.Run("pwd")
s, _ := os.Getwd()
log.Println("Getwd()", s)
os.Chdir(builddir)
log.Println("Getwd()", s)
shell.Run("pwd")
for {
time.Sleep(time.Second * 5)
build()
os.Exit(0)
}
}
/*
// slow down the polling to every 2 seconds
shell.SetDelayInMsec(2000)
shell.Run("ping -c 6 localhost")
// capture ping output into a file
fout, _ := os.Create("/tmp/example1.ping.stdout")
ferr, _ := os.Create("/tmp/example1.ping.stderr")
shell.SetStdout(fout)
shell.SetStderr(ferr)
shell.Run("ping -c 5 localhost")
// turn out process exit debugging
shell.SpewOn()
fout, _ = os.Create("/tmp/example1.fail.stdout")
ferr, _ = os.Create("/tmp/example1.fail.stderr")
shell.SetStdout(fout)
shell.SetStderr(ferr)
// TODO: this might not be working
// check error handling
shell.Run("ls /tmpthisisnothere")
*/
func build() {
// shell.SetDelayInMsec(50)
shell.Run("go get -v .")
shell.Run("rm " + filename)
shell.Run("go build")
output := shell.Run("ls -l")
shell.Run("cat VERSION")
log.Println("output =", output)
}
func ping() {
shell.SetDelayInMsec(2000)
shell.Run("ping -c 6 localhost")
}
// func setupUser() string, string, string {
func setupUser() {
// look up the user information
user, err := user.Current()
if err != nil {
os.Exit(-1)
}
spew.Dump(user)
// TODO: confirm this is correct for MacOS and Windows
if runtime.GOOS == "linux" {
log.Println("loadConfigFile() OS: Linux")
filename = "cloud-control-panel"
builddir = user.HomeDir + "/go/src/git.wit.com/wit/cloud-control-panel"
} else if runtime.GOOS == "windows" {
log.Println("loadConfigFile() OS: Windows")
builddir = user.HomeDir + "\\go\\src\\git.wit.com\\wit\\cloud-control-panel"
filename = "cloud-control-panel.exe"
} else {
log.Println("loadConfigFile() OS: " + runtime.GOOS)
builddir = user.HomeDir + "/go/src/git.wit.com/wit/cloud-control-panel"
filename = "cloud-control-panel"
}
homedir = user.HomeDir
}