diff --git a/windowRepos.go b/windowRepos.go index b2a6f4d..167fb09 100644 --- a/windowRepos.go +++ b/windowRepos.go @@ -129,31 +129,31 @@ func (r *repoWindow) repoMenu() *gui.Node { func (r *repoWindow) mergeAllDevelToMain() bool { log.Info("merge all here") - loop := me.repos.View.ReposSortByName() + loop := me.forge.Repos.All() for loop.Scan() { - repo := loop.Repo() - if repo.ReadOnly() { - log.Info("skipping readonly", repo.Name(), repo.State()) + repo := loop.Next() + if me.forge.Config.IsReadOnly(repo.GetGoPath()) { + log.Info("skipping readonly", repo.GetFullPath()) continue } - if repo.State() != "merge to main" { - log.Info("skipping. not merge to main", repo.Name(), repo.State()) + if repo.IsDirty() { + log.Info("skipping dirty", repo.GetFullPath()) continue } - if repo.CheckDirty() { - log.Info("skipping dirty", repo.Name(), repo.State()) + if result, err := repo.MergeDevelToMaster(); err == nil { + log.Warn("THINGS SEEM OK", repo.GetFullPath()) continue - } - log.Info("repo:", 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") + log.Warn("THINGS FAILED ", repo.GetFullPath()) + log.Warn("err", err) + for _, line := range result.Stdout { + log.Warn("stdout:", line) + } + for _, line := range result.Stderr { + log.Warn("stderr:", line) + } return false } - repo.NewScan() } log.Warn("EVERYTHING WORKED") return true @@ -161,31 +161,31 @@ func (r *repoWindow) mergeAllDevelToMain() bool { func (r *repoWindow) mergeAllUserToDevel() bool { log.Info("merge all here") - loop := me.repos.View.ReposSortByName() + loop := me.forge.Repos.All() for loop.Scan() { - repo := loop.Repo() - if repo.ReadOnly() { - log.Info("skipping readonly", repo.Name(), repo.State()) + repo := loop.Next() + if me.forge.Config.IsReadOnly(repo.GetGoPath()) { + log.Info("skipping readonly", repo.GetFullPath()) continue } - if repo.State() != "merge to devel" { - log.Info("skipping. not merge to devel", repo.Name(), repo.State()) + if repo.IsDirty() { + log.Info("skipping dirty", repo.GetFullPath()) continue } - if repo.CheckDirty() { - log.Info("skipping dirty", repo.Name(), repo.State()) + if result, err := repo.MergeUserToDevel(); err == nil { + log.Warn("THINGS SEEM OK", repo.GetFullPath()) continue - } - log.Info("repo:", 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") + log.Warn("THINGS FAILED ", repo.GetFullPath()) + log.Warn("err", err) + for _, line := range result.Stdout { + log.Warn("stdout:", line) + } + for _, line := range result.Stderr { + log.Warn("stderr:", line) + } return false } - repo.NewScan() } log.Warn("EVERYTHING WORKED") return true