BigW Consortium Gitlab

[ci skip] Update migration to be reversible and use add_column_with_default

parent 4fed7036
# rubocop:disable all
class AddClientsideSentryToApplicationSettings < ActiveRecord::Migration
DOWNTIME = true
DOWNTIME_REASON = 'This migration requires downtime because we must add 2 new columns, 1 of which has a default value.'
include Gitlab::Database::MigrationHelpers
def change
change_table :application_settings do |t|
t.boolean :clientside_sentry_enabled, default: false
t.string :clientside_sentry_dsn
# Set this constant to true if this migration requires downtime.
DOWNTIME = false
# When a migration requires downtime you **must** uncomment the following
# constant and define a short and easy to understand explanation as to why the
# migration requires downtime.
# DOWNTIME_REASON = ''
# When using the methods "add_concurrent_index" or "add_column_with_default"
# you must disable the use of transactions as these methods can not run in an
# existing transaction. When using "add_concurrent_index" make sure that this
# method is the _only_ method called in the migration, any other changes
# should go in a separate migration. This ensures that upon failure _only_ the
# index creation fails and can be retried or reverted easily.
#
# To disable transactions uncomment the following line and remove these
# comments:
disable_ddl_transaction!
def up
add_column_with_default :application_settings, :clientside_sentry_enabled, :boolean, default: false
add_column :application_settings, :clientside_sentry_dsn, :string
end
def down
remove_columns :application_settings, :clientside_sentry_enabled, :clientside_sentry_dsn
end
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment