如何使用jira-ruby gem将转换更改为ruby中的问题?

edw*_*ise 4 ruby jira jira-rest-api

我正试图用Jira-ruby gem(https://rubygems.org/gems/jira-ruby)访问红宝石中的jira ,但我找不到如何更改过渡.我只能使用REST-api更改它?

有一个Transition类(http://rubydoc.info/gems/jira-ruby/0.1.8/JIRA/Resource/Transition),但我不知道如何处理它.

Rya*_*yan 7

REST API文档说,您发布到/issue/{issueIdOrKey}/transitions从一个状态转变的一个问题到另一个.

首先获取问题的可用转换:

client = JIRA::Client.new( ... )
issue = client.Issue.find("PROJECT-123")
available_transitions = client.Transition.all(:issue => issue)
available_transitions.each {|ea| puts "#{ea.name} (id #{ea.id})" }
Run Code Online (Sandbox Code Playgroud)

现在您有可能转换的名称和ID.存储您要进行的转换的ID.然后使用它来保存问题的新转换:

transition_id = ...
transition = issue.transitions.build
transition.save!("transition" => {"id" => transition_id})
Run Code Online (Sandbox Code Playgroud)

我必须多次检查文档以了解POST转换调用的预期有效负载,然后调整Ruby客户端语法以获取该有效负载.使用像net-http-spy这样的工具可以更轻松.