summaryrefslogtreecommitdiff
path: root/doMerge.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-10-10 18:44:04 -0500
committerJeff Carr <[email protected]>2025-10-10 18:44:04 -0500
commite60c05f670aa3b34d501fc467b5729b89f0f431a (patch)
treeba920a3f50d3c483506a427d95601b69bf07a896 /doMerge.go
parent22e5c5241ab4ad908ab9022a81322eae1af8fe93 (diff)
more cleanups. shooting for better code
Diffstat (limited to 'doMerge.go')
-rw-r--r--doMerge.go36
1 files changed, 18 insertions, 18 deletions
diff --git a/doMerge.go b/doMerge.go
index 9dab8ee..c359ecc 100644
--- a/doMerge.go
+++ b/doMerge.go
@@ -13,13 +13,15 @@ import (
"go.wit.com/log"
)
-func doMerge() error {
+func doMerge() (string, error) {
+ var s string
+ var err error
if argv.All == true {
start := time.Now()
repos, err := doMergeDevel()
dur := time.Since(start)
if err != nil {
- badExit(err)
+ return "doMergeDevel() failure", err
}
log.Printf("Merged %d devel branches in %s\n", repos.Len(), shell.FormatDuration(dur))
@@ -27,46 +29,44 @@ func doMerge() error {
repos, err = doMergeMaster()
dur = time.Since(start)
if err != nil {
- badExit(err)
+ return "doMergeMaster() failure", err
}
- log.Printf("Merged %d master branches in %s\n", repos.Len(), shell.FormatDuration(dur))
- okExit("")
+ return log.Sprintf("Merged %d master branches in %s", repos.Len(), shell.FormatDuration(dur)), nil
}
if argv.Merge.Devel != nil {
start := time.Now()
repos, err := doMergeDevel()
dur := time.Since(start)
if err != nil {
- badExit(err)
+ return "doMergeDevel() failure", err
}
- log.Printf("Merged %d devel branches in %s\n", repos.Len(), shell.FormatDuration(dur))
- okExit("")
+ return log.Sprintf("Merged %d devel branches in %s", repos.Len(), shell.FormatDuration(dur)), nil
}
if argv.Merge.Master != nil {
start := time.Now()
repos, err := doMergeMaster()
dur := time.Since(start)
if err != nil {
- badExit(err)
+ return "doMergeMaster() failure", err
}
- log.Printf("Merged %d master branches in %s\n", repos.Len(), shell.FormatDuration(dur))
- okExit("")
+ return log.Sprintf("Merged %d master branches in %s", repos.Len(), shell.FormatDuration(dur)), nil
}
if argv.Merge.Check != nil {
- if err := safeToPublish(); err != nil {
- me.sh.BadExit("Merge is not complete. Not safe to Publish.", err)
+ err = safeToPublish()
+ if err == nil {
+ return "probably safe to publish and merge", nil
}
- okExit("")
+ return "Not safe to Publish.", err
}
- if showWorkRepos() {
- // found some repos at least
- } else {
+ s, err = findWorkRepos()
+ // found some repos at least
+ if err == nil {
// every repo is in a really clean state. no extra files anywhere
// no dirty repos, no repos that need to be published
// nothing different between user and master branch version. not common
log.Info("There does't seem to be anything to merge. Your repos are very consistent.")
}
- return nil
+ return s, err
}
func hashesMatch(repo *gitpb.Repo) error {