#!/usr/bin/env ruby # frozen_string_literal: true require 'optparse' require 'massa' $LOAD_PATH.push File.expand_path('../lib', __dir__) options = {} OptionParser.new do |opts| opts.banner = 'Usage: massa [options]' opts.on('-g', '--generate-config', 'Generate config file') do template = File.expand_path('../lib/massa/templates/massa.yml', __dir__) config_file = 'config/massa.yml' FileUtils.mkdir_p(File.dirname(config_file)) FileUtils.cp(template, "#{Dir.pwd}/#{config_file}") Massa::CLI.colorize :default, 'File generated: ', :green, "#{config_file}\n" exit end opts.on('-h', '--help', 'Display this help') do puts opts puts puts 'You can read the official documentation here:' puts 'https://github.com/lucascaton/massa#massa' puts exit end opts.on('-v', '--version', 'Display version') do require 'massa/version' puts Massa::VERSION exit end opts.on('-V', '--verbose', 'Run verbosely') do |v| options[:verbose] = v end end.parse! begin Massa::Analyzier.run!(options) rescue Gem::LoadError Massa::CLI.colorize :red, "¯\\_(ツ)_/¯ 'massa' gem is not in your Gemfile." exit 1 end