Module: Jets::Lambda::Dsl

Extended by:
ActiveSupport::Concern
Included in:
Functions
Defined in:
lib/jets/lambda/dsl.rb

Overview

Other dsl that rely on this must implement

default_associated_resource_definition

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.add_custom_resource_extensions(base) ⇒ Object

end of included



366
367
368
369
370
371
372
373
374
375
376
377
378
379
# File 'lib/jets/lambda/dsl.rb', line 366

def self.add_custom_resource_extensions(base)
  base_path = "#{Jets.root}/app/extensions"
  unless ActiveSupport::Dependencies.autoload_paths.include?(base_path)
    ActiveSupport::Dependencies.autoload_paths += [base_path]
  end

  Dir.glob("#{base_path}/**/*.rb").each do |path|
    next unless File.file?(path)

    class_name = path.sub("#{base_path}/", '').sub(/\.rb/,'').classify
    klass = class_name.constantize # autoload
    base.extend(klass)
  end
end

.included(base) ⇒ Object



381
382
383
# File 'lib/jets/lambda/dsl.rb', line 381

def self.included(base)
  add_custom_resource_extensions(base)
end

Instance Method Details

#lambda_functionsObject



8
9
10
# File 'lib/jets/lambda/dsl.rb', line 8

def lambda_functions
  self.class.lambda_functions
end