Skip to content

Commit 744dffc

Browse files
authored
Merge pull request #161 from theonestack/master
merge back fixes
2 parents 34cef90 + 566ea4f commit 744dffc

4 files changed

Lines changed: 31 additions & 9 deletions

File tree

Gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@ gem 'rubyzip', '>= 2.0.0', '<3'
1212
gem 'git', '~> 1.4', '<2'
1313
gem 'rspec'
1414
gem 'octokit', '~> 4.0'
15-
gem 'duplicate','~> 1.1'
15+
gem 'duplicate','~> 1.1'

lib/util/cloudformation.util.rb

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,8 +110,13 @@ def self.inline_elements(element_name, component, template)
110110
model = sub_component.component_loaded.cfn_model_raw
111111
model[element_name].each do |resource, value|
112112
# effective extraction of child resource into parent
113-
parent_model[element_name] = {} unless parent_model.key? element_name
114-
parent_model[element_name][resource] = value
113+
# allows for line components to use - or _ in the component name
114+
# and still generate valid references
115+
safe_resource_name = resource.gsub('-','').gsub('_','')
116+
unless element_name == 'Outputs' && resource.end_with?('CfTemplateUrl')
117+
parent_model[element_name] = {} unless parent_model.key? element_name
118+
parent_model[element_name][safe_resource_name] = value
119+
end
115120
end if model.key? element_name
116121
end
117122
end

spec/data/flatten/c.compiled.flat.yaml

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,16 @@ Resources:
2121
- c1bbucketnames
2222
- default
2323
- name
24+
c1cBucket:
25+
Type: AWS::S3::Bucket
26+
c1cc1NamedBucket:
27+
Type: AWS::S3::Bucket
28+
Properties:
29+
BucketName:
30+
Fn::FindInMap:
31+
- c1-cbucketnames
32+
- default
33+
- name
2434
c2Bucket:
2535
Type: AWS::S3::Bucket
2636
Properties:
@@ -40,19 +50,18 @@ Outputs:
4050
c1OutParam:
4151
Value:
4252
Ref: Bucket
43-
c1aCfTemplateUrl:
44-
Value: "/c1.compiled.yaml"
4553
c1aCfTemplateVersion:
4654
Value: latest
4755
c1bc1OutParam:
4856
Value:
4957
Ref: c1bBucket
50-
c1bCfTemplateUrl:
51-
Value: "/c1.compiled.yaml"
5258
c1bCfTemplateVersion:
5359
Value: latest
54-
c2CfTemplateUrl:
55-
Value: "/c2.compiled.yaml"
60+
c1cc1OutParam:
61+
Value:
62+
Ref: c1-cBucket
63+
c1cCfTemplateVersion:
64+
Value: latest
5665
c2CfTemplateVersion:
5766
Value: latest
5867
Parameters:
@@ -68,6 +77,10 @@ Parameters:
6877
Type: String
6978
Default: ''
7079
NoEcho: false
80+
c1cbubbleParam:
81+
Type: String
82+
Default: ''
83+
NoEcho: false
7184
Description: c@latest - vlatest
7285
Conditions:
7386
UseC1:
@@ -81,3 +94,6 @@ Mappings:
8194
c1bbucketnames:
8295
default:
8396
name: mybucketname
97+
c1cbucketnames:
98+
default:
99+
name: mybucketname

spec/data/flatten/src/c.cfhighlander.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010

1111
Component template: 'c1', name: 'c1a', render: Inline
1212
Component template: 'c1', name: 'c1b', render: Inline
13+
Component template: 'c1', name: 'c1-c', render: Inline
1314

1415
Component template:'c2',name:'c2', render: Inline do
1516
parameter name: 'c1OutParam', value: FnIf('UseC1',

0 commit comments

Comments
 (0)