cfn-model 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/cfn-model/parser/cfn_parser.rb +3 -2
- data/lib/cfn-model/transforms/serverless.rb +17 -2
- metadata +6 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7671033cb2d190bc7782352c1331f8529b1ec1ad3debe22802e3e4ef49d7faf9
|
4
|
+
data.tar.gz: 68949533edc714d14032fd4719ccd70dc71d5349f2b8e414a48f75fa31fa5dd5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '09be423398f6a8b9faba6765d12073c71309359902055a6cc3cf45048e3cd435221e0405ee86564022e7d0d9d0185a4218ceb622ff7f183ff2c39c2bdf0d4d28'
|
7
|
+
data.tar.gz: 4e7757f0c6f7c4a610e071bdd5e544ec345f9e7fc46513339daf217ee018c47d259866661216be662eb751655e82d2eb093bd8c8f628311fab936f285797f0df
|
@@ -281,7 +281,7 @@ class CfnParser
|
|
281
281
|
|
282
282
|
def map_non_aws_resource_name_to_class_name(module_names)
|
283
283
|
# this is a little hacky. we've been ignoring Custom so more for
|
284
|
-
# backward compat.
|
284
|
+
# backward compat. for Alexa and other transformed resources just jam the whole
|
285
285
|
# thing together
|
286
286
|
if module_names.first == 'Custom'
|
287
287
|
first_module_index = 1
|
@@ -308,7 +308,8 @@ class CfnParser
|
|
308
308
|
else
|
309
309
|
custom_resource_class_name = map_non_aws_resource_name_to_class_name(module_names)
|
310
310
|
begin
|
311
|
-
|
311
|
+
custom_class = Object.const_get custom_resource_class_name
|
312
|
+
resource_class = custom_class if custom_class.is_a?(ModelElement)
|
312
313
|
rescue NameError
|
313
314
|
Object.const_set(custom_resource_class_name, resource_class)
|
314
315
|
end
|
@@ -112,8 +112,14 @@ class CfnModel
|
|
112
112
|
resource_name,
|
113
113
|
with_line_numbers)
|
114
114
|
|
115
|
-
cfn_hash['Resources'][resource_name] = lambda_function
|
116
|
-
|
115
|
+
cfn_hash['Resources'][resource_name] = lambda_function(
|
116
|
+
handler: lambda_fn_params[:handler],
|
117
|
+
code_bucket: lambda_fn_params[:code_bucket],
|
118
|
+
code_key: lambda_fn_params[:code_key],
|
119
|
+
role: lambda_fn_params[:role],
|
120
|
+
runtime: lambda_fn_params[:runtime],
|
121
|
+
with_line_numbers: lambda_fn_params[:with_line_numbers]
|
122
|
+
)
|
117
123
|
unless serverless_function['Properties']['Role']
|
118
124
|
cfn_hash['Resources'][resource_name + 'Role'] = function_role(serverless_function,
|
119
125
|
resource_name,
|
@@ -122,6 +128,15 @@ class CfnModel
|
|
122
128
|
|
123
129
|
transform_function_events(cfn_hash, serverless_function, resource_name, with_line_numbers) if \
|
124
130
|
serverless_function['Properties']['Events']
|
131
|
+
|
132
|
+
# Handle passing along cfn-nag specific metadata. SAM itself does not support metadata during transformation.
|
133
|
+
# https://github.com/aws/serverless-application-model/issues/264
|
134
|
+
if serverless_function.key?('Metadata') && serverless_function['Metadata'].key?('cfn_nag')
|
135
|
+
cfn_hash['Resources'][resource_name]['Metadata'] = serverless_function['Metadata']
|
136
|
+
unless serverless_function['Properties']['Role']
|
137
|
+
cfn_hash['Resources'][resource_name + 'Role']['Metadata'] = serverless_function['Metadata']
|
138
|
+
end
|
139
|
+
end
|
125
140
|
end
|
126
141
|
|
127
142
|
def lambda_service_can_assume_role
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cfn-model
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eric Kascic
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubocop
|
@@ -156,16 +156,17 @@ require_paths:
|
|
156
156
|
- lib
|
157
157
|
required_ruby_version: !ruby/object:Gem::Requirement
|
158
158
|
requirements:
|
159
|
-
- - "
|
159
|
+
- - ">="
|
160
160
|
- !ruby/object:Gem::Version
|
161
|
-
version:
|
161
|
+
version: 2.5.0
|
162
162
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
164
|
- - ">="
|
165
165
|
- !ruby/object:Gem::Version
|
166
166
|
version: '0'
|
167
167
|
requirements: []
|
168
|
-
|
168
|
+
rubyforge_project:
|
169
|
+
rubygems_version: 2.7.6
|
169
170
|
signing_key:
|
170
171
|
specification_version: 4
|
171
172
|
summary: cfn-model
|