34 lines
		
	
	
		
			665 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			665 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # frozen_string_literal: true
 | |
| 
 | |
| class RemoveCryptoScopeValues < ActiveRecord::Migration[7.1]
 | |
|   def up
 | |
|     applications.in_batches do |records|
 | |
|       records.update_all(<<~SQL.squish)
 | |
|         scopes = TRIM(REPLACE(scopes, 'crypto', ''))
 | |
|       SQL
 | |
|     end
 | |
| 
 | |
|     tokens.in_batches do |records|
 | |
|       records.update_all(<<~SQL.squish)
 | |
|         scopes = TRIM(REPLACE(scopes, 'crypto', ''))
 | |
|       SQL
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def down
 | |
|     raise ActiveRecord::IrreversibleMigration
 | |
|   end
 | |
| 
 | |
|   private
 | |
| 
 | |
|   def applications
 | |
|     Doorkeeper::Application
 | |
|       .where("scopes LIKE '%crypto%'")
 | |
|   end
 | |
| 
 | |
|   def tokens
 | |
|     Doorkeeper::AccessToken
 | |
|       .where("scopes LIKE '%crypto%'")
 | |
|   end
 | |
| end
 |