Sha256: 8a185f85a2212d400da3be3151fb5ea2a91a09d8b3d3994e45b9a68689a091f6

Contents?: true

Size: 888 Bytes

Versions: 1

Compression:

Stored size: 888 Bytes

Contents

require_relative "sync_files/version"

require "rake"
require "httparty"

require "sync_files/config/facade"
require "sync_files/config/loader"
require "sync_files/config/parser"
require "sync_files/config/validation"
require "sync_files/engine"

module SyncFiles
  class Sync
    def initialize
      @facade = Config::Facade.new
    end

    def run
      return unless @facade.valid?

      process_fixtures
    end

    private

    def process_fixtures
      @facade.iterate do |filename, url, destination|
        puts "Getting fixtures: #{url} #{filename}"

        response = HTTParty.get(url)
        if response.code != 200
          puts "ERROR: #{response.code} #{response.message} for #{url}"
          next
        end

        open(File.join(::Rails.root.to_s, destination, filename), "wb") do |file|
          file << response.body
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
sync_files-0.1.0 lib/sync_files.rb