class Easy::BackupGenerator
Public Instance Methods
create_backup_files()
click to toggle source
# File lib/easy/generators/backup_generator.rb, line 12 def create_backup_files gem_group(:backup) do gem "whenever", :require => false # Rails 3.2.12 and lower of the Rails 3.2 release series requires mail ~> 2.4.X which neccesitates an older version of backup # We'll handle two cases: one for Rails 3.2.(0-12) and one for Rails 3.2.13 + Rails 4 if "3.2" == "#{Rails::VERSION::MAJOR}.#{Rails::VERSION::MINOR}" && Rails::VERSION::STRING < "3.2.13" gem "backup", "~> 3.0.27", :require => false gem "fog", "~> 1.4.0", :require => false gem "mail", "~> 2.4.0", :require => false elsif Rails::VERSION::STRING >= "3.2.13" && [3,4].include?(Rails::VERSION::MAJOR) # Rails 3.2.13+ and Rails 4 only gem "backup", "~> 3.1.3", :require => false gem "fog", "~> 1.9.0", :require => false gem "net-ssh", ['>= 2.3.0', '<= 2.5.2'], :require => false gem "net-scp", ['>= 1.0.0', '<= 1.0.4'], :require => false gem "excon", "~> 0.17.0", :require => false gem "mail", "~> 2.5.0", :require => false else warn "Unsupported rails release detected. You'll need to manage your own dependencies for the backup gem" gem "backup", :require => false end end template("backup.rb.tt", "config/backup.rb") template("schedule.rb.tt", "config/schedule.rb") copy_file("s3.yml", "config/s3.yml") run("bundle install") say("Backup configuration generated", :green) say(" - TODO: edit config/backup.rb setting notification addresses and other configuration options", :green) say(" - TODO: ensure your S3 keys are set in config/s3.yml", :green) true end