class Lono::Configset::Strategy::Dsl

Public Class Methods

new(options={}) click to toggle source
Calls superclass method Lono::Configset::Strategy::Base::new
# File lib/lono/configset/strategy/dsl.rb, line 6
def initialize(options={})
  super
  @structure = {} # holds in memory the configset hash structure to build AWS::CloudFormation::Init
  @current = "main" # current configset
  @command_counts = Hash.new(0)
  @tracked = []
  # Also support ability to add AWS::CloudFormation::Authentication
  @authentication = nil # holds IAM policy info to build AWS::CloudFormation::Authentication
end

Public Instance Methods

find_evaluation_path() click to toggle source
# File lib/lono/configset/strategy/dsl.rb, line 16
def find_evaluation_path
  "#{@root}/lib/configset.rb"
end
load() click to toggle source
# File lib/lono/configset/strategy/dsl.rb, line 20
def load
  evaluate_file(@evaluation_path)
  configsets = @configsets || @tracked.uniq
  configsets = ["main"] if configsets.empty?
  configsets_structure = {"configSets" => {"default" => configsets}}.merge(@structure)
  full = { "AWS::CloudFormation::Init" => configsets_structure }
  full.deep_stringify_keys!
end