Class: Avm::EacPostgresqlBase0::Instance
- Inherits:
-
Object
- Object
- Avm::EacPostgresqlBase0::Instance
show all
- Defined in:
- lib/avm/eac_postgresql_base0/instance.rb,
lib/avm/eac_postgresql_base0/instance/assert.rb,
lib/avm/eac_postgresql_base0/instance/data_unit.rb
Defined Under Namespace
Classes: Assert, DataUnit
Constant Summary
collapse
- MAINTENANCE_DATABASE =
'postgres'
Instance Method Summary
collapse
Instance Method Details
#common_command_args(database = true) ⇒ Object
69
70
71
72
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 69
def common_command_args(database = true)
['--host', host, '--username', user, '--port', port,
(database ? name : MAINTENANCE_DATABASE)]
end
|
#dump_command ⇒ Object
25
26
27
28
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 25
def dump_command
env.command('pg_dump', '--no-privileges', '--clean', '--no-owner', *common_command_args)
.envvar('PGPASSWORD', password)
end
|
#dump_gzip_command ⇒ EacRubyUtils::Envs::Command
31
32
33
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 31
def dump_gzip_command
dump_command.pipe(gzip_compress_command)
end
|
#gzip_compress_command ⇒ EacRubyUtils::Envs::Command
36
37
38
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 36
def gzip_compress_command
env.command('gzip', '-9', '-c')
end
|
#gzip_decompress_command ⇒ EacRubyUtils::Envs::Command
41
42
43
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 41
def gzip_decompress_command
env.command('gzip', '-d')
end
|
#host ⇒ Object
74
75
76
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 74
def host
connection_params[:host] || '127.0.0.1'
end
|
#load_gzip_command ⇒ EacRubyUtils::Envs::Command
46
47
48
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 46
def load_gzip_command
gzip_decompress_command.pipe(psql_command)
end
|
#name ⇒ Object
90
91
92
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 90
def name
connection_params.fetch(:name)
end
|
#password ⇒ Object
86
87
88
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 86
def password
connection_params.fetch(:password)
end
|
#password_command_argument ⇒ String
51
52
53
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 51
def password_command_argument
"@ESC_PGPASSWORD=#{password}"
end
|
#port ⇒ Object
78
79
80
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 78
def port
connection_params[:port] || '5432'
end
|
#psql_command(database = true) ⇒ Object
55
56
57
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 55
def psql_command(database = true)
env.command(password_command_argument, 'psql', *common_command_args(database))
end
|
#psql_command_command(sql, database = true) ⇒ Object
59
60
61
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 59
def psql_command_command(sql, database = true)
psql_command(database).append(['--quiet', '--tuples-only', '--command', sql])
end
|
#root_psql_command(sql = nil) ⇒ Object
63
64
65
66
67
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 63
def root_psql_command(sql = nil)
args = ['sudo', '-u', 'postgres', 'psql']
args += ['--quiet', '--tuples-only', '--command', sql] if sql.present?
env.command(*args)
end
|
#user ⇒ Object
82
83
84
|
# File 'lib/avm/eac_postgresql_base0/instance.rb', line 82
def user
connection_params.fetch(:user)
end
|