Sha256: 627b8c3de714b434c67f8004571b4fd7cd8a09f7e6fe33b7fa579f684a257c01

Contents?: true

Size: 1.11 KB

Versions: 1

Compression:

Stored size: 1.11 KB

Contents

require 'rails/generators'
require 'rails/generators/migration'

module Jabe
  module Generators
    class MigrationsGenerator < Rails::Generators::Base
      include Rails::Generators::Migration

      self.source_root(File.expand_path(
        File.join(__FILE__, '..', '..', 'templates', 'migrations'))
      )

      desc "run this generator to create the necessary migrations"

      def create_migrations
        existing_migrations = Dir["db/migrate/*.rb"]
        migrations = %w(
          create_settings.rb
          create_slugs.rb
          devise_create_admins.rb
          create_entries.rb
          create_comments.rb
        ).reject { |file|
          existing_migrations.any? { |migration|
            match = migration.match(/#{file}$/)
            puts "skipping #{file}, exists." if match
            match
          }
        }

        migrations.each do |migration|
          migration_template migration, "db/migrate/#{migration}"
          sleep 1 # timestamps...
        end
      end

      def self.next_migration_number(dirname)
        Time.now.utc.strftime("%Y%m%d%H%M%S")
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
jabe-0.5.0 lib/generators/jabe/migrations/migrations_generator.rb