21 lines
		
	
	
	
		
			664 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
	
		
			664 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # frozen_string_literal: true
 | |
| 
 | |
| 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
 |