class Bosh::Director::DbBackup::Adapter::Postgres
Public Class Methods
new(db_config)
click to toggle source
# File lib/bosh/director/db_backup/adapter/postgres.rb, line 8 def initialize(db_config) @db_config = db_config end
Public Instance Methods
export(path)
click to toggle source
# File lib/bosh/director/db_backup/adapter/postgres.rb, line 12 def export(path) env = {} env['PGPASSWORD'] = @db_config['password'] if @db_config.has_key?('password') stdout, stderr, status = Open3.capture3( env, 'pg_dump', '--host', @db_config.fetch('host'), '--port', @db_config.fetch('port').to_s, '--username', @db_config.fetch('user'), '--file', path, @db_config.fetch('database'), ) unless status.success? raise("pg_dump exited #{status.exitstatus}, output: '#{stdout}', error: '#{stderr}'") end path end