2016-03-24 12 views
0

Ich habe versucht, den Status des Jira-Tickets mit jira-ruby gem zu ändern. Ich habe this topic gelesen und versucht, diesen Code zu verwenden:Ändere den Status des Jira-Tickets mit jira-ruby

require 'jira' 
require '../lib/credentials' 

options = { 
    :username => $user_jira, 
    :password => $pwd_jira, 
    :site  => "https://example.atlassian.net", 
    :context_path => '', 
    :auth_type => :basic 
} 

client = JIRA::Client.new(options) 
issue = client.Issue.find("AA-1495") 
available_transitions = client.Transition.all(:issue => issue) 
available_transitions.each {|ea| puts "#{ea.name} (id #{ea.id})" } 

Und ich habe leere Ausgabe. Dann habe ich transition.rb in jira-ruby gem geöffnet und die

der Methode "self.all" hinzugefügt. Dann habe ich wieder lief mein erstes Skript und bekam diese Ausgabe:

"https://example.atlassian.net/rest/api/2/issue/16206/transitions" 
"{\"expand\":\"transitions\",\"transitions\":[]}" 
[Finished in 2.7s] 

Wenn ich versuche, Link zu öffnen von der ersten Zeile der Ausgabe in meinem Browser, erhalte ich gültig JSON mit allen verfügbaren Übergängen für mein jira Ticket. Also Link ist in Ordnung Wie ich aus der zweiten Zeile der Ausgabe verstehe, ist Jira Antwort auf Skript fast leer.

Jemand hatte dieses Problem?

Antwort

0

Zunächst müssen Sie das Objekt Jira Übergang erhalten Sie durch seinen Namen bei der Suche:

 
jira_transition = issue.transitions.find{|jt| jt.name = "transition_name_you_need"} 

dann, den Bau eines neuen Übergangs zu tun und sparen:

 
transition_to_do = issue.transitions.build` 
transition_to_do.save!("transition" => {"id" => jira_transition.id}) 

Und das ist alles;

)

Hoffe, es hilft

+1

Bitte überprüfen sie diese [URL] (http://stackoverflow.com/help) es sinnvoll sein zu heben yo die Qualität des Inhalts –