Class: WTBuildHelpers::JIRA::JiraInfo
- Inherits:
-
Object
- Object
- WTBuildHelpers::JIRA::JiraInfo
- Defined in:
- lib/jira.rb
Instance Attribute Summary collapse
-
#build_complete_transition_id ⇒ Object
readonly
Returns the value of attribute build_complete_transition_id.
-
#client ⇒ Object
readonly
Returns the value of attribute client.
-
#fixed_in_build_field_id ⇒ Object
readonly
Returns the value of attribute fixed_in_build_field_id.
Instance Method Summary collapse
-
#initialize(site, username, password) ⇒ JiraInfo
constructor
A new instance of JiraInfo.
- #update_build_complete_transition(issue_key) ⇒ Object
- #update_fixed_in_build ⇒ Object
Constructor Details
#initialize(site, username, password) ⇒ JiraInfo
Returns a new instance of JiraInfo.
22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/jira.rb', line 22 def initialize(site, username, password) @site = site @username = username @password = password auth_token = Base64.strict_encode64("#{username}:#{password}") base_url = File.join(site, '/rest/api/2') headers = { "Authorization" => "Basic #{auth_token}", "Content-Type" => "application/json", } @client = RestClient::Resource.new(base_url, :headers => headers) end |
Instance Attribute Details
#build_complete_transition_id ⇒ Object (readonly)
Returns the value of attribute build_complete_transition_id.
18 19 20 |
# File 'lib/jira.rb', line 18 def build_complete_transition_id @build_complete_transition_id end |
#client ⇒ Object (readonly)
Returns the value of attribute client.
20 21 22 |
# File 'lib/jira.rb', line 20 def client @client end |
#fixed_in_build_field_id ⇒ Object (readonly)
Returns the value of attribute fixed_in_build_field_id.
17 18 19 |
# File 'lib/jira.rb', line 17 def fixed_in_build_field_id @fixed_in_build_field_id end |
Instance Method Details
#update_build_complete_transition(issue_key) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/jira.rb', line 54 def update_build_complete_transition(issue_key) begin fields_resource = "issue/#{issue_key}/transitions" response = @client[fields_resource].get response_json = JSON.parse(response.body) transitions = response_json["transitions"] build_complete_transition = transitions.find do |transition| transition["name"] == "Build Complete" end if build_complete_transition @build_complete_transition_id = build_complete_transition["id"] end rescue RestClient::Exception => e puts "Error code #{e.response.code} attempting to find Build Complete transition" end end |
#update_fixed_in_build ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/jira.rb', line 34 def update_fixed_in_build() # Find the Fixed In Build field begin response = @client['field'].get() fields = JSON.parse(response.body); fixed_field = fields.find do |field| field["name"] == "Fixed In Build" end if fixed_field @fixed_in_build_field_id = fixed_field["id"] else puts "Could not find 'Fixed In Build' field on supplied JIRA instance. Are you using WillowTree's JIRA? Does your user have access to the project?" end rescue RestClient::Exception => e puts "Error code #{e.response.code} attempting to find Fixed In Build field" end end |