Class: Lono::AppFile::Build::LambdaLayer

Inherits:
Object
  • Object
show all
Defined in:
lib/lono/app_file/build/lambda_layer.rb,
lib/lono/app_file/build/lambda_layer/ruby_packager.rb

Defined Under Namespace

Classes: RubyPackager

Instance Method Summary collapse

Constructor Details

#initialize(blueprint, registry_item) ⇒ LambdaLayer

Returns a new instance of LambdaLayer.



3
4
5
# File 'lib/lono/app_file/build/lambda_layer.rb', line 3

def initialize(blueprint, registry_item)
  @blueprint, @registry_item = blueprint, registry_item
end

Instance Method Details

#buildObject



7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/lono/app_file/build/lambda_layer.rb', line 7

def build
  lang = @registry_item.options[:lang]
  unless lang =~ /ruby/
    puts "WARN: Currently only support ruby lambda layers".color(:yellow)
    return
  end

  klass_name = "Lono::AppFile::Build::LambdaLayer::#{lang.camelize}Packager"
  klass = klass_name.constantize
  packager = klass.new(@blueprint, @registry_item)
  packager.build
end