namespace :oracle do desc 'Build the Oracle test databases' task :build_databases => :load_connection do puts File.join(SCHEMA_PATH, 'oracle.sql') options_str = ENV['cpk_adapter_options_str'] sh %( sqlplus #{options_str} < #{File.join(SCHEMA_PATH, 'oracle.sql')} ) end desc 'Drop the Oracle test databases' task :drop_databases => :load_connection do puts File.join(SCHEMA_PATH, 'oracle.drop.sql') options_str = ENV['cpk_adapter_options_str'] sh %( sqlplus #{options_str} < #{File.join(SCHEMA_PATH, 'oracle.drop.sql')} ) end desc 'Rebuild the Oracle test databases' task :rebuild_databases => [:drop_databases, :build_databases] task :load_connection do require File.join(PROJECT_ROOT, %w[lib adapter_helper oracle]) spec = AdapterHelper::Oracle.load_connection_from_env ENV['cpk_adapter_options_str'] = "#{spec[:username]}/#{spec[:password]}@#{spec[:host]}" end end