Class: PgExport::Utils
- Inherits:
-
Object
- Object
- PgExport::Utils
- Extended by:
- Logging
- Defined in:
- lib/pg_export/services/utils.rb
Class Method Summary collapse
Methods included from Logging
Class Method Details
.compress(dump) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/pg_export/services/utils.rb', line 13 def self.compress(dump) dump_gz = CompressedDump.new dump_gz.open(:write) do |gz| gz.write(dump.read_chunk) until dump.eof? end logger.info "Create #{dump_gz}" dump_gz end |
.create_dump(database_name) ⇒ Object
5 6 7 8 9 10 11 |
# File 'lib/pg_export/services/utils.rb', line 5 def self.create_dump(database_name) dump = SqlDump.new out = `pg_dump -Fc --file #{dump.path} #{database_name} 2>&1` raise PgDumpError, out if /FATAL/ =~ out logger.info "Create #{dump}" dump end |
.decompress(dump_gz) ⇒ Object
23 24 25 26 27 28 29 30 31 32 |
# File 'lib/pg_export/services/utils.rb', line 23 def self.decompress(dump_gz) dump = SqlDump.new dump_gz.open(:read) do |gz| dump.write(gz.readpartial(Dump::Base::CHUNK_SIZE)) until gz.eof? end dump.rewind logger.info "Create #{dump}" dump end |