Class: Acquia::Cloud::Database

Inherits:
Entity
  • Object
show all
Defined in:
lib/acquia/cloud/database.rb

Direct Known Subclasses

DatabaseEnvironment

Instance Attribute Summary

Attributes inherited from Entity

#url

Instance Method Summary collapse

Methods inherited from Entity

#refresh

Constructor Details

#initialize(cloud, site, database) ⇒ Database

Returns a new instance of Database.



6
7
8
9
10
11
# File 'lib/acquia/cloud/database.rb', line 6

def initialize(cloud, site, database)
  @cloud = cloud
  @site = site
  @data = database
  @url = "/sites/#{@site}/dbs/#{@data['name']}"
end

Instance Method Details

#backup_on(environment) ⇒ Object



28
29
30
31
# File 'lib/acquia/cloud/database.rb', line 28

def backup_on(environment)
  task = @cloud.api.post("/sites/#{@site}/envs/#{environment}/dbs/#{name}/backups")
  Task.new @cloud, @site, task
end

#copy(from, to) ⇒ Object



21
22
23
24
25
26
# File 'lib/acquia/cloud/database.rb', line 21

def copy(from, to)
  from = standardise_env(from)
  to = standardise_env(to)
  task = @cloud.api.post("/sites/#{@site}/dbs/#{name}/db-copy/#{from}/#{to}")
  Task.new @cloud, @site, task
end

#nameObject



13
14
15
# File 'lib/acquia/cloud/database.rb', line 13

def name
  data['name']
end

#on_environment(environment) ⇒ Object



17
18
19
# File 'lib/acquia/cloud/database.rb', line 17

def on_environment(environment)
  DatabaseEnvironment.new(@cloud, @site, environment, {'name' => name}).refresh
end