93 lines
2.4 KiB
Go
93 lines
2.4 KiB
Go
|
// This is a simple example
|
||
|
package main
|
||
|
|
||
|
import (
|
||
|
"go.wit.com/log"
|
||
|
)
|
||
|
|
||
|
func (r *repo) getGoSumStatus() string {
|
||
|
return r.goSumStatus.String()
|
||
|
}
|
||
|
|
||
|
func (r *repo) setGoSumStatus(s string) {
|
||
|
r.goSumStatus.SetLabel(s)
|
||
|
r.status.SetGoSumStatus(s)
|
||
|
}
|
||
|
|
||
|
func (r *repo) checkDirty() bool {
|
||
|
if r.status.CheckDirty() {
|
||
|
log.Info("dirty repo:", r.status.String(), r.getGoSumStatus())
|
||
|
r.setGoSumStatus("DIRTY")
|
||
|
return true
|
||
|
}
|
||
|
return false
|
||
|
}
|
||
|
|
||
|
func (r *repo) checkSafeGoSumRemake() {
|
||
|
if ok, bad := r.status.CheckSafeGoSumRemake(); ok {
|
||
|
log.Info("checkSafeGoSumRemake() is safe to redo")
|
||
|
r.setGoSumStatus("SAFE")
|
||
|
r.status.MakeRedomod()
|
||
|
} else {
|
||
|
log.Info("checkSafeGoSumRemake() is not safe. problems:", bad)
|
||
|
r.setGoSumStatus("BAD DEP")
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func scanGoSum() {
|
||
|
for _, repo := range me.allrepos {
|
||
|
if repo.String() == "go.wit.com/apps/guireleaser" {
|
||
|
if release.guireleaser == nil {
|
||
|
release.guireleaser = repo
|
||
|
}
|
||
|
}
|
||
|
latestversion := repo.status.GetLastTagVersion()
|
||
|
if repo.getGoSumStatus() == "BAD" {
|
||
|
continue
|
||
|
}
|
||
|
if repo.getGoSumStatus() == "DIRTY" {
|
||
|
continue
|
||
|
}
|
||
|
if repo.status.CheckPrimativeGoMod() {
|
||
|
log.Info("PRIMATIVE repo:", latestversion, repo.status.String())
|
||
|
repo.setGoSumStatus("PRIMATIVE")
|
||
|
continue
|
||
|
}
|
||
|
if repo.checkDirty() {
|
||
|
log.Info("dirty repo:", latestversion, repo.status.String())
|
||
|
log.Info("dirty repo.getGoSumStatus =", repo.getGoSumStatus())
|
||
|
repo.setGoSumStatus("DIRTY")
|
||
|
|
||
|
// release.repo.SetValue(repo.status.String())
|
||
|
// release.status.SetValue("dirty")
|
||
|
// release.notes.SetValue("You must commit your changes\nbefore you can continue")
|
||
|
// release.current = repo
|
||
|
// release.openrepo.Enable()
|
||
|
continue
|
||
|
}
|
||
|
if ok, missing := repo.status.CheckGoSum(); ok {
|
||
|
log.Info("repo has go.sum requirements that are clean")
|
||
|
repo.setGoSumStatus("CLEAN")
|
||
|
} else {
|
||
|
log.Info("repo has go.sum requirements that are screwed up. missing:", missing)
|
||
|
repo.setGoSumStatus("BAD")
|
||
|
|
||
|
// release.repo.SetValue(repo.status.String())
|
||
|
// release.status.SetValue("bad")
|
||
|
// release.notes.SetValue("the go.sum file is wrong")
|
||
|
// release.current = repo
|
||
|
// release.openrepo.Enable()
|
||
|
continue
|
||
|
}
|
||
|
status := repo.dirtyLabel.String()
|
||
|
if status == "PERFECT" {
|
||
|
continue
|
||
|
} else {
|
||
|
repo.newScan()
|
||
|
}
|
||
|
|
||
|
log.Info("repo:", latestversion, status, repo.status.String())
|
||
|
}
|
||
|
log.Info("scanGoSum() did everything, not sure what to do next")
|
||
|
}
|