Sha256: cbe27470ffb099870a7e265e7c8109c4c0a7c8f2ffec05855ac83700cbde0ce5

Contents?: true

Size: 1.62 KB

Versions: 24

Compression:

Stored size: 1.62 KB

Contents

require 'csv'
require 'open-uri'
require 'time'

namespace 'usman' do
  namespace 'import' do
    namespace 'master_data' do

      desc "Import all data in sequence"
      task 'all' => :environment do

        import_list = ["roles", "features"]
        
        import_list.each do |item|
          print "Importing #{item.titleize} \t".yellow
          begin
            Rake::Task["usman:import:master_data:#{item}"].invoke
          rescue ArgumentError => e
              puts "Loading #{item} - Failed - #{e.message}".red
          rescue Exception => e
            puts "Importing #{item.titleize} - Failed - #{e.message}".red
            puts "Backtrace:\n\t#{e.backtrace.join("\n\t")}"
          end
        end
        puts " "
      end

      ["Role", "Feature"].each do |cls_name|
        name = cls_name.underscore.pluralize
        desc "Import #{cls_name.pluralize}"
        task name => :environment do
          verbose = true
          verbose = false if ["false", "f","0","no","n"].include?(ENV["verbose"].to_s.downcase.strip)

          destroy_all = false
          destroy_all = true if ["true", "t","1","yes","y"].include?(ENV["destroy_all"].to_s.downcase.strip)

          path = Rails.root.join('db', 'master_data', "#{cls_name.constantize.table_name}.csv")
          path = Usman::Engine.root.join('db', 'master_data', "#{cls_name.constantize.table_name}.csv") unless File.exists?(path)
          
          cls_name.constantize.destroy_all if destroy_all
          cls_name.constantize.import_data_file(path, true, verbose)
          # puts "Importing Completed".green if verbose
        end
      end

    end
  end
end
    

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
usman-0.4.10.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.9.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.8.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.7.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.6.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.5.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.4.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.3.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.2.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.1.pre.materialize lib/tasks/usman/master_data.rake
usman-0.4.0.pre.materialize lib/tasks/usman/master_data.rake
usman-0.3.38 lib/tasks/usman/master_data.rake
usman-0.3.37 lib/tasks/usman/master_data.rake
usman-0.3.36 lib/tasks/usman/master_data.rake
usman-0.3.35 lib/tasks/usman/master_data.rake
usman-0.3.34 lib/tasks/usman/master_data.rake
usman-0.3.33 lib/tasks/usman/master_data.rake
usman-0.3.32 lib/tasks/usman/master_data.rake
usman-0.3.31 lib/tasks/usman/master_data.rake
usman-0.3.30 lib/tasks/usman/master_data.rake