class GV::Addons::Postgresql

Constants

CONTAINER_DIR
PORT

Public Instance Methods

create(app_name) click to toggle source
Calls superclass method GV::Valley::Addon#create
# File lib/gv/addons/postgresql.rb, line 27
def create app_name
  if super(app_name)
    self.class.space.write([@name.to_sym,@app_name,"postgres://#{@app_name}:#{@pass}@#{self.external_ip}:#{port(app_name)}/#{@app_name}",self.external_ip])    
  end
end
destroy(app_name) click to toggle source
Calls superclass method GV::Valley::Addon#destroy
# File lib/gv/addons/postgresql.rb, line 33
def destroy app_name
  super app_name
  tuple = [@name.to_sym,@app_name,nil,nil]
  (self.class.space.take(tuple,0) rescue nil) while (self.class.space.read(tuple,0) rescue nil)
end
image() click to toggle source
# File lib/gv/addons/postgresql.rb, line 12
def image; "valley/postgresql" end
params() click to toggle source
# File lib/gv/addons/postgresql.rb, line 14
def params 
  ["-v #{@home}/#{@name}/#{@app_name}:#{CONTAINER_DIR} -w #{CONTAINER_DIR}",
    "-e POSTGRESQL_USER=#{@app_name}", 
    "-e POSTGRESQL_PASS=#{@pass=rand(2**64).to_s(36)}", 
    "-e POSTGRESQL_DB=#{@app_name}"
  ].join(" ")
end
url(app_name) click to toggle source
# File lib/gv/addons/postgresql.rb, line 22
def url app_name
  @app_name = app_name
  self.class.space.read([@name.to_sym,@app_name,nil,nil],0)[2] rescue nil
end