-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsavon_rally_example.rb
45 lines (33 loc) · 1.11 KB
/
savon_rally_example.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
require 'savon'
require 'pp'
#ENV['http_proxy'] = "http://127.0.0.1:8888"
Savon.configure do |config|
config.log = true
end
HTTPI.log = true
client = Savon::Client.new do
http.auth.basic "yeti@rallydev.com","RallyDev"
http.auth.ssl.verify_mode = :none
wsdl.document = "https://trial.rallydev.com/slm/webservice/1.22/meta/1148554124/rally.wsdl"
end
#pp client.wsdl.soap_actions
#response = client.request :get_current_user
#object = response.to_hash[:get_current_user_response][:get_current_user_return]
#puts "#{object[:user_name]} (#{object[:email_address]})"
query_response = client.request :query_original_request do
soap.body = {
:workspace => nil,
:artifact_type => 'Defect',
:query => '(State = "Open")',
:order => nil,
:fetch => true,
:start => 1,
:pagesize => 100
}
end
query_result_hash = query_response.to_hash[:query_response][:query_return]
puts "Total defects found: #{query_result_hash[:total_result_count]}"
puts "-------------------"
query_result_hash[:results][:object].each do |defect|
puts "#{defect[:name]} --- #{defect[:formatted_id]} --- #{defect[:object_id]}"
end