Class: JetstreamBridge::Generators::MigrationsGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- JetstreamBridge::Generators::MigrationsGenerator
- Includes:
- Rails::Generators::Migration
- Defined in:
- lib/generators/jetstream_bridge/migrations/migrations_generator.rb
Overview
Migrations generator.
Class Method Summary collapse
-
.next_migration_number(dirname) ⇒ Object
– Rails::Generators::Migration plumbing –.
- .timestamped_migrations? ⇒ Boolean
Instance Method Summary collapse
Class Method Details
.next_migration_number(dirname) ⇒ Object
– Rails::Generators::Migration plumbing –
30 31 32 33 34 35 36 37 |
# File 'lib/generators/jetstream_bridge/migrations/migrations_generator.rb', line 30 def self.next_migration_number(dirname) return format('%.3d', current_migration_number(dirname) + 1) unless = Time.now.utc.strftime('%Y%m%d%H%M%S').to_i last_migration = current_migration_number(dirname) + 1 [, last_migration].max.to_s end |
.timestamped_migrations? ⇒ Boolean
39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/generators/jetstream_bridge/migrations/migrations_generator.rb', line 39 def self. # Prefer the Rails application configuration which is available # without hitting ActiveRecord's dynamic matchers (that would raise # when no connection is established). if defined?(::Rails) && ::Rails.respond_to?(:application) && ::Rails.application && ::Rails.application.config.respond_to?(:active_record) ar_config = ::Rails.application.config.active_record return ar_config. if ar_config.respond_to?(:timestamped_migrations) end true end |
Instance Method Details
#create_inbox_migration ⇒ Object
22 23 24 25 26 27 |
# File 'lib/generators/jetstream_bridge/migrations/migrations_generator.rb', line 22 def create_inbox_migration name = 'create_jetstream_inbox_events' return say_status :skip, "migration #{name} already exists", :yellow if migration_exists?('db/migrate', name) migration_template 'create_jetstream_inbox_events.rb.erb', "db/migrate/#{name}.rb" end |
#create_outbox_migration ⇒ Object
15 16 17 18 19 20 |
# File 'lib/generators/jetstream_bridge/migrations/migrations_generator.rb', line 15 def create_outbox_migration name = 'create_jetstream_outbox_events' return say_status :skip, "migration #{name} already exists", :yellow if migration_exists?('db/migrate', name) migration_template 'create_jetstream_outbox_events.rb.erb', "db/migrate/#{name}.rb" end |