@@ -31,7 +31,8 @@ class ComponentCompiler
3131 :cfn_template_paths ,
3232 :silent_mode ,
3333 :lambda_src_paths ,
34- :process_lambdas
34+ :process_lambdas ,
35+ :lambda_mock_resolve
3536
3637 def initialize ( component )
3738
@@ -48,6 +49,7 @@ def initialize(component)
4849 @config_yaml_path = nil
4950 @cfn_model = nil
5051 @process_lambdas = true
52+ @lambda_mock_resolve = false
5153
5254 if @@global_extensions_paths . empty?
5355 global_extensions_folder = "#{ File . dirname ( __FILE__ ) } /../cfndsl_ext"
@@ -76,6 +78,11 @@ def silent_mode=(value)
7678 @sub_components . each { |scc | scc . silent_mode = value }
7779 end
7880
81+ def lambda_mock_resolve = ( value )
82+ @lambda_mock_resolve = value
83+ @sub_components . each { |scc | scc . lambda_mock_resolve = value }
84+ end
85+
7986 def compileCfnDsl ( out_format )
8087 processLambdas unless @lambdas_processed
8188 writeConfig unless @config_written
@@ -211,7 +218,8 @@ def processLambdas()
211218 resolver = LambdaResolver . new ( @component ,
212219 lfk ,
213220 @workdir ,
214- ( not @silent_mode )
221+ ( not @silent_mode ) ,
222+ @lambda_mock_resolve
215223 )
216224 @lambda_src_paths += resolver . generateSourceArchives if @process_lambdas
217225 resolver . mergeComponentConfig
@@ -226,7 +234,8 @@ def processLambdas()
226234
227235 class LambdaResolver
228236
229- def initialize ( component , lambda_key , workdir , confirm_code_execution = true )
237+ def initialize ( component , lambda_key , workdir , confirm_code_execution = true ,
238+ mock_resolve = false )
230239 @component = component
231240 @lambda_config = @component . config [ lambda_key ]
232241 @component_dir = @component . component_dir
@@ -237,10 +246,11 @@ def initialize(component, lambda_key, workdir, confirm_code_execution = true)
237246 'version' => { }
238247 }
239248 @confirm_code_execution = confirm_code_execution
249+ @mock_resolve = mock_resolve
240250 end
241251
242252 def generateSourceArchives
243-
253+ return generateMockArchives if @mock_resolve
244254 archive_paths = [ ]
245255
246256 # Cached downloads map
@@ -389,10 +399,20 @@ def generateSourceArchives
389399 return archive_paths
390400 end
391401
402+ def generateMockArchives
403+ @lambda_config [ 'functions' ] . each do |name , _ |
404+ @metadata [ 'sha256' ] [ name ] = 'mockSHA'
405+ @metadata [ 'version' ] [ name ] = 'mockVersion'
406+ end
407+ return [ ]
408+ end
409+
392410 def mergeComponentConfig
393411 if @component . config . key? 'lambda_metadata'
394- @metadata . each do |mk , mh |
395- mh . each do |k , v | @component . config [ 'lambda_metadata' ] [ mk ] [ k ] = v end
412+ @metadata . each do |mk , mh |
413+ mh . each do |k , v |
414+ @component . config [ 'lambda_metadata' ] [ mk ] [ k ] = v
415+ end
396416 end
397417 else
398418 @component . config [ 'lambda_metadata' ] = @metadata
0 commit comments