Skip to content

Commit 8d57959

Browse files
authored
Bugfix/silent flag and subcomponents with package command (#143)
* dummy resolve on evaluate for inlining * version bump
1 parent 2231d7f commit 8d57959

3 files changed

Lines changed: 28 additions & 7 deletions

File tree

lib/cfhighlander.compiler.rb

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -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

lib/cfhighlander.model.component.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,7 @@ def set_cfndsl_model(value)
241241
end
242242
def eval_cfndsl
243243
compiler = Cfhighlander::Compiler::ComponentCompiler.new self
244+
compiler.lambda_mock_resolve = true
244245
@cfn_model = compiler.evaluateCloudFormation().as_json
245246
@cfn_model_raw = JSON.parse(@cfn_model.to_json)
246247
@outputs = (

lib/cfhighlander.version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module Cfhighlander
2-
VERSION="0.11.0".freeze
2+
VERSION="0.11.1".freeze
33
end

0 commit comments

Comments
 (0)