Class: Dbcp::Environment

Inherits:
Object
  • Object
show all
Defined in:
lib/dbcp/environment.rb

Constant Summary collapse

ENVIRONMENT_PROVIDERS =
[
  DatabaseYamlEnvironmentProvider.new('config/database.yml'),
  UriEnvironmentProvider.new
]

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.find(environment_name) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/dbcp/environment.rb', line 12

def find(environment_name)
  ENVIRONMENT_PROVIDERS.each do |provider|
    environment = provider.find environment_name
    return environment if environment
  end

  raise EnvironmentNotFound.new "Could not locate '#{environment_name}' environment"
end

Instance Method Details

#exportObject



30
31
32
33
34
# File 'lib/dbcp/environment.rb', line 30

def export
  DatabaseSnapshotFile.new(self).tap do |snapshot_file|
    execution_host.execute database.export_command(snapshot_file)
  end
end

#import(snapshot_file) ⇒ Object



36
37
38
# File 'lib/dbcp/environment.rb', line 36

def import(snapshot_file)
  execution_host.execute database.import_command(snapshot_file)
end