Class: Gitlab::Database::SchemaMigrations::Context

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab/database/schema_migrations/context.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(connection) ⇒ Context

Returns a new instance of Context.



11
12
13
# File 'lib/gitlab/database/schema_migrations/context.rb', line 11

def initialize(connection)
  @connection = connection
end

Instance Attribute Details

#connectionObject (readonly)

Returns the value of attribute connection.



7
8
9
# File 'lib/gitlab/database/schema_migrations/context.rb', line 7

def connection
  @connection
end

Instance Method Details

#schema_directoryObject



15
16
17
# File 'lib/gitlab/database/schema_migrations/context.rb', line 15

def schema_directory
  @schema_directory ||= Rails.root.join(database_schema_migrations_path).to_s
end

#versions_to_createObject



19
20
21
22
23
24
# File 'lib/gitlab/database/schema_migrations/context.rb', line 19

def versions_to_create
  versions_from_database = @connection.schema_migration.all_versions
  versions_from_migration_files = @connection.migration_context.migrations.map { |m| m.version.to_s }

  versions_from_database & versions_from_migration_files
end