Sha256: 2a6a14f1ffae3a78dc0bbb8b84664b797877b79d79e88bcb54431c6dce361538

Contents?: true

Size: 1.31 KB

Versions: 14

Compression:

Stored size: 1.31 KB

Contents

# -*- encoding : utf-8 -*-

require 'generators/card'

class Card
  module Generators
    class MigrationGenerator < MigrationBase
      source_root File.expand_path('../templates', __FILE__)

      class_option 'core', type: :boolean, aliases: '-c', default: false, group: :runtime,
        desc: "Create card migration for card core"

      def create_migration_file
        migration_type = options['core'] ? :core_cards : :deck_cards
        mig_paths = Cardio.migration_paths(migration_type)
        raise "No migration directory for #{migration_type}" if mig_paths.blank?
        set_local_assigns!
        migration_template @migration_template, File.join( mig_paths.first, "#{file_name}.rb")
      end

    protected

      # sets the default migration template that is being used for the generation of the migration
      # depending on the arguments which would be sent out in the command line, the migration template
      # and the table name instance variables are setup.

      def set_local_assigns!
        @migration_template = "card_migration.erb"
        @migration_parent_class = options['core'] ? 'Card::CoreMigration' : 'Card::Migration'
        case file_name
        when /^(import)_(.*)(?:\.json)?/
          @migration_action = $1
          @json_filename    = "#{$2}.json"
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
card-1.17.4 lib/generators/card/migration/migration_generator.rb
card-1.17.3 lib/generators/card/migration/migration_generator.rb
card-1.17.2 lib/generators/card/migration/migration_generator.rb
card-1.17.1 lib/generators/card/migration/migration_generator.rb
card-1.17.0 lib/generators/card/migration/migration_generator.rb
card-1.16.15 lib/generators/card/migration/migration_generator.rb
card-1.16.14 lib/generators/card/migration/migration_generator.rb
card-1.16.13 lib/generators/card/migration/migration_generator.rb
card-1.16.12 lib/generators/card/migration/migration_generator.rb
card-1.16.11 lib/generators/card/migration/migration_generator.rb
card-1.16.10 lib/generators/card/migration/migration_generator.rb
card-1.16.9 lib/generators/card/migration/migration_generator.rb
card-1.16.8 lib/generators/card/migration/migration_generator.rb
card-1.16.7 lib/generators/card/migration/migration_generator.rb