summaryrefslogtreecommitdiff
path: root/mergeAll.go
diff options
context:
space:
mode:
Diffstat (limited to 'mergeAll.go')
-rw-r--r--mergeAll.go71
1 files changed, 71 insertions, 0 deletions
diff --git a/mergeAll.go b/mergeAll.go
new file mode 100644
index 0000000..7a606be
--- /dev/null
+++ b/mergeAll.go
@@ -0,0 +1,71 @@
+package main
+
+import (
+ "go.wit.com/log"
+)
+
+func mergeAllDevelToMain() bool {
+ log.Info("merge all here")
+ loop := me.repos.View.ReposSortByName()
+ for loop.Scan() {
+ repo := loop.Repo()
+
+ if repo.ReadOnly() {
+ log.Info("skipping readonly", repo.Name(), repo.State())
+ continue
+ }
+ if repo.State() != "merge to main" {
+ log.Info("skipping. not merge to main", repo.Name(), repo.State())
+ continue
+ }
+ if repo.CheckDirty() {
+ log.Info("skipping dirty", repo.Name(), repo.State())
+ continue
+ }
+ log.Info("found", repo.Name(), repo.State())
+ repo.NewScan()
+ if repo.Status.MergeDevelToMaster() {
+ log.Warn("THINGS SEEM OK fullAutomation() returned true.")
+ } else {
+ log.Warn("last repo:", repo.Name())
+ log.Warn("THINGS FAILED fullAutomation() returned false")
+ return false
+ }
+ repo.NewScan()
+ }
+ log.Warn("EVERYTHING WORKED")
+ return true
+}
+
+func mergeAllUserToDevel() bool {
+ log.Info("merge all here")
+ loop := me.repos.View.ReposSortByName()
+ for loop.Scan() {
+ repo := loop.Repo()
+
+ if repo.ReadOnly() {
+ log.Info("skipping readonly", repo.Name(), repo.State())
+ continue
+ }
+ if repo.State() != "merge to devel" {
+ log.Info("skipping. not merge to devel", repo.Name(), repo.State())
+ continue
+ }
+ if repo.CheckDirty() {
+ log.Info("skipping dirty", repo.Name(), repo.State())
+ continue
+ }
+ log.Info("found", repo.Name(), repo.State())
+ repo.NewScan()
+ if repo.Status.MergeUserToDevel() {
+ log.Warn("THINGS SEEM OK fullAutomation() returned true.")
+ } else {
+ log.Warn("last repo:", repo.Status.Path())
+ log.Warn("THINGS FAILED fullAutomation() returned false")
+ return false
+ }
+ repo.NewScan()
+ }
+ log.Warn("EVERYTHING WORKED")
+ return true
+}