Jira:通过API添加新的发布版本

时间:2016-06-25 00:11:36

标签: jira jira-rest-api

我们正在尝试在发布过程中自动完成此任务,以便我们的脚本在Jira中添加新发布的版本。然后,它将遍历此版本中已“发布”的jira问题列表,并使用我们刚添加的发行版本标记它们。

我似乎找不到在Jira中添加新发布版本的任何示例[Project>发布]通过REST API。

您能否分享一下您的处理方式?

2 个答案:

答案 0 :(得分:2)

可能是这样的:

  • 创建新版本:POST /version

    • 您还必须指定版本所属的项目

    • 这也会使版本显示在项目 - >发布页面

  • 搜索已修复的问题,以便您拥有问题密钥:POST /search

    • 您可以通过其他方式获取此列表,即。来自您的版本控制系统
  • 使用新版本更新 fixVersion 这些问题:/PUT issue/{issueIdOrKey}

  • 发布您的版本:PUT /version/{id}

    • 在您的请求正文中指定 releaseDate 并将已发布设置为 true

答案 1 :(得分:1)

使用带有httparty的ruby通过Jira API代码段添加新发布的版本。

 require 'httparty'

 def self.create_version(version)
    create_version_url = "https://jira2.server.com/rest/api/2/version"

    @result = HTTParty.post(create_version_url,
       :basic_auth => {:username => 'user', :password => 'password'},
       :body => { :description => '',
                  :name => version,
                  :archived => false,
                  :released => true,
                  #:releaseDate => "2016-07-06",
                  :userReleaseDate => "6/Jul/2017",
                  :project => "project_name",
                  :projectId => "10102"
                }.to_json,
       :headers => { 'Content-Type' => 'application/json' })
   puts @result
 end

设置固定版本的jira问题:

def self.set_issue_fixedVersion(ticket,fixedVersion)       
   edit_issue_url = "https://jira2.<server>.com/rest/api/2/issue/#{ticket}"

   @result = HTTParty.put(edit_issue_url,
   :basic_auth => {:username => 'user', :password => 'password'},
   :body => { "fields" => { "fixVersions"=> [{"name" => #{fixedVersion}}]}}.to_json,
   :headers => { 'Content-Type' => 'application/json' })
   puts @result
end