19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
# File 'lib/sql_migrate/cli.rb', line 19
def parse(argv)
args = argv.dup
options = {}
OptionParser.new do |opt|
opt.version = VERSION
opt.banner = "sql_migrate [options] MIGRATIONS_PATH"
opt.on("-h HOST") { |v| options[:host] = v }
opt.on("-p PORT") { |v| options[:port] = v }
opt.on("-d DATABASE") { |v| options[:database] = v }
opt.on("-u USER") { |v| options[:user] = v }
opt.on("-p PASSWORD") { |v| options[:password] = v }
opt.on("-v", "--verbose") { |v| options[:verbose] = v }
opt.on("-n", "--dry-run") { |v| options[:dryrun] = v }
opt.on("--applied") { |v| options[:applied] = v }
opt.on("-f CONFIG") { |v| options[:config] = v }
opt.parse!(args)
end
load_from_config(options.delete(:config)) if options.has_key?(:config)
config.merge(options)
config.migration_paths = args unless args.empty?
args
end
|