class Terraspace::Terraform::RemoteState::Marker::Output
Public Class Methods
new(mod, identifier, options={})
click to toggle source
# File lib/terraspace/terraform/remote_state/marker/output.rb, line 5 def initialize(mod, identifier, options={}) @mod, @identifier, @options = mod, identifier, options @parent_name = @mod.name @child_name, @output_key = @identifier.split('.') end
Public Instance Methods
build()
click to toggle source
Returns OutputProxy
# File lib/terraspace/terraform/remote_state/marker/output.rb, line 12 def build if valid? Terraspace::Dependency::Registry.register(@parent_name, @child_name) else warning end # MARKER for debugging. Only appears on 1st pass. Will not see unless changing Terraspace code for debugging. marker = "MARKER:terraform_output('#{@identifier}')" Terraspace::Terraform::RemoteState::OutputProxy.new(@mod, marker, @options) end
valid?()
click to toggle source
# File lib/terraspace/terraform/remote_state/marker/output.rb, line 23 def valid? self.class.stack_names.include?(@child_name) end
warning()
click to toggle source
# File lib/terraspace/terraform/remote_state/marker/output.rb, line 27 def warning logger.warn "WARN: The #{@child_name} stack does not exist".color(:yellow) caller_line = caller.find { |l| l.include?('.tfvars') } return unless caller_line # specs dont have a tfvars file source_code = PrettyTracer.new(caller_line).source_code logger.info source_code end