summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--humanTable.go6
-rw-r--r--patchset.Get.go31
-rw-r--r--patchset.config.go20
3 files changed, 36 insertions, 21 deletions
diff --git a/humanTable.go b/humanTable.go
index 6bd4717..9516d3f 100644
--- a/humanTable.go
+++ b/humanTable.go
@@ -330,8 +330,8 @@ func (psets *Patchsets) PrintTable() {
log.DaemonMode(true)
// print the header
- args := []string{"commit hash", "", "", "name", "Repo Namespace", "", "", "", "", ""}
- sizes := []int{36, 3, 3, 40, 80, 2, 2, 2, 2, 2}
+ args := []string{"commit hash", "new hash", "", "", "name", "Repo Namespace", "", "", "", "", ""}
+ sizes := []int{12, 12, 3, 3, 40, 80, 2, 2, 2, 2}
log.Info(cobol.StandardTableSize10(sizes, args))
var countCONTENTS int
@@ -345,7 +345,7 @@ func (psets *Patchsets) PrintTable() {
partId := log.Sprintf("%d", i)
_, fname := filepath.Split(p.GetFilename())
- args = []string{p.CommitHash, cId, partId, fname, p.GetNamespace(), "", "", "", "", ""}
+ args = []string{p.CommitHash, p.NewHash, cId, partId, fname, p.GetNamespace(), "", "", "", "", ""}
start := cobol.StandardTableSize10(sizes, args)
log.Info(start)
diff --git a/patchset.Get.go b/patchset.Get.go
index 5904914..3f4123a 100644
--- a/patchset.Get.go
+++ b/patchset.Get.go
@@ -23,12 +23,6 @@ func (f *Forge) GetPatches() error {
log.Info("Unmarshal failed", err)
return err
}
- /*
- filename := filepath.Join("/tmp", pbfile)
- f, _ := os.OpenFile(filename, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644)
- f.Write(body)
- f.Close()
- */
psets.PrintTable()
f.loadUpstreamPatchsets(psets)
return nil
@@ -40,6 +34,7 @@ func (f *Forge) loadUpstreamPatchsets(psets *Patchsets) {
for all.Scan() {
pset := all.Next()
found := f.Patchsets.FindByUuid(pset.Uuid)
+ author := log.Sprintf("Author: %s <%s>", found.GitAuthorName, found.GitAuthorEmail)
if found == nil {
log.Info("new patchset", pset.Name, pset.Uuid)
pset.State = "new"
@@ -52,14 +47,28 @@ func (f *Forge) loadUpstreamPatchsets(psets *Patchsets) {
log.Warn("OH NO! f.Patchsets == nil")
continue
}
+ log.Warn("appending pset", pset.Uuid, pset.State, pset.Name)
f.Patchsets.Append(pset)
- } else {
- log.Info("patchset already on disk", found.Name, found.State)
- pset.State = found.State
- if pset.State == "" {
- pset.State = "new"
+ continue
+ }
+ log.Info("EXAMINE PSET", pset.Name, pset.Uuid, pset.Patches.Len())
+ for _, patch := range pset.Patches.Patches {
+ // log.Info("\tnew patch:", i, patch.CommitHash, patch.Namespace)
+ if f.findPatch(patch) {
+ // log.Info("\talready found!!!!!!!", pset.Uuid, patch.Namespace)
+ continue
+ }
+ if err := f.addRandomPatch(patch); err == nil {
+ log.Info("\tnew patch added:", patch.CommitHash, found.Name, found.Comment, author)
+ foundnew = true
+ } else {
+ log.Info("\tnew patch failed:", patch.CommitHash, found.Name, found.Comment, author, err)
}
}
+ pset.State = found.State
+ if pset.State == "" {
+ pset.State = "new"
+ }
}
if foundnew {
f.SavePatchsets()
diff --git a/patchset.config.go b/patchset.config.go
index a151095..ed5853b 100644
--- a/patchset.config.go
+++ b/patchset.config.go
@@ -84,26 +84,30 @@ func (pb *Patchset) ShowPatchsets() error {
}
// adds a patchset or just the patches
-func (f *Forge) AddPatchset(pb *Patchset) {
+func (f *Forge) AddPatchset(pb *Patchset) bool {
+ var changed bool
// if the name of the patchset is "forge auto commit"
// then just add all the patches
if pb.Name == "forge auto commit" {
author := "Author: " + pb.GitAuthorName
author += " <" + pb.GitAuthorEmail + ">"
- // author := "Author: " + os.Getenv("GIT_AUTHOR_NAME")
- // author += " <" + os.Getenv("GIT_AUTHOR_EMAIL") + ">"
fmt.Println(pb.Name, pb.Comment, author)
for _, patch := range pb.Patches.Patches {
// log.Info("\tnew patch:", i, patch.CommitHash, patch.Namespace)
if f.findPatch(patch) {
// log.Info("\talready found!!!!!!!", pset.Uuid, patch.Namespace)
} else {
- log.Info("\tnew patch:", pb.Name, pb.Comment, author)
- f.addRandomPatch(patch)
+ if err := f.addRandomPatch(patch); err == nil {
+ log.Info("\tnew patch added:", patch.CommitHash, pb.Name, pb.Comment, author)
+ changed = true
+ } else {
+ log.Info("\tnew patch failed:", patch.CommitHash, pb.Name, pb.Comment, author, err)
+ }
+
}
}
- return
+ return changed
}
// if you got here, this patchset was submitted with a name
@@ -112,7 +116,8 @@ func (f *Forge) AddPatchset(pb *Patchset) {
for pset := range f.Patchsets.IterAll() {
if pset.Uuid == pb.Uuid {
log.Info("ALREADY ADDED", pset.Uuid, pset.Name)
- return
+ return false
+ } else {
}
}
@@ -122,6 +127,7 @@ func (f *Forge) AddPatchset(pb *Patchset) {
if newpb != nil {
f.Patchsets.Patchsets = append(f.Patchsets.Patchsets, newpb)
}
+ return true
}
func (f *Forge) findAutoPatchset() *Patchset {