cloudformation-tool 1.5.13 → 1.5.14

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3f75b3fa01c1cfdf40a3122aa51178d591cd94b515dc2665e30693e2f599536a
4
- data.tar.gz: 9a40860146bc044646b8427bbb9343e10309fdc0931a8145b5e96f363431f2dd
3
+ metadata.gz: a9db3672b97a22828e57d6c906a78831153a620bca1632f9f9748f72e27c9db7
4
+ data.tar.gz: ad0eca7cc6ae46eaf3b0a55c57fd8e85695a27b8c97f71e55492e0a95bd208d2
5
5
  SHA512:
6
- metadata.gz: 7e4c95847703f3fc2cb3e07fb82884fe697e9c9568e90d43a8883613383d0e2f12f1e143354db2bc1da53fe0da8bb01aed34a8d4e9abdb7487c9682bb405ccfb
7
- data.tar.gz: d28a83a9a3a5c67fb640560e2e71fd82640b415188aa0098f3eb25fbd51f3eab06c31a4c116f3a876667fd7f549c3058da1ad9ec64840ceebe37faabf383ab02
6
+ metadata.gz: 0452d98f9e5426f6924cc8caf53430b8936fc9ac38187abda7ff9d780cf921330f0f85b592cab7be9b26918e3f54585892e61548e747721dfc46973ec64e04aa
7
+ data.tar.gz: 6d50f5dd121f968799fd5754a6f54726cd0c64925ce9bd79a27f4360ee710c65a914fc36f3d740536664c4ffc1c1a03b5f055c21848deb2e976900c3f2060dc1
@@ -121,17 +121,34 @@ module CloudFormationTool
121
121
  end
122
122
  end
123
123
  else
124
- # warn against duplicate entities, resources or outputs
125
- (@data[category] ||= {}).keys.each do |key|
126
- if catdata.has_key? key
127
- raise CloudFormationTool::Errors::AppError, "Error compiling #{path} - duplicate '#{category}' item: #{key}"
128
- end
124
+ case catdata
125
+ when Hash
126
+ # warn against duplicate entities, resources or outputs
127
+ (@data[category] ||= {}).keys.each do |key|
128
+ if catdata.has_key? key
129
+ raise CloudFormationTool::Errors::AppError, "Error compiling #{path} - duplicate '#{category}' item: #{key}"
130
+ end
131
+ end
132
+ catdata = fixrefs(catdata, rewrites)
133
+ # add included properties
134
+ @data[category].merge! catdata
135
+ when Array
136
+ if @data[category].nil?
137
+ @data[category] = catdata
138
+ elsif @data[category].is_a? Array
139
+ @data[category] += catdata
140
+ else
141
+ raise CloudFormationTool::Errors::AppError, "Error compiling #{path} - conflicting types for '#{category}'"
142
+ end
143
+ else
144
+ if @data[category].nil?
145
+ @data[category] = catdata
146
+ else
147
+ raise CloudFormationTool::Errors::AppError, "Error compiling #{path} - I do not know how to merge non-list non-dictionary '#{category}'!"
148
+ end
129
149
  end
130
- catdata = fixrefs(catdata, rewrites)
131
150
  end
132
151
 
133
- # add included properties
134
- @data[category].merge! catdata
135
152
  end
136
153
  end
137
154
  end
@@ -1,3 +1,3 @@
1
1
  module CloudFormationTool
2
- VERSION = '1.5.13'
2
+ VERSION = '1.5.14'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudformation-tool
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.13
4
+ version: 1.5.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oded Arbel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-22 00:00:00.000000000 Z
11
+ date: 2023-09-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake