Class: Avocado::Storage::Scarif

Inherits:
Uploader
  • Object
show all
Defined in:
lib/avocado/storage/scarif.rb

Instance Method Summary collapse

Instance Method Details

#uploadObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/avocado/storage/scarif.rb', line 8

def upload
  return if payload.blank? || url.blank?

  request = Net::HTTP::Post.new(url)
  request.content_type = 'application/json'
  request.body = upload_body
  request['Authorization'] = "Token token=#{self.class.config.token},email=#{self.class.config.email}"
  response = Net::HTTP.start(url.hostname, url.port, use_ssl: https?) do |http|
    http.request(request)
  end

  if success? response
    logger.info "Successfully uploaded to #{url}"
  else
    logger.error "Failed to upload to #{url} (response code #{response.code}). Full response:"
    logger.error response.body
  end
end