mirror of https://github.com/docusealco/docuseal
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
544 B
19 lines
544 B
# frozen_string_literal: true
|
|
|
|
module MigrationDatabaseUrl
|
|
module_function
|
|
|
|
def migrate
|
|
migration_database_url = ENV.fetch('MIGRATION_DATABASE_URL', '').to_s
|
|
|
|
return ActiveRecord::Tasks::DatabaseTasks.migrate if migration_database_url.empty?
|
|
|
|
app_database_config = ActiveRecord::Base.connection_db_config
|
|
|
|
ActiveRecord::Base.establish_connection(migration_database_url)
|
|
ActiveRecord::Tasks::DatabaseTasks.migrate
|
|
ensure
|
|
ActiveRecord::Base.establish_connection(app_database_config) if app_database_config
|
|
end
|
|
end
|