module Sfn::ApiProvider::Google

Public Instance Methods

extract_current_nested_template_parameters(stack, stack_name, c_stack) click to toggle source

Extract current parameters from parent template

@param stack [SparkleFormation] @param stack_name [String] @param c_stack [Miasma::Models::Orchestration::Stack] @return [Hash]

# File lib/sfn/api_provider/google.rb, line 22
def extract_current_nested_template_parameters(stack, stack_name, c_stack)
  if c_stack && c_stack.data[:parent_stack]
    c_stack.data[:parent_stack].sparkleish_template(:remove_wrapper).fetch(
      :resources, stack_name, :properties, :parameters, Smash.new
    )
  elsif stack.parent
    val = stack.parent.compile.resources.set!(stack_name).properties
    val.nil? ? Smash.new : val._dump
  else
    Smash.new
  end
end
format_nested_stack_results(*_) click to toggle source

No formatting required on stack results

# File lib/sfn/api_provider/google.rb, line 12
def format_nested_stack_results(*_)
  {}
end
function_set_parameter?(val) click to toggle source

Determine if parameter was set via intrinsic function

@param val [Object] @return [TrueClass, FalseClass]

# File lib/sfn/api_provider/google.rb, line 44
def function_set_parameter?(val)
  if val
    val.start_with?("$(") || val.start_with?("{{")
  end
end
populate_parameters!(template, opts = {}) click to toggle source

Set parameters into parent resource properites

Calls superclass method
# File lib/sfn/api_provider/google.rb, line 51
def populate_parameters!(template, opts = {})
  result = super
  result.each_pair do |key, value|
    if template.parent
      template.parent.compile.resources.set!(template.name).properties.set!(key, value)
    else
      template.compile.resources.set!(template.name).properties.set!(key, value)
    end
  end
  {}
end
store_template(*_) click to toggle source

Disable remote template storage

# File lib/sfn/api_provider/google.rb, line 8
def store_template(*_)
end
template_content(thing, *_) click to toggle source

Override template content extraction to disable scrub behavior

@param thing [SparkleFormation, Hash] @return [Hash]

# File lib/sfn/api_provider/google.rb, line 72
def template_content(thing, *_)
  if thing.is_a?(SparkleFormation)
    config[:sparkle_dump] ? thing.sparkle_dump : thing.dump
  else
    thing
  end
end
validate_nesting_bucket!() click to toggle source

Override requirement of nesting bucket

# File lib/sfn/api_provider/google.rb, line 64
def validate_nesting_bucket!
  true
end
validate_stack_parameter(*_) click to toggle source

Disable parameter validate as we can't adjust them without template modifications

# File lib/sfn/api_provider/google.rb, line 36
def validate_stack_parameter(*_)
  true
end