class Korinthenkacker::API

Public Class Methods

new(base_url) click to toggle source
# File lib/korinthenkacker/api.rb, line 6
def initialize(base_url)
  uri = URI(base_url)
  @host = uri.host
  @port = uri.port
end

Public Instance Methods

build(jobname, build) click to toggle source
# File lib/korinthenkacker/api.rb, line 20
def build(jobname, build)
  get("/job/#{jobname}/#{build}")
end
job(jobname) click to toggle source
# File lib/korinthenkacker/api.rb, line 16
def job(jobname)
  get("/job/#{jobname}")
end
jobs() click to toggle source
# File lib/korinthenkacker/api.rb, line 12
def jobs
  get('')
end
test_report(jobname, build) click to toggle source
# File lib/korinthenkacker/api.rb, line 24
def test_report(jobname, build)
  get("/job/#{jobname}/#{build}/testReport")
end

Private Instance Methods

get(path) click to toggle source
# File lib/korinthenkacker/api.rb, line 29
def get(path)
  uri = URI::HTTP.build({:host => @host, :port => @port, :path => path + '/api/json'})
  response = Net::HTTP.get_response(uri)
  if response.code == '200'
    JSON.parse(response.body)
  else
    raise 'response code is ' + response.code + ' for ' + uri.to_s
  end
end