class CruisecontrolrbToHipchat::Cruisecontrolrb

Public Class Methods

new(base_url, username = nil, password = nil) click to toggle source
# File lib/cruisecontrolrb_to_hipchat/cruisecontrolrb.rb, line 10
def initialize(base_url, username = nil, password = nil)
  @auth = { :username => username, :password => password }
  @base_url = base_url
end

Public Instance Methods

fetch_statuses() click to toggle source
# File lib/cruisecontrolrb_to_hipchat/cruisecontrolrb.rb, line 15
def fetch_statuses
  options = { :basic_auth => @auth }

  noko = Nokogiri::XML(self.class.get("http://#{@base_url}/XmlStatusReport.aspx", options).parsed_response)
  projects = noko.search("Project")
  return [] unless projects.first
  
  projects.map do |project|

    status_hash = { lastBuildStatus: project["lastBuildStatus"],
                    webUrl: project["webUrl"],
                    lastBuildLabel: project["lastBuildLabel"],
                    activity: project["activity"],
                    name: project['name'] }
    status_hash
  end        
end