Switch to proper standalone executable with Thor
This commit is contained in:
27
lib/mrsk/cli/base.rb
Normal file
27
lib/mrsk/cli/base.rb
Normal file
@@ -0,0 +1,27 @@
|
||||
require "thor"
|
||||
require "sshkit"
|
||||
require "sshkit/dsl"
|
||||
|
||||
module Mrsk::Cli
|
||||
class Base < Thor
|
||||
include SSHKit::DSL
|
||||
|
||||
def self.exit_on_failure?() true end
|
||||
|
||||
class_option :verbose, type: :boolean, aliases: "-v", desc: "Detailed logging"
|
||||
|
||||
def initialize(*)
|
||||
super
|
||||
MRSK.verbose = options[:verbose]
|
||||
end
|
||||
|
||||
private
|
||||
def print_runtime
|
||||
started_at = Time.now
|
||||
yield
|
||||
ensure
|
||||
runtime = Time.now - started_at
|
||||
puts " Finished all in #{sprintf("%.1f seconds", runtime)}"
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user