Class: RubyFly::Commands::GetPipeline

Inherits:
Base
  • Object
show all
Includes:
Mixins::Environment
Defined in:
lib/ruby_fly/commands/get_pipeline.rb

Instance Attribute Summary

Attributes inherited from Base

#binary

Instance Method Summary collapse

Methods included from Mixins::Environment

#for_environment, #initialize

Methods inherited from Base

#do_after, #do_before, #execute, #initialize, #instantiate_builder, #stderr, #stdin, #stdout

Instance Method Details

#configure_command(builder, opts) ⇒ Object



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
# File 'lib/ruby_fly/commands/get_pipeline.rb', line 10

def configure_command(builder, opts)
  builder = super(builder, opts)

  missing_params = [
      :target,
      :pipeline
  ].select { |param| opts[param].nil? }

  unless missing_params.empty?
    description = missing_params.map { |p| "'#{p}'" }.join(', ')
    raise(
        ArgumentError,
        "Error: #{description} required but not provided.")
  end

  target = opts[:target]
  pipeline = opts[:pipeline]

  builder
      .with_subcommand('get-pipeline') do |sub|
        sub = sub.with_option('-t', target)
        sub = sub.with_option('-p', pipeline)
        sub
      end
end