class RailsMysql::DumpCommand

Public Class Methods

new(config) click to toggle source
# File lib/rails_mysql/dump_command.rb, line 4
def initialize(config)
  raise RailsMysql::ConfigurationError, "mysqldump requires a database" unless config.database
  @config = config
end

Public Instance Methods

command() click to toggle source
# File lib/rails_mysql/dump_command.rb, line 9
def command
  cmd_parts = []
  cmd_parts << "-h \"#{config.host}\""     if config.host
  cmd_parts << "-P \"#{config.port}\""     if config.port
  cmd_parts << "-u \"#{config.username}\"" if config.username
  cmd_parts << "-p\"#{config.password}\""  if config.password

  "mysqldump #{cmd_parts.join(' ')} \"#{config.database}\" | gzip > #{filename}"
end
filename() click to toggle source
# File lib/rails_mysql/dump_command.rb, line 19
def filename
  "db/#{config.database}-#{Time.now.utc.iso8601}.sql.gz"
end

Private Instance Methods

config() click to toggle source
# File lib/rails_mysql/dump_command.rb, line 24
def config
  @config
end