Module: R10K::CLI
- Defined in:
- lib/r10k/cli.rb,
lib/r10k/cli/help.rb,
lib/r10k/cli/deploy.rb,
lib/r10k/cli/version.rb,
lib/r10k/cli/puppetfile.rb
Defined Under Namespace
Modules: Deploy, Puppetfile, Version
Class Method Summary collapse
Class Method Details
.command ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/r10k/cli.rb', line 8 def self.command @cmd ||= Cri::Command.define do name 'r10k' usage 'r10k <subcommand> [options]' summary 'Killer robot powered Puppet environment deployment' description <<-EOD r10k is a suite of commands to help deploy and manage puppet code for complex environments. EOD flag :h, :help, 'Show help for this command' do |value, cmd| # This is evil because we may not necessarily be called from the # command line and have a meaningful ARGV to scan. However the best # way of having a globally useful --help command is to define the # behavior in the block of the option to immediately handle it and exit # and we don't have access to the verbose option, so the simple method # is to simply scan ARGV. verbose = (ARGV.include?('-v') || ARGV.include?('--verbose')) puts cmd.help(:verbose => verbose) exit 0 end flag :t, :trace, 'Display stack traces on application crash' loglevels = R10K::Logging::LOG_LEVELS.reverse.map(&:downcase).join(", ") optional :v, :verbose, "Set log verbosity. Valid values: #{loglevels}" flag nil, :color, 'Enable colored log messages' required :c, :config, 'Specify a global configuration file' run do |opts, args, cmd| puts cmd.help(:verbose => opts[:verbose]) exit 0 end end end |