class CC::Service::PivotalTracker
Constants
- BASE_URL
Public Instance Methods
receive_issue()
click to toggle source
# File lib/cc/services/pivotal_tracker.rb, line 34 def receive_issue title = %(Fix "#{issue["check_name"]}" issue in #{constant_name}) body = [issue["description"], details_url].join("\n\n") create_story(title, body) end
receive_quality()
click to toggle source
# File lib/cc/services/pivotal_tracker.rb, line 30 def receive_quality create_story(quality_title, details_url) end
receive_test()
click to toggle source
# File lib/cc/services/pivotal_tracker.rb, line 23 def receive_test result = create_story("Test ticket from Code Climate", "") result.merge( message: "Ticket <a href='#{result[:url]}'>#{result[:id]}</a> created.", ) end
receive_vulnerability()
click to toggle source
# File lib/cc/services/pivotal_tracker.rb, line 42 def receive_vulnerability formatter = CC::Formatters::TicketFormatter.new(self) create_story( formatter.format_vulnerability_title, formatter.format_vulnerability_body, ) end
Private Instance Methods
create_story(name, description)
click to toggle source
# File lib/cc/services/pivotal_tracker.rb, line 53 def create_story(name, description) params = { "story[name]" => name, "story[story_type]" => "chore", "story[description]" => description, } if config.labels.present? params["story[labels]"] = config.labels.strip end http.headers["X-TrackerToken"] = config.api_token url = "#{BASE_URL}/projects/#{config.project_id}/stories" service_post(url, params) do |response| body = Nokogiri::XML(response.body) { id: (body / "story/id").text, url: (body / "story/url").text, } end end