Sha256: 72a49cd72e5eabe2ad7e4bfa3188438d2799bb1f458078e7dcc37811bfc1c91f

Contents?: true

Size: 908 Bytes

Versions: 22

Compression:

Stored size: 908 Bytes

Contents

require 'eucalypt/migration/namespaces/migration-add/generators/index'
require 'eucalypt/app'
require 'eucalypt/errors'
require 'eucalypt/helpers'

module Eucalypt
  class MigrationAdd < Thor
    include Eucalypt::Helpers
    using Colorize

    option :name, aliases: '-n', type: :string, desc: "Index name"
    option :options, aliases: '-o', type: :hash, default: {}, enum: %w[unique length where using type], desc: "Index options"
    desc "index [TABLE] *[COLUMNS]", "Adds an index".colorize(:grey)
    def index(table, *columns)
      directory = File.expand_path('.')
      if Eucalypt.app? directory
        migration = Eucalypt::Generators::Add::Index.new
        migration.destination_root = directory
        migration.generate(table: table, columns: columns, name: options[:name]||'index', options: options[:options])
      else
        Eucalypt::Error.wrong_directory
      end
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
eucalypt-0.9.0 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.8.0 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.7.2 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.7.1 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.7.0 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.6.2 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.6.1 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.6.0 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.5.4 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.5.3 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.5.2 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.5.1 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.5.0 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.4.2 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.4.1 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.4.0 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.3.5 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.3.4 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.3.3 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb
eucalypt-0.3.2 lib/eucalypt/migration/namespaces/migration-add/cli/add-index.rb