如何使用ruby-jira Gem创建远程JIRA问题

时间:2013-09-10 17:05:59

标签: ruby-on-rails ruby jira jira-rest-api

我正在尝试使用jira-ruby Gem与具有5.x REST API的远程JIRA服务器连接。

访问服务器上的数据效果很好,但似乎我无法远程创建新的JIRA问题。 Gem的文档很少,并且没有提供示例。

有人可以提供一个有效的例子:

  • 如何使用ruby-jira
  • 创建远程JIRA问题
  • 如何将文件附加到现有问题

1 个答案:

答案 0 :(得分:6)

要创建新的JIRA问题,请使用:

<强> CODE:

issue = client.Issue.build
issue.save({"fields"=>{"summary"=>"blarg from in example.rb","project"=>{"id"=>"10001"},"issuetype"=>{"id"=>"3"}}})
issue.fetch
pp issue

或者

您可以尝试REST API来创建JIRA问题。

使用ID

第一个示例通过指定项目ID和问题类型ID来创建问题。 请求

curl -D- -u fred:fred -X POST --data {see below} -H "Content-Type: application/json" http://localhost:8090/rest/api/2/issue/

数据

这是JSON:

{
    "fields": {
       "project":
       {
          "id": "10110"
       },
       "summary": "No REST for the Wicked.",
       "description": "Creating of an issue using ids for projects and issue types using the REST API",
       "issuetype": {
          "id": "1"
       }
   }
}

<强>响应

响应提供问题ID,问题密钥和问题的URL(然后可用于获取其他数据,PUT更新等)。

{
   "id":"39001",
   "key":"TEST-102",
    "self":"http://localhost:8090/rest/api/2/issue/TEST-102"
}

使用项目键和字段名称

或者,您可以通过指定项目键和字段名称来创建问题。 请求

curl -D- -u fred:fred -X POST --data {see below} -H "Content-Type: application/json" http://localhost:8090/rest/api/2/issue/

数据

{
    "fields": {
       "project":
       {
          "key": "TEST"
       },
       "summary": "REST ye merry gentlemen.",
       "description": "Creating of an issue using project keys and issue type names using the REST API",
       "issuetype": {
          "name": "Bug"
       }
   }
}

<强>响应

{
   "id":"39000",
   "key":"TEST-101",
    "self":"http://localhost:8090/rest/api/2/issue/TEST-101"
}

来源:https://developer.atlassian.com/display/JIRADEV/JIRA+REST+APIs