glitchier-soc/db/migrate/20180812123222_change_relays_enabled.rb

19 lines
633 B
Ruby

class ChangeRelaysEnabled < ActiveRecord::Migration[5.2]
def up
# The relays table is supposed to be very small,
# single-digit number of rows, so this should be fine
safety_assured do
add_column :relays, :state, :integer, default: 0, null: false
# At the time of this migration, no relays reject anyone, so if
# there are enabled ones, they are accepted
execute 'UPDATE relays SET state = 2 WHERE enabled = true'
remove_column :relays, :enabled
end
end
def down
remove_column :relays, :state
add_column :relays, :enabled, :boolean, default: false, null: false
end
end