Sha256: 3ece1ccbd5ebe9c1eaebfa730182aa207a0d5818ee23daec294c3729651347d4

Contents?: true

Size: 1.22 KB

Versions: 4

Compression:

Stored size: 1.22 KB

Contents

require 'lino'
require_relative 'base'

module RubyTerraform
  module Commands
    class Plan < Base
      def configure_command(builder, opts)
        directory = opts[:directory]
        vars = opts[:vars] || {}
        var_file = opts[:var_file]
        var_files = opts[:var_files] || []
        state = opts[:state]
        plan = opts[:plan]
        input = opts[:input]
        destroy = opts[:destroy]
        no_color = opts[:no_color]

        builder
            .with_subcommand('plan') do |sub|
              vars.each do |key, value|
                sub = sub.with_option(
                    '-var', "'#{key}=#{value}'", separator: ' ')
              end
              sub = sub.with_option('-var-file', var_file) if var_file
              var_files.each do |file|
                sub = sub.with_option('-var-file', file)
              end
              sub = sub.with_option('-state', state) if state
              sub = sub.with_option('-out', plan) if plan
              sub = sub.with_option('-input', input) if input
              sub = sub.with_flag('-destroy') if destroy
              sub = sub.with_flag('-no-color') if no_color
              sub
            end
            .with_argument(directory)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ruby-terraform-0.31.0.pre.pre.1 lib/ruby_terraform/commands/plan.rb
ruby-terraform-0.30.0 lib/ruby_terraform/commands/plan.rb
ruby-terraform-0.29.0.pre.pre.2 lib/ruby_terraform/commands/plan.rb
ruby-terraform-0.29.0.pre.pre.1 lib/ruby_terraform/commands/plan.rb