Sha256: 58018c64938b7deeebba5233be53b311b65a70ecc06f036fc0da30fe76915b1b
Contents?: true
Size: 730 Bytes
Versions: 6
Compression:
Stored size: 730 Bytes
Contents
require "httparty" module Artifactory module GemImport module Gems class Downloader def call(url, filename) download url, filename rescue Net::HTTPClientException, Net::HTTPFatalError, Net::OpenTimeout, SocketError => err # TODO handle file (-system) errors [:error, err.message] else [:ok, url] end private def download(url, filename) File.open(filename, "w") do |file| response = HTTParty.get(url, stream_body: true, follow_redirects: true) do |fragment| file.write fragment end response.error! unless response.success? end end end end end end
Version data entries
6 entries across 6 versions & 1 rubygems