module RailsAsyncMigrations

this is the entry point of the gem as it adds methods to the current migration class the `self` represents the class being ran so we have to be careful as not to conflict with the original ActiveRecord names

configuration of the gem and default values set here

when included this class is the gateway to the method locking system

we check the state of the queue and launch run worker if needed

we check the state of the queue and launch run worker if needed

locks any class methods depending on a configuration list this allow us to ignore migration without making a parallel pipeline system

any method added within the synchronous migration with asynchronous directive will trigger this class

to run actual migration we need to require the migration files

log things and dispatch them wherever depending on the context mode

we check the state of the queue and launch run worker if needed

we check the state of the queue and launch run worker if needed

we check the state of the queue and launch run worker if needed

Constants

VERSION

Public Class Methods

config() { |config| ... } click to toggle source
# File lib/rails_async_migrations.rb, line 26
def config
  @config ||= Config.new
  if block_given?
    yield @config
  else
    @config
  end
end
reset() click to toggle source
# File lib/rails_async_migrations.rb, line 35
def reset
  @config = Config.new
end