class Astrails::Safe::Mysqldump

Public Instance Methods

command() click to toggle source
# File lib/astrails/safe/mysqldump.rb, line 5
def command
  "mysqldump --defaults-extra-file=#{mysql_password_file} #{@config[:options]} #{mysql_skip_tables} #{@id}"
end
extension() click to toggle source
# File lib/astrails/safe/mysqldump.rb, line 9
def extension; '.sql'; end

Protected Instance Methods

mysql_password_file() click to toggle source
# File lib/astrails/safe/mysqldump.rb, line 13
def mysql_password_file
  Astrails::Safe::TmpFile.create("mysqldump") do |file|
    file.puts "[mysqldump]"
    %w/user password socket host port/.each do |k|
      v = @config[k]
      # values are quoted if needed
      file.puts "#{k} = #{v.inspect}" if v
    end
  end
end
mysql_skip_tables() click to toggle source
# File lib/astrails/safe/mysqldump.rb, line 24
def mysql_skip_tables
  if skip_tables = @config[:skip_tables]
    [*skip_tables].map{ |t| "--ignore-table=#{@id}.#{t}" }.join(" ")
  end
end