Class: Develoz::Generators::DbBackupGenerator

Inherits:
Base
  • Object
show all
Defined in:
lib/generators/develoz/db_backup/db_backup_generator.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#add_gem, #app_class, #app_name, #append_env, #apply_template, #ensure_gitignore, #inject_once, #insert_route, #migration_exists?, next_migration_timestamp

Class Method Details

.source_rootObject



8
9
10
# File 'lib/generators/develoz/db_backup/db_backup_generator.rb', line 8

def self.source_root
  File.expand_path("templates", __dir__)
end

Instance Method Details

#create_backup_rakeObject



19
20
21
# File 'lib/generators/develoz/db_backup/db_backup_generator.rb', line 19

def create_backup_rake
  template "backup_rake.tt", "lib/tasks/backup.rake"
end

#create_backup_scriptObject



14
15
16
17
# File 'lib/generators/develoz/db_backup/db_backup_generator.rb', line 14

def create_backup_script
  template "bin_db_backup.tt", "bin/db-backup"
  chmod "bin/db-backup", 0o755
end

#ensure_backups_gitignoredObject



34
35
36
# File 'lib/generators/develoz/db_backup/db_backup_generator.rb', line 34

def ensure_backups_gitignored
  ensure_gitignore("/backups/")
end

#inject_compose_serviceObject



23
24
25
26
27
28
29
30
31
32
# File 'lib/generators/develoz/db_backup/db_backup_generator.rb', line 23

def inject_compose_service
  return unless options[:docker]

  inject_once(
    into: "docker-compose.yml",
    after: /^services:\n/,
    marker: "# db-backup service (develoz:db_backup)",
    content: compose_service_content
  )
end