如何使用 jira-ruby gem 将转换更改为 ruby 中的问题?
Posted
技术标签:
【中文标题】如何使用 jira-ruby gem 将转换更改为 ruby 中的问题?【英文标题】:How to change transitions to a issue in ruby, using jira-ruby gem? 【发布时间】:2014-06-09 08:44:14 【问题描述】:我正在尝试使用 Jira-ruby gem (https://rubygems.org/gems/jira-ruby) 在 ruby 中访问 jira,但我找不到如何更改转换。 我只能使用 REST-api 更改它吗?
有一个Transition类(http://rubydoc.info/gems/jira-ruby/0.1.8/JIRA/Resource/Transition),但我不知道如何处理。
【问题讨论】:
【参考方案1】:REST API docs 表示您 POST 到 /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)"
现在您有了可能的转换的名称和 ID。存储您要进行的转换的 id。然后使用它为问题保存新的过渡:
transition_id = ...
transition = issue.transitions.build
transition.save!("transition" => "id" => transition_id)
我不得不检查文档几次以了解预期的有效负载是用于 POST 转换调用,然后使用 Ruby 客户端语法来获取该有效负载。使用net-http-spy 之类的工具更容易。
【讨论】:
感谢您的精彩帖子!它就像我正在寻找的魅力一样。糟糕的是,Jira 本身并没有提供发现。以上是关于如何使用 jira-ruby gem 将转换更改为 ruby 中的问题?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 fetchRequest 更改为要在 UITableView 中使用的数组