Sha256: da15cff3a75553a28bbbadb2c90a9fba54d5aa97f75cf3cff36059b0df5cca25
Contents?: true
Size: 1.62 KB
Versions: 2
Compression:
Stored size: 1.62 KB
Contents
require 'thor' module GithubStatusNotifier class CLI < Thor def self.exit_on_failure? true end desc 'version', 'Show the GithubStatusNotifier version' map %w(-v --version) => :version def version puts "GithubStatusNotifier version #{::GithubStatusNotifier::VERSION}" end desc 'notify', 'Notify current state to GitHub status' option :exit_status, type: :numeric option :keep_exit_status, type: :boolean, default: false option :debug, type: :boolean, default: false option :verbose, type: :boolean, default: false option :state, type: :string, enum: Notifier::ALLOWED_STATUS option :target_url, type: :string option :description, type: :string option :context, type: :string, default: Notifier::CONTEXT def notify if options[:debug] logger.level = Logger::DEBUG elsif options[:verbose] logger.level = Logger::INFO end logger.debug(options.inspect) if options[:keep_exit_status] && !options[:exit_status] fail ArgumentError, 'keep-exit-status requires exit-status' end params = { state: options[:state], exit_status: options[:exit_status], target_url: options[:target_url], description: options[:description], context: options[:context] } Notifier.new.notify(params) if options[:keep_exit_status] exit options[:exit_status] end rescue StandardError => e logger.error 'options:' logger.error options raise e end no_commands do def logger ::GithubStatusNotifier.logger end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
github_status_notifier-1.0.0 | lib/github_status_notifier/cli.rb |
github_status_notifier-0.1.2 | lib/github_status_notifier/cli.rb |