#!/usr/lib/ruby/bin/ruby
# frozen_string_literal: true

$LOAD_PATH.unshift File.join(File.dirname(__dir__), 'lib')

require 'rubygems'
require 'bundler/setup'
require 'mysql2postgres'

config_file = ARGV.empty? ? File.join(File.dirname(__dir__), 'config', 'database.yml') : File.expand_path(ARGV[0])

raise "'#{config_file}' does not exist" unless FileTest.exist? config_file

db_yaml = YAML.safe_load File.read(config_file)

raise "'#{config_file}' does not contain a mysql configuration directive for conversion" unless db_yaml.key? 'mysql'
raise "'#{config_file}' does not contain destinations configuration directive for conversion" unless db_yaml.key? 'destinations'

Mysql2postgres.new(db_yaml, config_file).convert