summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--argv.go6
-rw-r--r--doClone.go44
-rw-r--r--resources/repomap10
3 files changed, 50 insertions, 10 deletions
diff --git a/argv.go b/argv.go
index e4f36ff..67132c5 100644
--- a/argv.go
+++ b/argv.go
@@ -50,8 +50,10 @@ type DebianCmd struct {
}
type CloneCmd struct {
- DryRun bool `arg:"--dry-run" help:"show what has not yet come to pass"`
- Verbose bool `arg:"--verbose" help:"be loud about it"`
+ Check *EmptyCmd `arg:"subcommand:check" help:"check urls against the repomap"`
+ Repomap *EmptyCmd `arg:"subcommand:repomap" help:"make updated repomap"`
+ DryRun bool `arg:"--dry-run" help:"show what has not yet come to pass"`
+ Verbose bool `arg:"--verbose" help:"be loud about it"`
}
type UpgradeCmd struct {
diff --git a/doClone.go b/doClone.go
index 528edd0..a033cb7 100644
--- a/doClone.go
+++ b/doClone.go
@@ -27,6 +27,10 @@ func doClone() error {
log.Info("resources/repomap is empty")
return config.ErrEmpty
}
+ if argv.Clone.Repomap != nil {
+ makeNewRepomap(string(data))
+ return nil
+ }
for _, line := range strings.Split(string(data), "\n") {
if line == "" {
@@ -36,8 +40,15 @@ func doClone() error {
continue
}
parts := strings.Fields(line)
- gopath := parts[0]
- repo := me.forge.Repos.FindByNamespace(gopath)
+ namespace := parts[0]
+ repo := me.forge.Repos.FindByNamespace(namespace)
+ if argv.Clone.Check != nil {
+ if repo == nil {
+ log.Info("don't have repo", namespace)
+ }
+ log.Info("does url match?", parts)
+ continue
+ }
if repo != nil {
if argv.Verbose {
log.Info("already have", repo.FullPath)
@@ -45,7 +56,7 @@ func doClone() error {
continue
}
var cmd []string
- cmd = []string{"go-clone", "--non-recursive", gopath}
+ cmd = []string{"go-clone", "--non-recursive", namespace}
if argv.DryRun {
log.Info("run:", cmd)
} else {
@@ -59,3 +70,30 @@ func doClone() error {
}
return nil
}
+
+func makeNewRepomap(lines string) {
+ for _, line := range strings.Split(lines, "\n") {
+ if line == "" {
+ log.Info(line)
+ continue
+ }
+ if strings.HasPrefix(line, "#") {
+ log.Info(line)
+ continue
+ }
+ parts := strings.Fields(line)
+ namespace := parts[0]
+ repo := me.forge.Repos.FindByNamespace(namespace)
+ if repo == nil {
+ log.Info(line)
+ continue
+ }
+ newparts := []string{namespace}
+ newparts = append(newparts, repo.URL)
+ if len(parts) > 2 {
+ newparts = append(newparts, parts[2:]...)
+ }
+ newline := strings.Join(newparts, " ")
+ log.Info(newline)
+ }
+}
diff --git a/resources/repomap b/resources/repomap
index 18a29cb..98b5505 100644
--- a/resources/repomap
+++ b/resources/repomap
@@ -13,7 +13,7 @@ go.wit.com/apps/go-deb gitea.wit.com/jcarr/go-deb Turns anything into a .deb pac
go.wit.com/apps/virtigo gitea.wit.com/jcarr/virtigo control your homelab cluster (pre-alpha)
go.wit.com/apps/go-mod-clean gitea.wit.com/jcarr/go-mod-clean clean go.mod and go.sum files before publishing
go.wit.com/apps/argv github.com/alexflint/argv shell autocomplete
-go.wit.com/apps/autotypist gitea.wit.com/jcarr/autotypist
+# go.wit.com/apps/autotypist gitea.wit.com/jcarr/autotypist
go.wit.com/apps/control-panel-dns gitea.wit.com/jcarr/control-panel-dns
go.wit.com/apps/networkQuality github.com/wit-go/networkQuality
go.wit.com/apps/regex gitea.wit.com/jcarr/regex
@@ -65,7 +65,7 @@ go.wit.com/lib/daemons/virtigod gitea.wit.com/jcarr/virtigod the virtigo hypervi
go.wit.com/lib/daemons/zood gitea.wit.com/jcarr/zood a simple daemon for zookeeper
go.wit.com/lib/daemons/gus gitea.wit.com/jcarr/gus "Phantastic Gus" your network squirrel
go.wit.com/lib/libgit2 gitea.wit.com/jcarr/git2go
-go.wit.com/lib/libme gitea.wit.com/jcarr/libme
+# go.wit.com/lib/libme gitea.wit.com/jcarr/libme
go.wit.com/lib/libgit2go gitea.wit.com/jcarr/git2go fixed for libgit2 v1.9 (works on debian sid)
go.wit.com/lib/fhelp gitea.wit.com/jcarr/fhelp
go.wit.com/lib/http/ginpb gitea.wit.com/jcarr/ginpb
@@ -82,7 +82,7 @@ go.wit.com/lib/protobuf/httppb gitea.wit.com/jcarr/httppb protobuf for http head
go.wit.com/lib/protobuf/gitpb gitea.wit.com/jcarr/gitpb protobuf for git repos
go.wit.com/lib/protobuf/guipb gitea.wit.com/jcarr/guipb protobuf for the GUI toolkits
go.wit.com/lib/protobuf/virtpb gitea.wit.com/jcarr/virtpb protobuf for virtigo
-go.wit.com/lib/protobuf/witpb gitea.wit.com/wit/witProtobuf
+# go.wit.com/lib/protobuf/witpb gitea.wit.com/wit/witProtobuf
go.wit.com/lib/protobuf/zoopb gitea.wit.com/jcarr/zoopb protobuf for zookeeper
# Support packages (forked for experiments)
@@ -90,10 +90,10 @@ go.wit.com/lib/protobuf/zoopb gitea.wit.com/jcarr/zoopb protobuf for zookeeper
go.wit.com/dev/alexflint/arg gitea.wit.com/jcarr/go-arg slight minor modifications to 'go-arg'
go.wit.com/dev/alexflint/scalar gitea.wit.com/jcarr/go-scalar
go.wit.com/dev/andlabs/ui gitea.wit.com/interesting/andlabs-ui attempts to add RiscV support
-go.wit.com/dev/andlabs/libui gitea.wit.com/interesting/libui
+# go.wit.com/dev/andlabs/libui gitea.wit.com/interesting/libui
go.wit.com/dev/davecgh/spew gitea.wit.com/jcarr/go-spew
go.wit.com/dev/posener/complete gitea.wit.com/interesting/complete
-go.wit.com/dev/test/gogit3 gitea.wit.com/jcarr/gogit2
+# go.wit.com/dev/test/gogit3 gitea.wit.com/jcarr/gogit2
# debian package instructions: