From 674957af5d20945d99caf910aeca5c59a2f8cfc2 Mon Sep 17 00:00:00 2001 From: Cory Bennett Date: Thu, 11 Feb 2016 15:11:06 -0800 Subject: [PATCH] change for api changes to go-logging --- cli.go | 42 +++++++-------- commands.go | 146 +++++++++++++++++++++++++-------------------------- main/main.go | 36 ++++++------- util.go | 26 ++++----- 4 files changed, 125 insertions(+), 125 deletions(-) diff --git a/cli.go b/cli.go index bd18a8c..4f37800 100644 --- a/cli.go +++ b/cli.go @@ -6,8 +6,8 @@ import ( "encoding/json" "fmt" "github.com/kballard/go-shellquote" - "github.com/op/go-logging" "gopkg.in/coryb/yaml.v2" + "gopkg.in/op/go-logging.v1" "io/ioutil" "net/http" "net/http/cookiejar" @@ -100,15 +100,15 @@ func (c *Cli) loadCookies() []*http.Cookie { return nil } if err != nil { - log.Error("Failed to open %s: %s", c.cookieFile, err) + log.Errorf("Failed to open %s: %s", c.cookieFile, err) os.Exit(1) } cookies := make([]*http.Cookie, 0) err = json.Unmarshal(bytes, &cookies) if err != nil { - log.Error("Failed to parse json from file %s: %s", c.cookieFile, err) + log.Errorf("Failed to parse json from file %s: %s", c.cookieFile, err) } - log.Debug("Loading Cookies: %s", cookies) + log.Debugf("Loading Cookies: %s", cookies) return cookies } @@ -123,7 +123,7 @@ func (c *Cli) put(uri string, content string) (*http.Response, error) { func (c *Cli) delete(uri string) (*http.Response, error) { method := "DELETE" req, _ := http.NewRequest(method, uri, nil) - log.Info("%s %s", req.Method, req.URL.String()) + log.Infof("%s %s", req.Method, req.URL.String()) if resp, err := c.makeRequest(req); err != nil { return nil, err } else { @@ -142,11 +142,11 @@ func (c *Cli) makeRequestWithContent(method string, uri string, content string) buffer := bytes.NewBufferString(content) req, _ := http.NewRequest(method, uri, buffer) - log.Info("%s %s", req.Method, req.URL.String()) + log.Infof("%s %s", req.Method, req.URL.String()) if log.IsEnabledFor(logging.DEBUG) { logBuffer := bytes.NewBuffer(make([]byte, 0, len(content))) req.Write(logBuffer) - log.Debug("%s", logBuffer) + log.Debugf("%s", logBuffer) // need to recreate the buffer since the offset is now at the end // need to be able to rewind the buffer offset, dont know how yet req, _ = http.NewRequest(method, uri, bytes.NewBufferString(content)) @@ -168,11 +168,11 @@ func (c *Cli) makeRequestWithContent(method string, uri string, content string) func (c *Cli) get(uri string) (*http.Response, error) { req, _ := http.NewRequest("GET", uri, nil) - log.Info("%s %s", req.Method, req.URL.String()) + log.Infof("%s %s", req.Method, req.URL.String()) if log.IsEnabledFor(logging.DEBUG) { logBuffer := bytes.NewBuffer(make([]byte, 0)) req.Write(logBuffer) - log.Debug("%s", logBuffer) + log.Debugf("%s", logBuffer) } if resp, err := c.makeRequest(req); err != nil { @@ -191,11 +191,11 @@ func (c *Cli) get(uri string) (*http.Response, error) { func (c *Cli) makeRequest(req *http.Request) (resp *http.Response, err error) { req.Header.Set("Content-Type", "application/json") if resp, err = c.ua.Do(req); err != nil { - log.Error("Failed to %s %s: %s", req.Method, req.URL.String(), err) + log.Errorf("Failed to %s %s: %s", req.Method, req.URL.String(), err) return nil, err } else { if resp.StatusCode < 200 || resp.StatusCode >= 300 && resp.StatusCode != 401 { - log.Error("response status: %s", resp.Status) + log.Errorf("response status: %s", resp.Status) } runtime.SetFinalizer(resp, func(r *http.Response) { @@ -257,14 +257,14 @@ func (c *Cli) editTemplate(template string, tmpFilePrefix string, templateData m fh, err := ioutil.TempFile(tmpdir, tmpFilePrefix) if err != nil { - log.Error("Failed to make temp file in %s: %s", tmpdir, err) + log.Errorf("Failed to make temp file in %s: %s", tmpdir, err) return err } defer fh.Close() tmpFileName := fmt.Sprintf("%s.yml", fh.Name()) if err := os.Rename(fh.Name(), tmpFileName); err != nil { - log.Error("Failed to rename %s to %s: %s", fh.Name(), fmt.Sprintf("%s.yml", fh.Name()), err) + log.Errorf("Failed to rename %s to %s: %s", fh.Name(), fmt.Sprintf("%s.yml", fh.Name()), err) return err } defer func() { @@ -301,11 +301,11 @@ func (c *Cli) editTemplate(template string, tmpFilePrefix string, templateData m if editing { shell, _ := shellquote.Split(editor) shell = append(shell, tmpFileName) - log.Debug("Running: %#v", shell) + log.Debugf("Running: %#v", shell) cmd := exec.Command(shell[0], shell[1:]...) cmd.Stdout, cmd.Stderr, cmd.Stdin = os.Stdout, os.Stderr, os.Stdin if err := cmd.Run(); err != nil { - log.Error("Failed to edit template with %s: %s", editor, err) + log.Errorf("Failed to edit template with %s: %s", editor, err) if promptYN("edit again?", true) { continue } @@ -321,14 +321,14 @@ func (c *Cli) editTemplate(template string, tmpFilePrefix string, templateData m edited := make(map[string]interface{}) if fh, err := ioutil.ReadFile(tmpFileName); err != nil { - log.Error("Failed to read tmpfile %s: %s", tmpFileName, err) + log.Errorf("Failed to read tmpfile %s: %s", tmpFileName, err) if editing && promptYN("edit again?", true) { continue } return err } else { if err := yaml.Unmarshal(fh, &edited); err != nil { - log.Error("Failed to parse YAML: %s", err) + log.Errorf("Failed to parse YAML: %s", err) if editing && promptYN("edit again?", true) { continue } @@ -346,7 +346,7 @@ func (c *Cli) editTemplate(template string, tmpFilePrefix string, templateData m // you can add the "abort: true" flag to the document // and we will abort now if val, ok := edited["abort"].(bool); ok && val { - log.Info("abort flag found in template, quiting") + log.Infof("abort flag found in template, quiting") return fmt.Errorf("abort flag found in template, quiting") } @@ -356,7 +356,7 @@ func (c *Cli) editTemplate(template string, tmpFilePrefix string, templateData m for k := range f { if _, ok := mf.(map[string]interface{})[k]; !ok { err := fmt.Errorf("Field %s is not editable", k) - log.Error("%s", err) + log.Errorf("%s", err) if editing && promptYN("edit again?", true) { continue } @@ -372,7 +372,7 @@ func (c *Cli) editTemplate(template string, tmpFilePrefix string, templateData m } if err := templateProcessor(json); err != nil { - log.Error("%s", err) + log.Errorf("%s", err) if editing && promptYN("edit again?", true) { continue } @@ -418,7 +418,7 @@ func (c *Cli) FindIssues() (interface{}, error) { qbuff := bytes.NewBufferString("resolution = unresolved") if project, ok := c.opts["project"]; !ok { err := fmt.Errorf("Missing required arguments, either 'query' or 'project' are required") - log.Error("%s", err) + log.Errorf("%s", err) return nil, err } else { qbuff.WriteString(fmt.Sprintf(" AND project = '%s'", project)) diff --git a/commands.go b/commands.go index 77d2b91..30a15fd 100644 --- a/commands.go +++ b/commands.go @@ -24,22 +24,22 @@ func (c *Cli) CmdLogin() error { passwd := string(pwbytes) req.SetBasicAuth(user, passwd) - log.Info("%s %s", req.Method, req.URL.String()) + log.Infof("%s %s", req.Method, req.URL.String()) if resp, err := c.makeRequest(req); err != nil { return err } else { out, _ := httputil.DumpResponse(resp, true) - log.Debug("%s", out) + log.Debugf("%s", out) if resp.StatusCode == 403 { // probably got this, need to redirect the user to login manually // X-Authentication-Denied-Reason: CAPTCHA_CHALLENGE; login-url=https://jira/login.jsp if reason := resp.Header.Get("X-Authentication-Denied-Reason"); reason != "" { err := fmt.Errorf("Authenticaion Failed: %s", reason) - log.Error("%s", err) + log.Errorf("%s", err) return err } err := fmt.Errorf("Authentication Failed: Unknown Reason") - log.Error("%s", err) + log.Errorf("%s", err) return err } else if resp.StatusCode == 200 { @@ -60,7 +60,7 @@ func (c *Cli) CmdLogin() error { } func (c *Cli) CmdFields() error { - log.Debug("fields called") + log.Debugf("fields called") uri := fmt.Sprintf("%s/rest/api/2/field", c.endpoint) data, err := responseToJson(c.get(uri)) if err != nil { @@ -71,7 +71,7 @@ func (c *Cli) CmdFields() error { } func (c *Cli) CmdList() error { - log.Debug("list called") + log.Debugf("list called") if data, err := c.FindIssues(); err != nil { return err } else { @@ -80,7 +80,7 @@ func (c *Cli) CmdList() error { } func (c *Cli) CmdView(issue string) error { - log.Debug("view called") + log.Debugf("view called") c.Browse(issue) data, err := c.ViewIssue(issue) if err != nil { @@ -90,7 +90,7 @@ func (c *Cli) CmdView(issue string) error { } func (c *Cli) CmdEdit(issue string) error { - log.Debug("edit called") + log.Debugf("edit called") uri := fmt.Sprintf("%s/rest/api/2/issue/%s/editmeta", c.endpoint, issue) editmeta, err := responseToJson(c.get(uri)) @@ -115,8 +115,8 @@ func (c *Cli) CmdEdit(issue string) error { issueData, func(json string) error { if c.getOptBool("dryrun", false) { - log.Debug("PUT: %s", json) - log.Debug("Dryrun mode, skipping PUT") + log.Debugf("PUT: %s", json) + log.Debugf("Dryrun mode, skipping PUT") return nil } resp, err := c.put(uri, json) @@ -134,7 +134,7 @@ func (c *Cli) CmdEdit(issue string) error { logBuffer := bytes.NewBuffer(make([]byte, 0)) resp.Write(logBuffer) err := fmt.Errorf("Unexpected Response From PUT") - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } }, @@ -142,7 +142,7 @@ func (c *Cli) CmdEdit(issue string) error { } func (c *Cli) CmdEditMeta(issue string) error { - log.Debug("editMeta called") + log.Debugf("editMeta called") c.Browse(issue) uri := fmt.Sprintf("%s/rest/api/2/issue/%s/editmeta", c.endpoint, issue) data, err := responseToJson(c.get(uri)) @@ -154,7 +154,7 @@ func (c *Cli) CmdEditMeta(issue string) error { } func (c *Cli) CmdTransitionMeta(issue string) error { - log.Debug("tranisionMeta called") + log.Debugf("tranisionMeta called") c.Browse(issue) uri := fmt.Sprintf("%s/rest/api/2/issue/%s/transitions?expand=transitions.fields", c.endpoint, issue) data, err := responseToJson(c.get(uri)) @@ -167,7 +167,7 @@ func (c *Cli) CmdTransitionMeta(issue string) error { func (c *Cli) CmdIssueTypes() error { project := c.opts["project"].(string) - log.Debug("issueTypes called") + log.Debugf("issueTypes called") uri := fmt.Sprintf("%s/rest/api/2/issue/createmeta?projectKeys=%s", c.endpoint, project) data, err := responseToJson(c.get(uri)) if err != nil { @@ -181,7 +181,7 @@ func (c *Cli) CmdCreateMeta() error { project := c.opts["project"].(string) issuetype := c.getOptString("issuetype", "Bug") - log.Debug("createMeta called") + log.Debugf("createMeta called") uri := fmt.Sprintf("%s/rest/api/2/issue/createmeta?projectKeys=%s&issuetypeNames=%s&expand=projects.issuetypes.fields", c.endpoint, project, url.QueryEscape(issuetype)) data, err := responseToJson(c.get(uri)) if err != nil { @@ -191,7 +191,7 @@ func (c *Cli) CmdCreateMeta() error { if val, ok := data.(map[string]interface{})["projects"]; ok { if len(val.([]interface{})) == 0 { err = fmt.Errorf("Project '%s' or issuetype '%s' unknown. Unable to createmeta.", project, issuetype) - log.Error("%s", err) + log.Errorf("%s", err) return err } if val, ok = val.([]interface{})[0].(map[string]interface{})["issuetypes"]; ok { @@ -203,7 +203,7 @@ func (c *Cli) CmdCreateMeta() error { } func (c *Cli) CmdComponents(project string) error { - log.Debug("Components called") + log.Debugf("Components called") uri := fmt.Sprintf("%s/rest/api/2/project/%s/components", c.endpoint, project) data, err := responseToJson(c.get(uri)) if err != nil { @@ -213,7 +213,7 @@ func (c *Cli) CmdComponents(project string) error { } func (c *Cli) CmdTransitions(issue string) error { - log.Debug("Transitions called") + log.Debugf("Transitions called") c.Browse(issue) uri := fmt.Sprintf("%s/rest/api/2/issue/%s/transitions", c.endpoint, issue) data, err := responseToJson(c.get(uri)) @@ -226,7 +226,7 @@ func (c *Cli) CmdTransitions(issue string) error { func (c *Cli) CmdCreate() error { project := c.opts["project"].(string) issuetype := c.getOptString("issuetype", "Bug") - log.Debug("create called") + log.Debugf("create called") uri := fmt.Sprintf("%s/rest/api/2/issue/createmeta?projectKeys=%s&issuetypeNames=%s&expand=projects.issuetypes.fields", c.endpoint, project, url.QueryEscape(issuetype)) data, err := responseToJson(c.get(uri)) @@ -241,13 +241,13 @@ func (c *Cli) CmdCreate() error { if val, ok := data.(map[string]interface{})["projects"]; ok { if len(val.([]interface{})) == 0 { err = fmt.Errorf("Project '%s' or issuetype '%s' unknown. Unable to create issue.", project, issuetype) - log.Error("%s", err) + log.Errorf("%s", err) return err } if val, ok = val.([]interface{})[0].(map[string]interface{})["issuetypes"]; ok { if len(val.([]interface{})) == 0 { err = fmt.Errorf("Project '%s' does not support issuetype '%s'. Unable to create issue.", project, issuetype) - log.Error("%s", err) + log.Errorf("%s", err) return err } issueData["meta"] = val.([]interface{})[0] @@ -260,11 +260,11 @@ func (c *Cli) CmdCreate() error { fmt.Sprintf("create-%s-", sanitizedType), issueData, func(json string) error { - log.Debug("JSON: %s", json) + log.Debugf("JSON: %s", json) uri := fmt.Sprintf("%s/rest/api/2/issue", c.endpoint) if c.getOptBool("dryrun", false) { - log.Debug("POST: %s", json) - log.Debug("Dryrun mode, skipping POST") + log.Debugf("POST: %s", json) + log.Debugf("Dryrun mode, skipping POST") return nil } resp, err := c.post(uri, json) @@ -293,7 +293,7 @@ func (c *Cli) CmdCreate() error { logBuffer := bytes.NewBuffer(make([]byte, 0)) resp.Write(logBuffer) err := fmt.Errorf("Unexpected Response From POST") - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } }, @@ -302,7 +302,7 @@ func (c *Cli) CmdCreate() error { } func (c *Cli) CmdIssueLinkTypes() error { - log.Debug("Transitions called") + log.Debugf("Transitions called") uri := fmt.Sprintf("%s/rest/api/2/issueLinkType", c.endpoint) data, err := responseToJson(c.get(uri)) if err != nil { @@ -312,7 +312,7 @@ func (c *Cli) CmdIssueLinkTypes() error { } func (c *Cli) CmdBlocks(blocker string, issue string) error { - log.Debug("blocks called") + log.Debugf("blocks called") json, err := jsonEncode(map[string]interface{}{ "type": map[string]string{ @@ -331,8 +331,8 @@ func (c *Cli) CmdBlocks(blocker string, issue string) error { uri := fmt.Sprintf("%s/rest/api/2/issueLink", c.endpoint) if c.getOptBool("dryrun", false) { - log.Debug("POST: %s", json) - log.Debug("Dryrun mode, skipping POST") + log.Debugf("POST: %s", json) + log.Debugf("Dryrun mode, skipping POST") return nil } resp, err := c.post(uri, json) @@ -348,14 +348,14 @@ func (c *Cli) CmdBlocks(blocker string, issue string) error { logBuffer := bytes.NewBuffer(make([]byte, 0)) resp.Write(logBuffer) err := fmt.Errorf("Unexpected Response From POST") - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } return nil } func (c *Cli) CmdDups(duplicate string, issue string) error { - log.Debug("dups called") + log.Debugf("dups called") json, err := jsonEncode(map[string]interface{}{ "type": map[string]string{ @@ -374,8 +374,8 @@ func (c *Cli) CmdDups(duplicate string, issue string) error { uri := fmt.Sprintf("%s/rest/api/2/issueLink", c.endpoint) if c.getOptBool("dryrun", false) { - log.Debug("POST: %s", json) - log.Debug("Dryrun mode, skipping POST") + log.Debugf("POST: %s", json) + log.Debugf("Dryrun mode, skipping POST") return nil } resp, err := c.post(uri, json) @@ -391,14 +391,14 @@ func (c *Cli) CmdDups(duplicate string, issue string) error { logBuffer := bytes.NewBuffer(make([]byte, 0)) resp.Write(logBuffer) err := fmt.Errorf("Unexpected Response From POST") - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } return nil } func (c *Cli) CmdWatch(issue string, watcher string, remove bool) error { - log.Debug("watch called: watcher: %q, remove: %n", watcher, remove) + log.Debugf("watch called: watcher: %q, remove: %n", watcher, remove) var uri string json, err := jsonEncode(watcher) @@ -408,11 +408,11 @@ func (c *Cli) CmdWatch(issue string, watcher string, remove bool) error { if c.getOptBool("dryrun", false) { if !remove { - log.Debug("POST: %s", json) - log.Debug("Dryrun mode, skipping POST") + log.Debugf("POST: %s", json) + log.Debugf("Dryrun mode, skipping POST") } else { - log.Debug("DELETE: %s", watcher) - log.Debug("Dryrun mode, skipping POST") + log.Debugf("DELETE: %s", watcher) + log.Debugf("Dryrun mode, skipping POST") } return nil } @@ -441,23 +441,23 @@ func (c *Cli) CmdWatch(issue string, watcher string, remove bool) error { } else { err = fmt.Errorf("Unexpected Response From DELETE") } - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } return nil } func (c *Cli) CmdVote(issue string, up bool) error { - log.Debug("vote called, with up: %n", up) + log.Debugf("vote called, with up: %n", up) uri := fmt.Sprintf("%s/rest/api/2/issue/%s/votes", c.endpoint, issue) if c.getOptBool("dryrun", false) { if up { - log.Debug("POST: %s", "") - log.Debug("Dryrun mode, skipping POST") + log.Debugf("POST: %s", "") + log.Debugf("Dryrun mode, skipping POST") } else { - log.Debug("DELETE: %s", "") - log.Debug("Dryrun mode, skipping DELETE") + log.Debugf("DELETE: %s", "") + log.Debugf("Dryrun mode, skipping DELETE") } return nil } @@ -484,14 +484,14 @@ func (c *Cli) CmdVote(issue string, up bool) error { } else { err = fmt.Errorf("Unexpected Response From DELETE") } - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } return nil } func (c *Cli) CmdTransition(issue string, trans string) error { - log.Debug("transition called") + log.Debugf("transition called") uri := fmt.Sprintf("%s/rest/api/2/issue/%s/transitions?expand=transitions.fields", c.endpoint, issue) data, err := responseToJson(c.get(uri)) if err != nil { @@ -514,17 +514,17 @@ func (c *Cli) CmdTransition(issue string, trans string) error { } if transId == "" { err := fmt.Errorf("Invalid Transition '%s', Available: %s", trans, strings.Join(found, ", ")) - log.Error("%s", err) + log.Errorf("%s", err) return err } handlePost := func(json string) error { - log.Debug("POST: %s", json) + log.Debugf("POST: %s", json) // os.Exit(0) uri = fmt.Sprintf("%s/rest/api/2/issue/%s/transitions", c.endpoint, issue) if c.getOptBool("dryrun", false) { - log.Debug("POST: %s", json) - log.Debug("Dryrun mode, skipping POST") + log.Debugf("POST: %s", json) + log.Debugf("Dryrun mode, skipping POST") return nil } resp, err := c.post(uri, json) @@ -540,7 +540,7 @@ func (c *Cli) CmdTransition(issue string, trans string) error { logBuffer := bytes.NewBuffer(make([]byte, 0)) resp.Write(logBuffer) err := fmt.Errorf("Unexpected Response From POST") - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } return nil @@ -569,14 +569,14 @@ func (c *Cli) CmdTransition(issue string, trans string) error { } func (c *Cli) CmdComment(issue string) error { - log.Debug("comment called") + log.Debugf("comment called") handlePost := func(json string) error { - log.Debug("JSON: %s", json) + log.Debugf("JSON: %s", json) uri := fmt.Sprintf("%s/rest/api/2/issue/%s/comment", c.endpoint, issue) if c.getOptBool("dryrun", false) { - log.Debug("POST: %s", json) - log.Debug("Dryrun mode, skipping POST") + log.Debugf("POST: %s", json) + log.Debugf("Dryrun mode, skipping POST") return nil } resp, err := c.post(uri, json) @@ -594,7 +594,7 @@ func (c *Cli) CmdComment(issue string) error { logBuffer := bytes.NewBuffer(make([]byte, 0)) resp.Write(logBuffer) err := fmt.Errorf("Unexpected Response From POST") - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } } @@ -619,7 +619,7 @@ func (c *Cli) CmdComment(issue string) error { } func (c *Cli) CmdComponent(action string, project string, name string, desc string, lead string) error { - log.Debug("component called") + log.Debugf("component called") switch action { case "add": @@ -639,8 +639,8 @@ func (c *Cli) CmdComponent(action string, project string, name string, desc stri uri := fmt.Sprintf("%s/rest/api/2/component", c.endpoint) if c.getOptBool("dryrun", false) { - log.Debug("POST: %s", json) - log.Debug("Dryrun mode, skipping POST") + log.Debugf("POST: %s", json) + log.Debugf("Dryrun mode, skipping POST") return nil } resp, err := c.post(uri, json) @@ -655,25 +655,25 @@ func (c *Cli) CmdComponent(action string, project string, name string, desc stri logBuffer := bytes.NewBuffer(make([]byte, 0)) resp.Write(logBuffer) err := fmt.Errorf("Unexpected Response From POST") - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } return nil } func (c *Cli) CmdLabels(action string, issue string, labels []string) error { - log.Debug("label called") + log.Debugf("label called") if action != "add" && action != "remove" && action != "set" { return fmt.Errorf("action must be 'add', 'set' or 'remove': %q is invalid", action) } handlePut := func(json string) error { - log.Debug("JSON: %s", json) + log.Debugf("JSON: %s", json) uri := fmt.Sprintf("%s/rest/api/2/issue/%s", c.endpoint, issue) if c.getOptBool("dryrun", false) { - log.Debug("PUT: %s", json) - log.Debug("Dryrun mode, skipping POST") + log.Debugf("PUT: %s", json) + log.Debugf("Dryrun mode, skipping POST") return nil } resp, err := c.put(uri, json) @@ -691,7 +691,7 @@ func (c *Cli) CmdLabels(action string, issue string, labels []string) error { logBuffer := bytes.NewBuffer(make([]byte, 0)) resp.Write(logBuffer) err := fmt.Errorf("Unexpected Response From PUT") - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } } @@ -727,7 +727,7 @@ func (c *Cli) CmdLabels(action string, issue string, labels []string) error { } func (c *Cli) CmdAssign(issue string, user string) error { - log.Debug("assign called") + log.Debugf("assign called") json, err := jsonEncode(map[string]interface{}{ "name": user, @@ -738,8 +738,8 @@ func (c *Cli) CmdAssign(issue string, user string) error { uri := fmt.Sprintf("%s/rest/api/2/issue/%s/assignee", c.endpoint, issue) if c.getOptBool("dryrun", false) { - log.Debug("PUT: %s", json) - log.Debug("Dryrun mode, skipping PUT") + log.Debugf("PUT: %s", json) + log.Debugf("Dryrun mode, skipping PUT") return nil } resp, err := c.put(uri, json) @@ -755,7 +755,7 @@ func (c *Cli) CmdAssign(issue string, user string) error { logBuffer := bytes.NewBuffer(make([]byte, 0)) resp.Write(logBuffer) err := fmt.Errorf("Unexpected Response From PUT") - log.Error("%s:\n%s", err, logBuffer) + log.Errorf("%s:\n%s", err, logBuffer) return err } return nil @@ -777,11 +777,11 @@ func (c *Cli) CmdExportTemplates() error { continue } if fh, err := os.OpenFile(templateFile, os.O_WRONLY|os.O_CREATE, 0644); err != nil { - log.Error("Failed to open %s for writing: %s", templateFile, err) + log.Errorf("Failed to open %s for writing: %s", templateFile, err) return err } else { defer fh.Close() - log.Notice("Creating %s", templateFile) + log.Noticef("Creating %s", templateFile) fh.Write([]byte(template)) } } @@ -789,7 +789,7 @@ func (c *Cli) CmdExportTemplates() error { } func (c *Cli) CmdRequest(uri, content string) (err error) { - log.Debug("request called") + log.Debugf("request called") if !strings.HasPrefix(uri, "http") { uri = fmt.Sprintf("%s%s", c.endpoint, uri) diff --git a/main/main.go b/main/main.go index ec119e7..a90b1fd 100644 --- a/main/main.go +++ b/main/main.go @@ -5,8 +5,8 @@ import ( "fmt" "github.com/Netflix-Skunkworks/go-jira" "github.com/coryb/optigo" - "github.com/op/go-logging" "gopkg.in/coryb/yaml.v2" + "gopkg.in/op/go-logging.v1" "io/ioutil" "os" "os/exec" @@ -217,7 +217,7 @@ Command Options: }) if err := op.ProcessAll(os.Args[1:]); err != nil { - log.Error("%s", err) + log.Errorf("%s", err) usage(false) } args := op.Args @@ -258,36 +258,36 @@ Command Options: // apply defaults for k, v := range defaults { if _, ok := opts[k]; !ok { - log.Debug("Setting %q to %#v from defaults", k, v) + log.Debugf("Setting %q to %#v from defaults", k, v) opts[k] = v } } - log.Debug("opts: %v", opts) - log.Debug("args: %v", args) + log.Debugf("opts: %v", opts) + log.Debugf("args: %v", args) if _, ok := opts["endpoint"]; !ok { - log.Error("endpoint option required. Either use --endpoint or set a endpoint option in your ~/.jira.d/config.yml file") + log.Errorf("endpoint option required. Either use --endpoint or set a endpoint option in your ~/.jira.d/config.yml file") os.Exit(1) } c := jira.New(opts) - log.Debug("opts: %s", opts) + log.Debugf("opts: %s", opts) setEditing := func(dflt bool) { - log.Debug("Default Editing: %t", dflt) + log.Debugf("Default Editing: %t", dflt) if dflt { if val, ok := opts["noedit"].(bool); ok && val { - log.Debug("Setting edit = false") + log.Debugf("Setting edit = false") opts["edit"] = false } else { - log.Debug("Setting edit = true") + log.Debugf("Setting edit = true") opts["edit"] = true } } else { if _, ok := opts["edit"].(bool); !ok { - log.Debug("Setting edit = %t", dflt) + log.Debugf("Setting edit = %t", dflt) opts["edit"] = dflt } } @@ -295,7 +295,7 @@ Command Options: requireArgs := func(count int) { if len(args) < count { - log.Error("Not enough arguments. %d required, %d provided", count, len(args)) + log.Errorf("Not enough arguments. %d required, %d provided", count, len(args)) usage(false) } } @@ -446,12 +446,12 @@ Command Options: } err = c.CmdRequest(args[0], data) default: - log.Error("Unknown command %s", command) + log.Errorf("Unknown command %s", command) os.Exit(1) } if err != nil { - log.Error("%s", err) + log.Errorf("%s", err) os.Exit(1) } os.Exit(0) @@ -459,7 +459,7 @@ Command Options: func parseYaml(file string, opts map[string]interface{}) { if fh, err := ioutil.ReadFile(file); err == nil { - log.Debug("Found Config file: %s", file) + log.Debugf("Found Config file: %s", file) yaml.Unmarshal(fh, &opts) } } @@ -499,21 +499,21 @@ func loadConfigs(opts map[string]interface{}) { if stat.Mode()&0111 == 0 { parseYaml(file, tmp) } else { - log.Debug("Found Executable Config file: %s", file) + log.Debugf("Found Executable Config file: %s", file) // it is executable, so run it and try to parse the output cmd := exec.Command(file) stdout := bytes.NewBufferString("") cmd.Stdout = stdout cmd.Stderr = bytes.NewBufferString("") if err := cmd.Run(); err != nil { - log.Error("%s is exectuable, but it failed to execute: %s\n%s", file, err, cmd.Stderr) + log.Errorf("%s is exectuable, but it failed to execute: %s\n%s", file, err, cmd.Stderr) os.Exit(1) } yaml.Unmarshal(stdout.Bytes(), &tmp) } for k, v := range tmp { if _, ok := opts[k]; !ok { - log.Debug("Setting %q to %#v from %s", k, v, file) + log.Debugf("Setting %q to %#v from %s", k, v, file) opts[k] = v } } diff --git a/util.go b/util.go index 382e4c7..a42129a 100644 --- a/util.go +++ b/util.go @@ -58,7 +58,7 @@ func readFile(file string) string { var bytes []byte var err error if bytes, err = ioutil.ReadFile(file); err != nil { - log.Error("Failed to read file %s: %s", file, err) + log.Errorf("Failed to read file %s: %s", file, err) os.Exit(1) } return string(bytes) @@ -195,11 +195,11 @@ func runTemplate(templateContent string, data interface{}, out io.Writer) error }, } if tmpl, err := template.New("template").Funcs(funcs).Parse(templateContent); err != nil { - log.Error("Failed to parse template: %s", err) + log.Errorf("Failed to parse template: %s", err) return err } else { if err := tmpl.Execute(out, data); err != nil { - log.Error("Failed to execute template: %s", err) + log.Errorf("Failed to execute template: %s", err) return err } } @@ -215,7 +215,7 @@ func responseToJson(resp *http.Response, err error) (interface{}, error) { if resp.StatusCode == 400 { if val, ok := data.(map[string]interface{})["errorMessages"]; ok { for _, errMsg := range val.([]interface{}) { - log.Error("%s", errMsg) + log.Errorf("%s", errMsg) } } } @@ -228,7 +228,7 @@ func jsonDecode(io io.Reader) interface{} { var data interface{} err = json.Unmarshal(content, &data) if err != nil { - log.Error("JSON Parse Error: %s from %s", err, content) + log.Errorf("JSON Parse Error: %s from %s", err, content) } return data } @@ -239,7 +239,7 @@ func jsonEncode(data interface{}) (string, error) { err := enc.Encode(data) if err != nil { - log.Error("Failed to encode data %s: %s", data, err) + log.Errorf("Failed to encode data %s: %s", data, err) return "", err } return buffer.String(), nil @@ -249,7 +249,7 @@ func jsonWrite(file string, data interface{}) { fh, err := os.OpenFile(file, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0600) defer fh.Close() if err != nil { - log.Error("Failed to open %s: %s", file, err) + log.Errorf("Failed to open %s: %s", file, err) os.Exit(1) } enc := json.NewEncoder(fh) @@ -260,11 +260,11 @@ func yamlWrite(file string, data interface{}) { fh, err := os.OpenFile(file, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0600) defer fh.Close() if err != nil { - log.Error("Failed to open %s: %s", file, err) + log.Errorf("Failed to open %s: %s", file, err) os.Exit(1) } if out, err := yaml.Marshal(data); err != nil { - log.Error("Failed to marshal yaml %v: %s", data, err) + log.Errorf("Failed to marshal yaml %v: %s", data, err) os.Exit(1) } else { fh.Write(out) @@ -306,7 +306,7 @@ func yamlFixup(data interface{}) (interface{}, error) { } default: err := fmt.Errorf("YAML: key %s is type '%T', require 'string'", key, k) - log.Error("%s", err) + log.Errorf("%s", err) return nil, err } } @@ -343,16 +343,16 @@ func yamlFixup(data interface{}) (interface{}, error) { func mkdir(dir string) error { if stat, err := os.Stat(dir); err != nil && !os.IsNotExist(err) { - log.Error("Failed to stat %s: %s", dir, err) + log.Errorf("Failed to stat %s: %s", dir, err) return err } else if err == nil && !stat.IsDir() { err := fmt.Errorf("%s exists and is not a directory!", dir) - log.Error("%s", err) + log.Errorf("%s", err) return err } else { // dir does not exist, so try to create it if err := os.MkdirAll(dir, 0755); err != nil { - log.Error("Failed to mkdir -p %s: %s", dir, err) + log.Errorf("Failed to mkdir -p %s: %s", dir, err) return err } }