bin/rmt-data-import

Summary

Maintainability
Test Coverage
#!/usr/bin/env ruby

RMT_PATH = File.expand_path('..', __dir__)


# Load initial configuration for rmt
require_relative "#{RMT_PATH}/config/boot"

# Add rmt_path to library load path
$LOAD_PATH.unshift File.join(RMT_PATH, 'lib')

require 'optparse'
require 'ostruct'
require 'active_support'
require 'active_record'
require 'erb'
require 'yaml'
require 'rmt/config'
require 'csv'
require 'json'
require_relative '../config/initializers_cli/disable_deprecation_warnings'
require_relative '../config/initializers_cli/rmt_fast_gettext'
require_relative '../config/initializers_cli/rmt_fast_gettext_cli_locale'

no_systems = false
data_dir = nil

# Initialize the database
relative_load_paths = %w[lib lib/rmt app/models app/validators app/services].map { |dir| File.join(RMT_PATH, dir) }
db_config = RMT::Config.db_config

ActiveSupport::Dependencies.autoload_paths += relative_load_paths
ActiveRecord::Base.establish_connection(db_config)

begin
  Time.zone ||= 'UTC'
  script = RMT::CLI::SMTImporter.new(data_dir, no_systems)
  script.run ARGV
rescue RMT::CLI::SMTImporter::ImportException
  exit 1
end