018a9e4e7f
Adopted from GitLab CE. Generate new migration with:
rails g post_deployment_migration name_of_migration_here
By default they are run together with db:migrate. To not run them,
the env variable SKIP_POST_DEPLOYMENT_MIGRATIONS must be set
Code by Yorick Peterse <yorickpeterse@gmail.com>, see also:
83c8241160
17 lines
391 B
Ruby
17 lines
391 B
Ruby
# frozen_string_literal: true
|
|
|
|
require 'rails/generators'
|
|
|
|
module Rails
|
|
class PostDeploymentMigrationGenerator < Rails::Generators::NamedBase
|
|
def create_migration_file
|
|
timestamp = Time.zone.now.strftime('%Y%m%d%H%M%S')
|
|
|
|
template 'migration.rb', "db/post_migrate/#{timestamp}_#{file_name}.rb"
|
|
end
|
|
|
|
def migration_class_name
|
|
file_name.camelize
|
|
end
|
|
end
|
|
end
|