Class: Janky::Builder::HTTP
- Inherits:
-
Object
- Object
- Janky::Builder::HTTP
- Defined in:
- lib/janky/builder/http.rb
Instance Method Summary collapse
-
#initialize(username, password) ⇒ HTTP
constructor
A new instance of HTTP.
- #output(url) ⇒ Object
- #run(params, create_url) ⇒ Object
Constructor Details
#initialize(username, password) ⇒ HTTP
Returns a new instance of HTTP.
4 5 6 7 |
# File 'lib/janky/builder/http.rb', line 4 def initialize(username, password) @username = username @password = password end |
Instance Method Details
#output(url) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/janky/builder/http.rb', line 29 def output(url) http = Net::HTTP.new(url.host, url.port) if url.scheme == "https" http.use_ssl = true end request = Net::HTTP::Get.new(url.path) if @username && @password request.basic_auth(@username, @password) end response = http.request(request) unless response.code == "200" Exception.push_http_response(response) raise Error, "Failed to get build output" end response.body end |
#run(params, create_url) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/janky/builder/http.rb', line 9 def run(params, create_url) http = Net::HTTP.new(create_url.host, create_url.port) if create_url.scheme == "https" http.use_ssl = true end request = Net::HTTP::Post.new(create_url.path) if @username && @password request.basic_auth(@username, @password) end request.form_data = {"json" => params} response = http.request(request) if !%w[302 201].include?(response.code) Exception.push_http_response(response) raise Error, "Failed to create build" end end |