Sha256: 431bbe78a351565c9ac2f01daac2406a0ab412ffd50b58458f3659ad7664e14f

Contents?: true

Size: 970 Bytes

Versions: 3

Compression:

Stored size: 970 Bytes

Contents

namespace :alchemy do
  namespace :db do

    desc "Seeds your database with essential data for Alchemy CMS."
    task :seed => :environment do
      Alchemy::Seeder.seed!
    end

    desc "Dumps the database into 'db/dumps'"
    task :dump => :environment do
      db_conf = Rails.configuration.database_configuration.fetch(Rails.env)
      raise "Alchemy only supports MySQL database dumping at the moment." unless db_conf['adapter'] =~ /mysql/
      FileUtils.mkdir_p(Rails.root.join('db/dumps'))
      `mysqldump -u#{db_conf['username']}#{db_conf['password'].present? ? " -p'#{db_conf['password']}'" : nil} #{db_conf['database']} > #{Rails.root.join('db/dumps', dump_name)}`
    end

    def dump_name
      return ENV['DUMP_FILENAME'] if ENV['DUMP_FILENAME'].present?
      app_name = Rails.application.class.name.underscore.split('/').first
      timestamp = Time.now.strftime('%Y-%m-%d-%H-%M')
      dump_name = "#{app_name}-#{timestamp}.sql"
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
alchemy_cms-2.4.1 lib/tasks/database.rake
alchemy_cms-2.4.0 lib/tasks/database.rake
alchemy_cms-2.4.rc4 lib/tasks/database.rake