Sha256: c1dcadfc095924ee27c945717b97b415a793e35133bbcccf4d96570e91160c24

Contents?: true

Size: 1.22 KB

Versions: 1

Compression:

Stored size: 1.22 KB

Contents

require 'bundler/gem_tasks'

task :environment do
  ENV['RAILS_ENV'] ||= 'test'

  # foreigner only works with a rails application due to load implementation
  require 'rails'
  require 'unico'
  require 'inscriptio_cursualis'
  require 'active_model'
  require 'mask_validator'
  require 'action_controller/railtie'
  require 'active_record/railtie'
  require 'foreigner'

  module Unico
    class Application < Rails::Application
      config.active_support.deprecation = :stderr
    end
  end

  Unico::Application.initialize!
end

namespace :db do
  task create: :environment do
    config = ActiveRecord::Base.connection_config
    encoding = config[:encoding] || ENV['CHARSET'] || 'utf8'

    begin
      ActiveRecord::Base.establish_connection(config.merge(database: 'postgres', schema_search_path: 'public'))
      ActiveRecord::Base.connection.create_database(config[:database], config.merge(encoding: encoding))
      ActiveRecord::Base.establish_connection(config)
    rescue Exception => e
      $stderr.puts e, *e.backtrace
      $stderr.puts "Couldn't create database for #{config.inspect}"
    end
  end

  task migrate: :environment do
    ActiveRecord::Migrator.migrate(Unico::Application.paths['db/migrate'].existent)
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
unico-training-7.8.0 Rakefile