summaryrefslogtreecommitdiff
path: root/doPublish.go
diff options
context:
space:
mode:
Diffstat (limited to 'doPublish.go')
-rw-r--r--doPublish.go40
1 files changed, 39 insertions, 1 deletions
diff --git a/doPublish.go b/doPublish.go
index 9b11ddd..faf17b3 100644
--- a/doPublish.go
+++ b/doPublish.go
@@ -6,14 +6,46 @@ package main
import (
"errors"
"fmt"
+ "os"
+ "path/filepath"
"go.wit.com/lib/env"
"go.wit.com/lib/protobuf/argvpb"
+ "go.wit.com/lib/protobuf/gitpb"
"go.wit.com/log"
)
+func rillRestore(repo *gitpb.Repo) error {
+ if me.forge.Config.IsReadOnly(repo.GetGoPath()) {
+ return nil
+ }
+ if me.forge.Config.IsPrivate(repo.GetGoPath()) {
+ return nil
+ }
+
+ var err error
+ if argv.Verbose {
+ log.Info("go-mod-clean lax START", repo.GetGoPath())
+ result := repo.RunRealtime([]string{"go-mod-clean", "lax"})
+ log.Info("go-mod-clean lax END", repo.GetGoPath())
+ if result.Exit != 0 {
+ err = fmt.Errorf("repo %s failed %d", repo.GetGoPath(), result.Exit)
+ }
+ } else {
+ _, err = repo.RunQuiet([]string{"go-mod-clean", "lax"})
+ }
+ if err != nil {
+ log.Info("go-mod-clean lax failed", repo.GetGoPath(), err)
+ return err
+ }
+ return nil
+}
+
func doPublish() error {
initForge()
+ env.PrintTable()
+
+ me.forge.RillFuncError(rillRestore)
// publish := me.forge.RunOnReposNewDumb(me.forge.Repos, rePrepareReleaseNew) // doesn't use Rill()
publish := me.forge.RunOnReposNew(me.forge.Repos, rePrepareReleaseNew)
@@ -45,13 +77,19 @@ func doPublish() error {
for i, repo := range tryme {
log.Info("tryme:", i, repo.FullPath)
+ gomod, err := os.ReadFile(filepath.Join(repo.FullPath, "go.mod"))
+ if err != nil {
+ panic("go.mod missing")
+ }
+ log.Info(string(gomod))
if env.True("--doit") {
err := doRelease(repo, startRepo, releaseReason)
if err != nil {
return err
}
+ } else {
+ log.Printf("WOULD HAVE RUN: doRelease(%s, %s, %s) %s\n", repo.Namespace, startRepo.Namespace, releaseReason, repo.GetTargetVersion())
}
- log.Printf("WOULD HAVE RUN: doRelease(%s, %s, %s) %s\n", repo.Namespace, startRepo.Namespace, releaseReason, repo.GetTargetVersion())
}
if !env.True("--doit") {