From 4a50cc4eb6b7e14ff25e77ab8360fd5a919b57fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?zhaohaifeng=20=5B=E8=B5=B5=E6=B5=B7=E9=94=8B=5D?= Date: Thu, 3 Aug 2017 17:57:24 +0800 Subject: [PATCH] add UpdateIssue method for jira 7.4.0 --- issue.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/issue.go b/issue.go index e5113fe..8015627 100644 --- a/issue.go +++ b/issue.go @@ -608,6 +608,27 @@ func (s *IssueService) Update(issue *Issue) (*Issue, *Response, error) { return &ret, resp, nil } +// Update updates an issue from a JSON representation. The issue is found by key. +// +// https://docs.atlassian.com/jira/REST/7.4.0/#api/2/issue-editIssue +func (s *IssueService) UpdateIssue(jiraId string, data map[string]interface{}) (*Response, error) { + apiEndpoint := fmt.Sprintf("rest/api/2/issue/%v", jiraId) + req, err := s.client.NewRequest("PUT", apiEndpoint, data) + fmt.Println(apiEndpoint, req, err) + if err != nil { + return nil, err + } + resp, err := s.client.Do(req, nil) + fmt.Println(resp, err) + if err != nil { + return resp, err + } + + // This is just to follow the rest of the API's convention of returning an issue. + // Returning the same pointer here is pointless, so we return a copy instead. + return resp, nil +} + // AddComment adds a new comment to issueID. // // JIRA API docs: https://docs.atlassian.com/jira/REST/latest/#api/2/issue-addComment