Module: EnhancedMySQLTasks::Rails41::MySQLDatabaseTasks

Defined in:
lib/enhanced_mysql_tasks/rails41/mysql_database_tasks.rb

Instance Method Summary collapse

Instance Method Details

#structure_dump(filename) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/enhanced_mysql_tasks/rails41/mysql_database_tasks.rb', line 4

def structure_dump(filename)
  args = prepare_command_options('mysqldump')
  args.concat(["--result-file", "#{filename}"])
  args.concat(["--no-data"])
  args.concat(["--routines"])
  args.concat(["--skip-comments"])
  args.concat(["--skip-dump-date"])
  args.concat(["#{configuration['database']}"])

  if Kernel.system(*args)
    sql = File.read(filename)
    File.write(filename, sql.gsub(/ AUTO_INCREMENT=[0-9]+/, ''))
  else
    $stderr.puts "Could not dump the database structure. "\
                 "Make sure `mysqldump` is in your PATH and check the command output for warnings."
  end
end