Sha256: 7937b8367ecfa93e6ec52f015d57f8a4dc95ce37b7a9fe610d1b822dd3809b19
Contents?: true
Size: 1.71 KB
Versions: 2
Compression:
Stored size: 1.71 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.2 | lib/ruby_terraform/commands/apply.rb |
ruby-terraform-0.65.0.pre.1 | lib/ruby_terraform/commands/apply.rb |