diff options
| author | Jeff Carr <[email protected]> | 2024-12-01 19:27:30 -0600 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2024-12-01 19:27:30 -0600 |
| commit | 9d95b189135422a720cb00f8b0ca8546e7fdc9b5 (patch) | |
| tree | 34299ad83167152bf4681b4264751b5c4f9cdf50 /forgeConfig/main.go | |
Diffstat (limited to 'forgeConfig/main.go')
| -rw-r--r-- | forgeConfig/main.go | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/forgeConfig/main.go b/forgeConfig/main.go new file mode 100644 index 0000000..36b0b71 --- /dev/null +++ b/forgeConfig/main.go @@ -0,0 +1,133 @@ +package main + +import ( + "os" + + "go.wit.com/lib/protobuf/forgepb" + "go.wit.com/log" +) + +// sent via ldflags +var VERSION string + +func main() { + f := forgepb.Init() + + if argv.List { + f.ConfigPrintTable() + loop := f.Config.SortByGoPath() // get the list of forge configs + for loop.Scan() { + r := loop.Next() + log.Info("repo:", r.GoPath) + } + os.Exit(0) + } + + // try to delete, then save config and exit + if argv.Delete { + if f.Config.DeleteByGoPath(argv.GoPath) { + log.Info("deleted", argv.GoPath, "did not exist. did nothing") + os.Exit(0) + } + log.Info("deleted", argv.GoPath, "ok") + f.ConfigSave() + os.Exit(0) + } + + // try to update, then save config and exit + if argv.Update { + /* + if f.UpdateGoPath(argv.Name, argv.GoPath) { + // save updated config file + repos.ConfigSave() + } + */ + os.Exit(0) + } + + // try to add, then save config and exit + if argv.Add { + log.Info("going to add a new repo", argv.GoPath) + new1 := forgepb.ForgeConfig{ + GoPath: argv.GoPath, + Writable: argv.Writable, + ReadOnly: argv.ReadOnly, + Private: argv.Private, + Directory: argv.Directory, + Favorite: argv.Favorite, + Interesting: argv.Interesting, + } + + if f.Config.Append(&new1) { + log.Info("added", new1.GoPath, "ok") + } else { + log.Info("added", new1.GoPath, "failed") + os.Exit(-1) + } + f.ConfigSave() + os.Exit(0) + } + + // testMemoryCorruption(f) + f.ConfigSave() +} + +/* +// this fucks shit up +func testMemoryCorruption(all *forgepb.Repos) *forgepb.Repos { + new1 := new(forgepb.Repo) + new1.Name = "bash1" + new1.Version = "5.2.21" + if all.Append(new1) { + log.Info("added", new1.Name, "ok") + } else { + log.Info("added", new1.Name, "failed") + } + + new1 = new(forgepb.Repo) + new1.Name = "zookeeper1" + new1.Debname = "zookeeper-go" + if all.Append(new1) { + log.Info("added", new1.Name, "ok") + } else { + log.Info("added", new1.Name, "failed") + } + + new1 = new(forgepb.Repo) + new1.Name = "wit-package" + new1.Private = true + if all.Append(new1) { + log.Info("added", new1.Name, "ok") + } else { + log.Info("added", new1.Name, "failed") + } + + new1 = new(forgepb.Repo) + new1.Name = "networkQuality" + new1.Debname = "networkquality" + new1.Readonly = true + if all.Append(new1) { + log.Info("added", new1.Name, "ok") + } else { + log.Info("added", new1.Name, "failed") + } + + new2 := new(forgepb.Repo) + new2.Name = "go-clone" + new2.Version = "0.6.8" // good version of the macos + if all.Append(new2) { + log.Info("added", new2.Name, "ok") + } else { + log.Info("added", new2.Name, "failed") + } + + if all.Append(new2) { + log.Info("added", new2.Name, "ok (this is bad)") + } else { + log.Info("added", new2.Name, "failed (but ok)") + } + + fmt.Println("packages are:", len(all.Repos)) + return all +} +*/ |
