Class: Terraspace::Terraform::Args::Custom
- Inherits:
-
Object
- Object
- Terraspace::Terraform::Args::Custom
show all
- Extended by:
- Memoist
- Includes:
- DslEvaluator, Dsl
- Defined in:
- lib/terraspace/terraform/args/custom.rb
Constant Summary
Constants included
from Shorthands
Shorthands::COMMANDS_WITH_INPUT, Shorthands::COMMANDS_WITH_LOCKING, Shorthands::COMMANDS_WITH_PARALLELISM, Shorthands::COMMANDS_WITH_VARS
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods included from Dsl
#command, #each_command, #shorthand?, #shorthand_commands
Methods included from Shorthands
#shorthands
Constructor Details
#initialize(mod, name) ⇒ Custom
Returns a new instance of Custom.
8
9
10
11
|
# File 'lib/terraspace/terraform/args/custom.rb', line 8
def initialize(mod, name)
@mod, @name = mod, name
@commands = {}
end
|
Instance Attribute Details
#name ⇒ Object
Returns the value of attribute name.
7
8
9
|
# File 'lib/terraspace/terraform/args/custom.rb', line 7
def name
@name
end
|
Instance Method Details
#args ⇒ Object
20
21
22
23
24
|
# File 'lib/terraspace/terraform/args/custom.rb', line 20
def args
build
args = dig("args")
args.compact.flatten
end
|
#build ⇒ Object
13
14
15
16
17
|
# File 'lib/terraspace/terraform/args/custom.rb', line 13
def build
evaluate_file("#{Terraspace.root}/config/args/terraform.rb")
evaluate_file("#{@mod.root}/config/args/terraform.rb")
@commands.deep_stringify_keys!
end
|
#dig(prop, default = []) ⇒ Object
42
43
44
|
# File 'lib/terraspace/terraform/args/custom.rb', line 42
def dig(prop, default=[])
@commands.dig(@name, prop) || default
end
|
#env_vars ⇒ Object
33
34
35
36
|
# File 'lib/terraspace/terraform/args/custom.rb', line 33
def env_vars
build
dig("env", {})
end
|
#var_file_exist?(var_file) ⇒ Boolean
38
39
40
|
# File 'lib/terraspace/terraform/args/custom.rb', line 38
def var_file_exist?(var_file)
File.exist?("#{@mod.cache_dir}/#{var_file}")
end
|
#var_files ⇒ Object
26
27
28
29
30
31
|
# File 'lib/terraspace/terraform/args/custom.rb', line 26
def var_files
build
var_files = dig("var_files")
var_files.select! { |f| var_file_exist?(f) }
var_files.map { |f| "-var-file=#{f}" }
end
|