1
0
mirror of https://github.com/interviewstreet/go-jira.git synced 2025-02-03 13:11:49 +02:00

Merge pull request #358 from manuelbcd/new-example-create-with-custom-fields

Added example "Create with custom fields"
This commit is contained in:
Benji Vesterby 2021-03-04 06:07:09 -05:00 committed by GitHub
commit 0779eb292a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 75 additions and 0 deletions

View File

@ -0,0 +1,74 @@
package main
import (
"bufio"
"fmt"
"os"
"strings"
"syscall"
jira "github.com/andygrunwald/go-jira"
"github.com/trivago/tgo/tcontainer"
"golang.org/x/term"
)
func main() {
r := bufio.NewReader(os.Stdin)
fmt.Print("Jira URL: ")
jiraURL, _ := r.ReadString('\n')
fmt.Print("Jira Username: ")
username, _ := r.ReadString('\n')
fmt.Print("Jira Password: ")
bytePassword, _ := term.ReadPassword(int(syscall.Stdin))
password := string(bytePassword)
fmt.Print("Custom field name (i.e. customfield_10220): ")
customFieldName, _ := r.ReadString('\n')
fmt.Print("Custom field value: ")
customFieldValue, _ := r.ReadString('\n')
tp := jira.BasicAuthTransport{
Username: strings.TrimSpace(username),
Password: strings.TrimSpace(password),
}
client, err := jira.NewClient(tp.Client(), strings.TrimSpace(jiraURL))
if err != nil {
fmt.Printf("\nerror: %v\n", err)
os.Exit(1)
}
unknowns := tcontainer.NewMarshalMap()
unknowns[customFieldName] = customFieldValue
i := jira.Issue{
Fields: &jira.IssueFields{
Assignee: &jira.User{
Name: "myuser",
},
Reporter: &jira.User{
Name: "youruser",
},
Description: "Test Issue",
Type: jira.IssueType{
Name: "Bug",
},
Project: jira.Project{
Key: "PROJ1",
},
Summary: "Just a demo issue",
Unknowns: unknowns,
},
}
issue, _, err := client.Issue.Create(&i)
if err != nil {
panic(err)
}
fmt.Printf("%s: %v\n", issue.Key, issue.Self)
}

1
go.mod
View File

@ -10,4 +10,5 @@ require (
github.com/pkg/errors v0.9.1
github.com/trivago/tgo v1.0.7
golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d
)