github.com/echohead/hub@v2.2.1+incompatible/commands/release_tpl.go (about)

     1  package commands
     2  
     3  import (
     4  	"bytes"
     5  	"text/template"
     6  )
     7  
     8  const releaseTmpl = `{{.CS}} Creating release {{.TagName}} for {{.ProjectName}} from {{.BranchName}}
     9  {{.CS}}
    10  {{.CS}} Write a message for this release. The first block
    11  {{.CS}} of text is the title and the rest is description.`
    12  
    13  type releaseMsg struct {
    14  	CS          string
    15  	TagName     string
    16  	ProjectName string
    17  	BranchName  string
    18  }
    19  
    20  func renderReleaseTpl(cs, tagName, projectName, branchName string) (string, error) {
    21  	t, err := template.New("releaseTmpl").Parse(releaseTmpl)
    22  	if err != nil {
    23  		return "", err
    24  	}
    25  
    26  	msg := &releaseMsg{
    27  		CS:          cs,
    28  		TagName:     tagName,
    29  		ProjectName: projectName,
    30  		BranchName:  branchName,
    31  	}
    32  
    33  	var b bytes.Buffer
    34  	err = t.Execute(&b, msg)
    35  
    36  	return b.String(), err
    37  }