class SimpleSync
Constants
- VERSION
Attributes
config_list[R]
Public Class Methods
new(config_file = nil)
click to toggle source
# File lib/simple_sync/simple_sync.rb, line 6 def initialize(config_file = nil) @config_file = config_file.nil? ? '.simple_sync' : config_file @config_list = {} end
Public Instance Methods
copy_to_destination()
click to toggle source
# File lib/simple_sync/simple_sync.rb, line 34 def copy_to_destination output = [] @config_list[:configurations].each { |config| config[:config][:sources].each { |source| reader,writer = IO.pipe IO.popen("rsync #{config[:config][:rsync]} --itemize-changes #{source} #{config[:config][:destination]} #{config[:config][:rsync_suffix]} "){ |output| output.each do |line| puts line end } } } { status: 'success'} end
load_config()
click to toggle source
# File lib/simple_sync/simple_sync.rb, line 27 def load_config configuration = read_config_from_file() return configuration if configuration[:status] == 'error' @config_list = JSON.parse(configuration[:config], symbolize_names: true) return { status: 'success' } end
read_config_from_file()
click to toggle source
# File lib/simple_sync/simple_sync.rb, line 11 def read_config_from_file if File.exists?(@config_file) puts "opening file #{@config_file}" config = File.open(@config_file).read elsif File.exists?(File.join(Dir.home, @config_file)) config = File.open(File.join(Dir.home, @config_file)).read puts "opening file #{File.join(Dir.home, @config_file)}" else puts "opening environment #{ENV['SIMPLE_SYNC']}" return { status: 'error', message: "could not find configuration file #{@config_file}" } unless ENV['SIMPLE_SYNC'] return { status: 'error', message: "could not find configuration file #{@config_file}" } unless File.exists?(ENV['SIMPLE_SYNC']) config = File.open(ENV['SIMPLE_SYNC']).read end { status: 'success', config: config } end