class S3Backup::Redis::Import
Constants
- START_REDIS_COMMAND
- STOP_REDIS_COMMAND
Attributes
redis_dump_file_path[R]
redis_evironement[R]
redis_s3_file_name[R]
Public Class Methods
new(redis_evironement)
click to toggle source
# File lib/s3_backup/redis/import.rb, line 11 def initialize(redis_evironement) @redis_evironement = redis_evironement @redis_s3_file_name = "redis-#{redis_evironement}" @redis_dump_file_path = '/usr/local/var/db/redis/dump.rdb' end
Public Instance Methods
now!()
click to toggle source
# File lib/s3_backup/redis/import.rb, line 17 def now! puts 'Stop redis database ...' stop_redis_database puts 'Downloading redis database ...' S3Backup::Storage::S3.new.download!(redis_s3_file_name, Config.s3_redis_path, redis_dump_s3_file.path) umcompress_file copy_file puts 'Start redis database ...' start_redis_database clean_env puts '🍺 Done!' end
Private Instance Methods
clean_env()
click to toggle source
# File lib/s3_backup/redis/import.rb, line 65 def clean_env redis_dump_file.unlink redis_dump_s3_file.unlink end
copy_file()
click to toggle source
# File lib/s3_backup/redis/import.rb, line 49 def copy_file `mv #{redis_dump_file.path} #{redis_dump_file_path}` end
redis_dump_file()
click to toggle source
# File lib/s3_backup/redis/import.rb, line 36 def redis_dump_file @redis_dump_file ||= Tempfile.new(redis_s3_file_name) end
redis_dump_s3_file()
click to toggle source
# File lib/s3_backup/redis/import.rb, line 32 def redis_dump_s3_file @redis_dump_s3_file ||= Tempfile.new("#{redis_s3_file_name}_compressed") end
start_redis_database()
click to toggle source
# File lib/s3_backup/redis/import.rb, line 59 def start_redis_database Bundler.with_clean_env do `#{START_REDIS_COMMAND} 2> /dev/null` end end
stop_redis_database()
click to toggle source
# File lib/s3_backup/redis/import.rb, line 53 def stop_redis_database Bundler.with_clean_env do `#{STOP_REDIS_COMMAND} 2> /dev/null` end end
umcompress_file()
click to toggle source
# File lib/s3_backup/redis/import.rb, line 40 def umcompress_file file = File.open(redis_dump_file.path, 'w') Zlib::GzipReader.open(redis_dump_s3_file.path) do |gz| file.write gz.read end file.close end