mirror of
https://github.com/Threnklyn/jira.git
synced 2026-06-04 20:19:11 +02:00
tweak getTemplate routine
This commit is contained in:
+12
-3
@@ -13,6 +13,7 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
"runtime"
|
"runtime"
|
||||||
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -169,7 +170,7 @@ func (c *Cli) makeRequest(req *http.Request) (resp *http.Response, err error) {
|
|||||||
return resp, nil
|
return resp, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) getTemplate(path string, dflt string) string {
|
func (c *Cli) getTemplate(name string) string {
|
||||||
if override, ok := c.opts["template"]; ok {
|
if override, ok := c.opts["template"]; ok {
|
||||||
if _, err := os.Stat(override); err == nil {
|
if _, err := os.Stat(override); err == nil {
|
||||||
return readFile(override)
|
return readFile(override)
|
||||||
@@ -177,10 +178,18 @@ func (c *Cli) getTemplate(path string, dflt string) string {
|
|||||||
if file, err := FindClosestParentPath(fmt.Sprintf(".jira.d/templates/%s", override)); err == nil {
|
if file, err := FindClosestParentPath(fmt.Sprintf(".jira.d/templates/%s", override)); err == nil {
|
||||||
return readFile(file)
|
return readFile(file)
|
||||||
}
|
}
|
||||||
|
if dflt, ok := all_templates[override]; ok {
|
||||||
|
return dflt
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if file, err := FindClosestParentPath(path); err != nil {
|
if file, err := FindClosestParentPath(fmt.Sprintf(".jira.d/templates/%s", name)); err != nil {
|
||||||
return dflt
|
// create-bug etc are special, if we dont find it in the path
|
||||||
|
// then just return a generic create template
|
||||||
|
if strings.HasPrefix(name, "create-") {
|
||||||
|
return all_templates["create"]
|
||||||
|
}
|
||||||
|
return all_templates[name]
|
||||||
} else {
|
} else {
|
||||||
return readFile(file)
|
return readFile(file)
|
||||||
}
|
}
|
||||||
|
|||||||
+12
-12
@@ -52,7 +52,7 @@ func (c *Cli) CmdFields() error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return runTemplate(c.getTemplate(".jira.d/templates/fields", default_fields_template), data, nil)
|
return runTemplate(c.getTemplate("fields"), data, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) CmdList() error {
|
func (c *Cli) CmdList() error {
|
||||||
@@ -100,7 +100,7 @@ func (c *Cli) CmdList() error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return runTemplate(c.getTemplate(".jira.d/templates/list", default_list_template), data, nil)
|
return runTemplate(c.getTemplate("list"), data, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) CmdView(issue string) error {
|
func (c *Cli) CmdView(issue string) error {
|
||||||
@@ -111,7 +111,7 @@ func (c *Cli) CmdView(issue string) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return runTemplate(c.getTemplate(".jira.d/templates/view", default_view_template), data, nil)
|
return runTemplate(c.getTemplate("view"), data, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) CmdEdit(issue string) error {
|
func (c *Cli) CmdEdit(issue string) error {
|
||||||
@@ -135,7 +135,7 @@ func (c *Cli) CmdEdit(issue string) error {
|
|||||||
issueData["overrides"] = c.opts
|
issueData["overrides"] = c.opts
|
||||||
|
|
||||||
return c.editTemplate(
|
return c.editTemplate(
|
||||||
c.getTemplate(".jira.d/templates/edit", default_edit_template),
|
c.getTemplate("edit"),
|
||||||
fmt.Sprintf("%s-edit-", issue),
|
fmt.Sprintf("%s-edit-", issue),
|
||||||
issueData,
|
issueData,
|
||||||
func(json string) error {
|
func(json string) error {
|
||||||
@@ -166,7 +166,7 @@ func (c *Cli) CmdEditMeta(issue string) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return runTemplate(c.getTemplate(".jira.d/templates/editmeta", default_fields_template), data, nil)
|
return runTemplate(c.getTemplate("editmeta"), data, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) CmdTransitionMeta(issue string) error {
|
func (c *Cli) CmdTransitionMeta(issue string) error {
|
||||||
@@ -177,7 +177,7 @@ func (c *Cli) CmdTransitionMeta(issue string) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return runTemplate(c.getTemplate(".jira.d/templates/transmeta", default_fields_template), data, nil)
|
return runTemplate(c.getTemplate("transmeta"), data, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) CmdIssueTypes(project string) error {
|
func (c *Cli) CmdIssueTypes(project string) error {
|
||||||
@@ -188,7 +188,7 @@ func (c *Cli) CmdIssueTypes(project string) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return runTemplate(c.getTemplate(".jira.d/templates/issuetypes", default_issuetypes_template), data, nil)
|
return runTemplate(c.getTemplate("issuetypes"), data, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) CmdCreateMeta(project string, issuetype string) error {
|
func (c *Cli) CmdCreateMeta(project string, issuetype string) error {
|
||||||
@@ -205,7 +205,7 @@ func (c *Cli) CmdCreateMeta(project string, issuetype string) error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return runTemplate(c.getTemplate(".jira.d/templates/createmeta", default_fields_template), data, nil)
|
return runTemplate(c.getTemplate("createmeta"), data, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) CmdTransitions(issue string) error {
|
func (c *Cli) CmdTransitions(issue string) error {
|
||||||
@@ -215,7 +215,7 @@ func (c *Cli) CmdTransitions(issue string) error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
return runTemplate(c.getTemplate(".jira.d/templates/transitions", default_transitions_template), data, nil)
|
return runTemplate(c.getTemplate("transitions"), data, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) CmdCreate(project string, issuetype string) error {
|
func (c *Cli) CmdCreate(project string, issuetype string) error {
|
||||||
@@ -238,7 +238,7 @@ func (c *Cli) CmdCreate(project string, issuetype string) error {
|
|||||||
|
|
||||||
sanitizedType := strings.ToLower(strings.Replace(issuetype, " ", "", -1))
|
sanitizedType := strings.ToLower(strings.Replace(issuetype, " ", "", -1))
|
||||||
return c.editTemplate(
|
return c.editTemplate(
|
||||||
c.getTemplate(fmt.Sprintf(".jira.d/templates/create-%s", sanitizedType), default_create_template),
|
c.getTemplate(fmt.Sprintf("create-%s", sanitizedType)),
|
||||||
fmt.Sprintf("create-%s-", sanitizedType),
|
fmt.Sprintf("create-%s-", sanitizedType),
|
||||||
issueData,
|
issueData,
|
||||||
func(json string) error {
|
func(json string) error {
|
||||||
@@ -277,7 +277,7 @@ func (c *Cli) CmdIssueLinkTypes() error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
return runTemplate(c.getTemplate(".jira.d/templates/issuelinktypes", default_fields_template), data, nil)
|
return runTemplate(c.getTemplate("issuelinktypes"), data, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Cli) CmdBlocks(blocker string, issue string) error {
|
func (c *Cli) CmdBlocks(blocker string, issue string) error {
|
||||||
@@ -473,7 +473,7 @@ func (c *Cli) CmdComment(issue string) error {
|
|||||||
return handlePost(json)
|
return handlePost(json)
|
||||||
} else {
|
} else {
|
||||||
return c.editTemplate(
|
return c.editTemplate(
|
||||||
c.getTemplate(".jira.d/templates/comment", default_comment_template),
|
c.getTemplate("comment"),
|
||||||
fmt.Sprintf("%s-create-", issue),
|
fmt.Sprintf("%s-create-", issue),
|
||||||
map[string]interface{}{},
|
map[string]interface{}{},
|
||||||
handlePost,
|
handlePost,
|
||||||
|
|||||||
+14
-9
@@ -1,17 +1,22 @@
|
|||||||
package cli
|
package cli
|
||||||
|
|
||||||
var all_templates = map[string]string{
|
var all_templates = map[string]string{
|
||||||
"fields": default_fields_template,
|
"debug": default_debug_template,
|
||||||
"list": default_list_template,
|
"fields": default_debug_template,
|
||||||
"view": default_view_template,
|
"editmeta": default_debug_template,
|
||||||
"edit": default_edit_template,
|
"transmeta": default_debug_template,
|
||||||
"transitions": default_transitions_template,
|
"createmeta": default_debug_template,
|
||||||
"issuetypes": default_issuetypes_template,
|
"issuelinktypes": default_debug_template,
|
||||||
"create": default_create_template,
|
"list": default_list_template,
|
||||||
"comment": default_comment_template,
|
"view": default_view_template,
|
||||||
|
"edit": default_edit_template,
|
||||||
|
"transitions": default_transitions_template,
|
||||||
|
"issuetypes": default_issuetypes_template,
|
||||||
|
"create": default_create_template,
|
||||||
|
"comment": default_comment_template,
|
||||||
}
|
}
|
||||||
|
|
||||||
const default_fields_template = "{{ . | toJson}}\n"
|
const default_debug_template = "{{ . | toJson}}\n"
|
||||||
|
|
||||||
const default_list_template = "{{ range .issues }}{{ .key | append \":\" | printf \"%-12s\"}} {{ .fields.summary }}\n{{ end }}"
|
const default_list_template = "{{ range .issues }}{{ .key | append \":\" | printf \"%-12s\"}} {{ .fields.summary }}\n{{ end }}"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user