Add get-jira-ticket command

This commit is contained in:
Miguel de la Cruz 2020-03-01 13:02:52 +01:00
parent 5d727b8995
commit 0ae0c6ffdf
4 changed files with 72 additions and 13 deletions

View file

@ -19,6 +19,7 @@ func StandaloneCmd() *cobra.Command {
cmd.AddCommand(
CreateJiraTicketStandaloneCmd(),
GetJiraTicketStandaloneCmd(),
)
return cmd
@ -49,6 +50,22 @@ func CreateJiraTicketStandaloneCmd() *cobra.Command {
return cmd
}
func GetJiraTicketStandaloneCmd() *cobra.Command {
cmd := &cobra.Command{
Use: "get-jira-ticket",
Short: "Gets the ticket from jira",
Args: cobra.ExactArgs(1),
Run: getJiraTicketStandaloneCmdF,
}
cmd.Flags().String("username", "", "the jira username")
_ = cmd.MarkFlagRequired("username")
cmd.Flags().String("token", "", "the jira token")
_ = cmd.MarkFlagRequired("token")
return cmd
}
func getVarMap(vars []string) (map[string]string, error) {
varMap := map[string]string{}
for _, v := range vars {
@ -99,7 +116,7 @@ func createJiraTicketStandaloneCmdF(cmd *cobra.Command, _ []string) error {
jiraClient := jira.NewClient(username, token)
ticketKey, err := jiraClient.CreateTicket(epicId, team, summary, description)
ticketKey, err := jiraClient.CreateIssue(epicId, team, summary, description)
if err != nil {
ErrorAndExit(cmd, err)
}
@ -107,3 +124,17 @@ func createJiraTicketStandaloneCmdF(cmd *cobra.Command, _ []string) error {
cmd.Printf("Ticket %s successfully created in JIRA", ticketKey)
return nil
}
func getJiraTicketStandaloneCmdF(cmd *cobra.Command, args []string) {
username, _ := cmd.Flags().GetString("username")
token, _ := cmd.Flags().GetString("token")
jiraClient := jira.NewClient(username, token)
issue, err := jiraClient.GetIssue(args[0])
if err != nil {
ErrorAndExit(cmd, err)
}
fmt.Printf("Key: %s\nStatus: %s\n", issue.Key, issue.Fields.Status.Name)
}

View file

@ -7,6 +7,6 @@ import (
)
func ErrorAndExit(cmd *cobra.Command, err error) {
cmd.PrintErrln(err)
cmd.PrintErrln("ERROR: " + err.Error())
os.Exit(1)
}