Sha256: 2af08908bc637b1fa6ca6fa0cdc9433797d33ce6274c1c2702c1436f9d6b8fff
Contents?: true
Size: 1.63 KB
Versions: 2
Compression:
Stored size: 1.63 KB
Contents
require 'json' require_relative 'base' module RubyTerraform module Commands class Apply < Base def configure_command(builder, opts) directory = opts[:directory] plan = opts[:plan] vars = opts[:vars] || {} var_file = opts[:var_file] var_files = opts[:var_files] || [] target = opts[:target] targets = opts[:targets] || [] state = opts[:state] input = opts[:input] auto_approve = opts[:auto_approve] no_backup = opts[:no_backup] backup = no_backup ? '-' : opts[:backup] no_color = opts[:no_color] builder .with_subcommand('apply') do |sub| vars.each do |key, value| var_value = value.is_a?(String) ? value : JSON.generate(value) sub = sub.with_option( '-var', "'#{key}=#{var_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('-target', target) if target targets.each do |file| sub = sub.with_option('-target', file) end sub = sub.with_option('-state', state) if state sub = sub.with_option('-input', input) if input sub = sub.with_option('-auto-approve', auto_approve) unless auto_approve.nil? sub = sub.with_option('-backup', backup) if backup sub = sub.with_flag('-no-color') if no_color sub end .with_argument(plan || directory) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ruby-terraform-0.65.0.pre.4 | lib/ruby_terraform/commands/apply.rb |
ruby-terraform-0.65.0.pre.3 | lib/ruby_terraform/commands/apply.rb |