diff options
| author | Jeff Carr <[email protected]> | 2025-10-05 20:04:23 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-10-05 20:04:23 -0500 |
| commit | 50fea58cf96abaa3f8c28c6ffb67630d6dd7829e (patch) | |
| tree | cc1d2493ca7827f6cc4a57907b5be0fa19b5f3f0 /doDev.go | |
| parent | 0d4dfc597ae17b072bd1b8ff971a30cd926dc556 (diff) | |
made things to try to delete user branches
Diffstat (limited to 'doDev.go')
| -rw-r--r-- | doDev.go | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/doDev.go b/doDev.go new file mode 100644 index 0000000..b526b10 --- /dev/null +++ b/doDev.go @@ -0,0 +1,60 @@ +// Copyright 2017-2025 WIT.COM Inc. All rights reserved. +// Use of this source code is governed by the GPL 3.0 + +package main + +import ( + "go.wit.com/lib/protobuf/forgepb" + "go.wit.com/log" +) + +// FORGE USES THESE TO RECOVER FROM WHEN TOOLKITS FAIL TO LOAD +// so don't delete them +func doDev() (string, error) { + if argv.Dev.DeleteUser { + setForgeMode(forgepb.ForgeMode_MASTER) + for repo := range me.forge.Repos.IterByNamespace() { + if !repo.IsBranchRemote(repo.GetUserBranchName()) { + continue + } + // log.Info("delete remote user", repo.FullPath) + localtag := repo.IsBranchLocal(repo.GetUserBranchName()) + if localtag == nil { + log.Info("no local user", repo.FullPath) + continue + } + // log.Info("local user", repo.FullPath) + hashes, err := repo.DeleteLocalBranch(repo.GetUserBranchName()) + if err != nil { + // log.Info("LOCAL BRANCH NOT SAFE. COMPARE WITH DEVEL", err, repo.FullPath) + } else if hashes == nil { + log.Info("LOCAL SAFE TO DELETE", repo.FullPath) + continue + } + uref := repo.GetLocalUserRef() + dref := repo.GetLocalDevelRef() + // try compare against devel + uver := repo.NewCompareRef(uref) + dver := repo.NewCompareRef(dref) + hashok, hashbad, err := dver.DeleteBranch(uver) + if err == nil { + for _, line := range hashok { + log.Info("SAFE hashok", line) + } + for _, line := range hashbad { + log.Info("NOT SAFE hashbad", line) + } + log.Info("SAFE TO DELETE uver from dver", uref.Refname, dref.Refname, repo.FullPath) + continue + } + for _, line := range hashok { + log.Info("SAFE hashok", line) + } + for _, line := range hashbad { + log.Info("NOT SAFE hashbad", line) + } + log.Info("NOT SAFE TO DELETE uver from dver", uref.Refname, dref.Refname, repo.FullPath, err) + } + } + return "", nil +} |
