summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-12-05 14:17:50 -0600
committerJeff Carr <[email protected]>2024-12-05 14:17:50 -0600
commit1d352604b9a88e59284d9b1d6a46019c31816247 (patch)
tree1a6234cf265df832a6d1cf66b113080c0f57fcfd
parent816760d1372d6d1922a9916f3150e49f3fd562cd (diff)
still invalid repos getting in the repos.pbv0.22.9v0.22.10
-rw-r--r--Makefile23
-rw-r--r--cobol.go (renamed from doCobol.go)9
-rw-r--r--doCommon.go25
-rw-r--r--doDebugger.go31
-rw-r--r--doGitPull.go7
-rw-r--r--doScan.go5
-rw-r--r--findConfig.go46
-rw-r--r--findRepos.go91
-rw-r--r--main.go8
9 files changed, 122 insertions, 123 deletions
diff --git a/Makefile b/Makefile
index d12558b..ab957ed 100644
--- a/Makefile
+++ b/Makefile
@@ -12,11 +12,12 @@ verbose:
GO111MODULE=off go build -v -x \
-ldflags "-X main.VERSION=${VERSION} -X main.BUILDTIME=${BUILDTIME} -X gui.GUIVERSION=${VERSION}"
-install:
+install: goimports
GO111MODULE=off go install \
-ldflags "-X main.VERSION=${VERSION} -X main.BUILDTIME=${BUILDTIME} -X gui.GUIVERSION=${VERSION}"
goimports:
+ reset
goimports -w *.go
@# // to globally reset paths:
@# // gofmt -w -r '"go.wit.com/gui/gadgets" -> "go.wit.com/lib/gadgets"' *.go
@@ -24,37 +25,25 @@ goimports:
gocui: install
forge --gui gocui
-check-git-clean:
- @git diff-index --quiet HEAD -- || (echo "Git repository is dirty, please commit your changes first"; exit 1)
-
-redomod:
- rm -f go.*
- GO111MODULE= go mod init
- GO111MODULE= go mod tidy
-
redomod-all:
forge --do-RedoGoMod
redomod-erase:
forge --do-RedoGoMod --do-erase
-list: install
- reset
- forge --do-list
-
private: install
reset
forge --find-private
-list-fix: install
+fix: install
reset
- forge --do-list --do-fix
+ forge --fix
-list-readonly: install
+readonly: install
reset
forge --do-list --find-readonly
-list-config: install
+config: install
forge --config
scan: install
diff --git a/doCobol.go b/cobol.go
index 678d17a..0812370 100644
--- a/doCobol.go
+++ b/cobol.go
@@ -87,12 +87,11 @@ func verifyPrint(repo *gitpb.Repo) {
os.Exit(0)
}
}
- if me.forge.Config.IsReadOnly(repo.GoPath) && !argv.FindReadOnly {
+ if me.forge.Config.IsReadOnly(repo.GoPath) {
if repo.ReadOnly {
- return
+ } else {
+ log.Info("readonly flag on repo is wrong", repo.GoPath)
}
- log.Info("readonly flag on repo is wrong", repo.GoPath)
- return
}
var mhort string = s["mver"]
@@ -111,7 +110,7 @@ func verifyPrint(repo *gitpb.Repo) {
func verify(repo *gitpb.Repo, s map[string]string) bool {
if !repo.IsValid() {
- return false
+ // return false
}
s["gopath"] = repo.GetGoPath()
s["rtype"] = repo.RepoType()
diff --git a/doCommon.go b/doCommon.go
new file mode 100644
index 0000000..db5a0a0
--- /dev/null
+++ b/doCommon.go
@@ -0,0 +1,25 @@
+package main
+
+import "go.wit.com/log"
+
+func doScan() {
+ me.forge.ScanGoSrc()
+}
+
+func doGitPull() {
+ me.found.RillGitPull()
+}
+
+func doFix() {
+ all := me.found.SortByGoPath()
+ for all.Scan() {
+ repo := all.Next()
+ if !repo.IsValid() {
+ log.Printf("%10s %-50s", "old?\n", repo.GetGoPath())
+ continue
+ }
+ log.Printf("running on: %-50s\n", repo.GetGoPath())
+ cmd := []string{"ls"}
+ repo.Run(cmd)
+ }
+}
diff --git a/doDebugger.go b/doDebugger.go
deleted file mode 100644
index b2fa5dc..0000000
--- a/doDebugger.go
+++ /dev/null
@@ -1,31 +0,0 @@
-package main
-
-/*
- this parses the command line arguements
-
- this enables command line options from other packages like 'gui' and 'log'
-*/
-
-import (
- "go.wit.com/lib/debugger"
- "go.wit.com/lib/gui/logsettings"
- "go.wit.com/log"
-)
-
-func init() {
- if debugger.ArgDebug() {
- log.Info("cmd line --debugger == true")
- go func() {
- log.Sleep(2)
- debugger.DebugWindow()
- }()
- }
- if debugger.ArgLogger() {
- log.Info("cmd line --loggger == true")
- go func() {
- log.Sleep(4)
- logsettings.LogWindow()
- logsettings.LogWindow()
- }()
- }
-}
diff --git a/doGitPull.go b/doGitPull.go
deleted file mode 100644
index cca3b19..0000000
--- a/doGitPull.go
+++ /dev/null
@@ -1,7 +0,0 @@
-package main
-
-// An app to submit patches for the 30 GO GUI repos
-
-func doGitPull() {
- me.found.RillGitPull()
-}
diff --git a/doScan.go b/doScan.go
deleted file mode 100644
index 562304f..0000000
--- a/doScan.go
+++ /dev/null
@@ -1,5 +0,0 @@
-package main
-
-func doScan() {
- me.forge.ScanGoSrc()
-}
diff --git a/findConfig.go b/findConfig.go
index 34c8f18..efe6ee2 100644
--- a/findConfig.go
+++ b/findConfig.go
@@ -2,52 +2,22 @@ package main
import "go.wit.com/log"
-func findPrivate() {
- repos := me.forge.Repos.SortByGoPath()
- for repos.Scan() {
- repo := repos.Next()
- if me.forge.Config.IsPrivate(repo.GoPath) {
- me.found.AppendUniqueGoPath(repo)
- }
- }
-}
-
-// finds repos that are writable
-func findMine() {
- log.Printf("get mine %s\n", me.forge.GetGoSrc())
- repos := me.forge.Repos.SortByGoPath()
- for repos.Scan() {
- repo := repos.Next()
- if me.forge.Config.IsWritable(repo.GoPath) {
- me.found.AppendUniqueGoPath(repo)
- }
- }
-}
-
-// finds repos that are writable
-func findFavorites() {
- log.Printf("get mine %s\n", me.forge.GetGoSrc())
- repos := me.forge.Repos.SortByGoPath()
- for repos.Scan() {
- repo := repos.Next()
- if me.forge.Config.IsFavorite(repo.GoPath) {
- me.found.AppendUniqueGoPath(repo)
- }
- }
-}
-
// retuns true if nothing was done
func findConfig() bool {
+ var done bool = false
if argv.FindMine {
findConfigMine()
- return false
+ done = true
}
if argv.FindAll {
findConfigAll()
- return false
+ done = true
}
-
- return true
+ if !done {
+ findConfigAll()
+ done = true
+ }
+ return done
}
// finds config repos that are writable
diff --git a/findRepos.go b/findRepos.go
index 1463d09..18ddd03 100644
--- a/findRepos.go
+++ b/findRepos.go
@@ -4,37 +4,88 @@ import (
"go.wit.com/log"
)
-func findRepos() {
+func findRepos() bool {
+ var done bool = false
if argv.FindAll {
- var configsave bool
- repos := me.forge.Repos.SortByGoPath()
- for repos.Scan() {
- repo := repos.Next()
- if me.forge.Config.IsReadOnly(repo.GoPath) && !argv.FindReadOnly {
- if repo.ReadOnly {
- continue
- }
- log.Info("todo: ConfigSave() readonly flag on repo is wrong", repo.GoPath)
- repo.ReadOnly = true
- configsave = true
- continue
- }
- me.found.AppendUniqueGoPath(repo)
- }
- if configsave {
- log.Info("should ConfigSave here")
- me.forge.Repos.ConfigSave()
- }
+ findAll()
+ done = true
}
if argv.FindPrivate {
findPrivate()
+ done = true
}
if argv.FindMine {
findMine()
+ done = true
}
if argv.FindFavorites {
findFavorites()
+ done = true
+ }
+
+ // this is the 'default' behavior when no command line arguments are given
+ // if no argv was set, select repos marked as 'mine'
+ if !done {
+ findMine()
+ done = true
+ }
+ return done
+}
+
+func findPrivate() {
+ repos := me.forge.Repos.SortByGoPath()
+ for repos.Scan() {
+ repo := repos.Next()
+ if me.forge.Config.IsPrivate(repo.GoPath) {
+ me.found.AppendUniqueGoPath(repo)
+ }
+ }
+}
+
+// finds repos that are writable
+func findMine() {
+ // log.Printf("get mine %s\n", me.forge.GetGoSrc())
+ repos := me.forge.Repos.SortByGoPath()
+ for repos.Scan() {
+ repo := repos.Next()
+ if me.forge.Config.IsWritable(repo.GoPath) {
+ me.found.AppendUniqueGoPath(repo)
+ }
+ }
+}
+
+// finds repos that are writable
+func findFavorites() {
+ // log.Printf("get favorites %s\n", me.forge.GetGoSrc())
+ repos := me.forge.Repos.SortByGoPath()
+ for repos.Scan() {
+ repo := repos.Next()
+ if me.forge.Config.IsFavorite(repo.GoPath) {
+ me.found.AppendUniqueGoPath(repo)
+ }
+ }
+}
+
+func findAll() {
+ var configsave bool
+ repos := me.forge.Repos.SortByGoPath()
+ for repos.Scan() {
+ repo := repos.Next()
+ if me.forge.Config.IsReadOnly(repo.GoPath) && !argv.FindReadOnly {
+ if repo.ReadOnly {
+ continue
+ }
+ log.Info("todo: ConfigSave() readonly flag on repo is wrong", repo.GoPath)
+ repo.ReadOnly = true
+ configsave = true
+ continue
+ }
+ me.found.AppendUniqueGoPath(repo)
+ }
+ if configsave {
+ log.Info("should ConfigSave here")
+ me.forge.Repos.ConfigSave()
}
}
diff --git a/main.go b/main.go
index 7650b76..622ddfe 100644
--- a/main.go
+++ b/main.go
@@ -46,16 +46,24 @@ func main() {
doRedoGoMod()
done = true
}
+
if argv.DoGitPull {
doGitPull()
done = true
}
+
if argv.DoList {
// print out the repos
doCobol()
done = true
}
+ if argv.Fix {
+ // print out the repos
+ doFix()
+ done = true
+ }
+
// do the gui at the very end
if argv.DoGui {
doGui()