class Dpl::Example

Public Instance Methods

==(other) click to toggle source
# File lib/dpl/provider/examples.rb, line 99
def ==(other)
  const == other.const && opts == other.opts
end
cmd() click to toggle source
# File lib/dpl/provider/examples.rb, line 95
def cmd
  "dpl #{name} #{strs_for(opts)}"
end
compact(hash) click to toggle source
# File lib/dpl/provider/examples.rb, line 128
def compact(hash)
  hash.reject { |_, value| value.nil? }
end
config() click to toggle source
# File lib/dpl/provider/examples.rb, line 85
def config
  config = opts_for(opts)
  config = config.merge(strategy: strategy) # hmm.
  compact(config)
end
name() click to toggle source
# File lib/dpl/provider/examples.rb, line 103
def name
  const.registry_key.to_s.split(':').join(' ')
end
opts_for(opts) click to toggle source
# File lib/dpl/provider/examples.rb, line 107
def opts_for(opts)
  opts.map { |opt| [opt.name, value_for(opt)] }.to_h
end
str_for(opt) click to toggle source
# File lib/dpl/provider/examples.rb, line 115
def str_for(opt)
  "--#{opt.name} #{value_for(opt)}".strip
end
strategy() click to toggle source
# File lib/dpl/provider/examples.rb, line 91
def strategy
  const.registry_key.to_s.split(':').last if const.registry_key.to_s.include?(':')
end
strs_for(opts) click to toggle source
# File lib/dpl/provider/examples.rb, line 111
def strs_for(opts)
  opts.map { |opt| str_for(opt) }.join(' ')
end
value_for(opt) click to toggle source
# File lib/dpl/provider/examples.rb, line 119
def value_for(opt)
  return if opt.type == :flag
  return 1 if opt.type == :integer
  return opt.enum.first if opt.enum?

  str = opt.strs.detect { |str| str =~ /^--#{opt.name} (.*)$/ } && ::Regexp.last_match(1)
  str ? str.downcase : 'str'
end