add submit patchset

This commit is contained in:
Jeff Carr 2025-01-28 22:48:25 -06:00
parent 76a0347fdf
commit 667257595d
2 changed files with 42 additions and 2 deletions

View File

@ -15,7 +15,7 @@ import (
var forgeURL string = "https://go.wit.com/"
func (f *Forge) GetPatchesets() (*Patchsets, error) {
url := forgeURL + "/GetPatchsets"
url := forgeURL + "GetPatchsets"
log.Info("GetPatchsets() url", url)
body, err := f.HttpPost(url, nil)
if err != nil {

View File

@ -11,8 +11,22 @@ import (
"go.wit.com/log"
)
func (f *Forge) MakeDevelPatchSet() (*Patchset, error) {
// creates a patchset
// works from the user branches against the devel branches
func (f *Forge) SubmitDevelPatchSet(name string) (*Patchset, error) {
pset := new(Patchset)
pset.Name = name
if os.Getenv("GIT_AUTHOR_NAME") == "" {
return nil, fmt.Errorf("GIT_AUTHOR_NAME not set")
} else {
pset.GitAuthorName = os.Getenv("GIT_AUTHOR_NAME")
}
if os.Getenv("GIT_AUTHOR_EMAIL") == "" {
return nil, fmt.Errorf("GIT_AUTHOR_EMAIL not set")
} else {
pset.GitAuthorEmail = os.Getenv("GIT_AUTHOR_EMAIL")
}
dir, err := os.MkdirTemp("", "forge")
if err != nil {
return nil, err
@ -39,6 +53,10 @@ func (f *Forge) MakeDevelPatchSet() (*Patchset, error) {
return nil, err
}
}
if err := f.submitPatchset(pset); err != nil {
return nil, err
}
return pset, nil
}
@ -191,3 +209,25 @@ func onlyWalkDirs(pDir string) error {
})
return baderr
}
func (f *Forge) submitPatchset(pset *Patchset) error {
var url string
url = forgeURL + "patchset"
msg, err := pset.Marshal()
if err != nil {
log.Info("proto.Marshal() failed:", err)
return err
}
log.Info("proto.Marshal() msg len", len(msg))
body, err := f.HttpPost(url, msg)
if err != nil {
log.Info("httpPost() failed:", err)
return err
}
test := strings.TrimSpace(string(body))
for _, line := range strings.Split(test, "\n") {
log.Info("got back:", line)
}
return nil
}