cloudformation-ruby-dsl 0.5.4 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -3
  3. data/bin/cfntemplate-to-ruby +2 -0
  4. data/cloudformation-ruby-dsl.gemspec +4 -3
  5. data/examples/cloudformation-ruby-script.rb +9 -9
  6. data/lib/cloudformation-ruby-dsl/cfntemplate.rb +187 -341
  7. data/lib/cloudformation-ruby-dsl/dsl.rb +249 -0
  8. data/lib/cloudformation-ruby-dsl/version.rb +1 -1
  9. metadata +34 -79
  10. data/vendor/AWSCloudFormation-1.0.12/README.TXT +0 -44
  11. data/vendor/AWSCloudFormation-1.0.12/RELEASENOTES.TXT +0 -6
  12. data/vendor/AWSCloudFormation-1.0.12/THIRDPARTYLICENSE.TXT +0 -824
  13. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-cancel-update-stack +0 -9
  14. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-cancel-update-stack.cmd +0 -19
  15. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-cmd +0 -15
  16. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-cmd.cmd +0 -42
  17. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-create-stack +0 -7
  18. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-create-stack.cmd +0 -19
  19. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-delete-stack +0 -7
  20. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-delete-stack.cmd +0 -19
  21. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-events +0 -7
  22. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-events.cmd +0 -19
  23. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-resource +0 -7
  24. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-resource.cmd +0 -19
  25. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-resources +0 -7
  26. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-resources.cmd +0 -19
  27. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stacks +0 -7
  28. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stacks.cmd +0 -19
  29. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-get-template +0 -7
  30. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-get-template.cmd +0 -19
  31. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-list-stack-resources +0 -7
  32. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-list-stack-resources.cmd +0 -19
  33. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-list-stacks +0 -7
  34. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-list-stacks.cmd +0 -19
  35. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-update-stack +0 -7
  36. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-update-stack.cmd +0 -19
  37. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-validate-template +0 -7
  38. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-validate-template.cmd +0 -19
  39. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-version +0 -7
  40. data/vendor/AWSCloudFormation-1.0.12/bin/cfn-version.cmd +0 -21
  41. data/vendor/AWSCloudFormation-1.0.12/bin/service +0 -29
  42. data/vendor/AWSCloudFormation-1.0.12/bin/service.cmd +0 -74
  43. data/vendor/AWSCloudFormation-1.0.12/credential-file-path.template +0 -2
  44. data/vendor/AWSCloudFormation-1.0.12/lib/CliCommando-1.0.jar +0 -0
  45. data/vendor/AWSCloudFormation-1.0.12/lib/activation-1.1.jar +0 -0
  46. data/vendor/AWSCloudFormation-1.0.12/lib/commons-cli-1.1.jar +0 -0
  47. data/vendor/AWSCloudFormation-1.0.12/lib/commons-codec-1.3.jar +0 -0
  48. data/vendor/AWSCloudFormation-1.0.12/lib/commons-discovery-0.2.jar +0 -0
  49. data/vendor/AWSCloudFormation-1.0.12/lib/commons-httpclient-3.0.jar +0 -0
  50. data/vendor/AWSCloudFormation-1.0.12/lib/commons-logging-1.0.4.jar +0 -0
  51. data/vendor/AWSCloudFormation-1.0.12/lib/commons-logging-api-1.1.1.jar +0 -0
  52. data/vendor/AWSCloudFormation-1.0.12/lib/httpclient-4.2.jar +0 -0
  53. data/vendor/AWSCloudFormation-1.0.12/lib/jaxb-api-2.0.jar +0 -0
  54. data/vendor/AWSCloudFormation-1.0.12/lib/jaxb-impl-2.0.1.jar +0 -0
  55. data/vendor/AWSCloudFormation-1.0.12/lib/jaxws-api-2.0.jar +0 -0
  56. data/vendor/AWSCloudFormation-1.0.12/lib/jdom-1.0.jar +0 -0
  57. data/vendor/AWSCloudFormation-1.0.12/lib/log4j.jar +0 -0
  58. data/vendor/AWSCloudFormation-1.0.12/lib/serializer.jar +0 -0
  59. data/vendor/AWSCloudFormation-1.0.12/lib/service.jar +0 -0
  60. data/vendor/AWSCloudFormation-1.0.12/lib/stax-api-1.0.1.jar +0 -0
  61. data/vendor/AWSCloudFormation-1.0.12/lib/wsdl4j-1.6.1.jar +0 -0
  62. data/vendor/AWSCloudFormation-1.0.12/lib/wss4j-1.5.7.jar +0 -0
  63. data/vendor/AWSCloudFormation-1.0.12/lib/wstx-asl-3.2.0.jar +0 -0
  64. data/vendor/AWSCloudFormation-1.0.12/lib/xalan-j2-2.7.0.jar +0 -0
  65. data/vendor/AWSCloudFormation-1.0.12/lib/xfire-all-1.2.6.jar +0 -0
  66. data/vendor/AWSCloudFormation-1.0.12/lib/xfire-jsr181-api-1.0-M1.jar +0 -0
  67. data/vendor/AWSCloudFormation-1.0.12/lib/xmlsec-1.4.2.jar +0 -0
  68. data/vendor/AWSCloudFormation-1.0.12/license.txt +0 -96
  69. data/vendor/AWSCloudFormation-1.0.12/notice.txt +0 -40
@@ -0,0 +1,249 @@
1
+ require 'json'
2
+
3
+ ############################ Utility functions
4
+
5
+ # Formats a template as JSON
6
+ def generate_template(template)
7
+ format_json template, !template.nopretty
8
+ end
9
+
10
+ def generate_json(data, pretty = true)
11
+ # Raw formatting
12
+ return JSON.generate(data) unless pretty
13
+
14
+ # Pretty formatting
15
+ JSON.pretty_generate(data)
16
+ end
17
+
18
+
19
+ ############################# Generic DSL
20
+
21
+ class JsonObjectDSL
22
+ def initialize(&block)
23
+ @dict = {}
24
+ instance_eval &block
25
+ end
26
+
27
+ def value(values)
28
+ @dict.update(values)
29
+ end
30
+
31
+ def default(key, value)
32
+ @dict[key] ||= value
33
+ end
34
+
35
+ def to_json(*args)
36
+ @dict.to_json(*args)
37
+ end
38
+
39
+ def print()
40
+ puts JSON.pretty_generate(self)
41
+ end
42
+ end
43
+
44
+ ############################# CloudFormation DSL
45
+
46
+ # Main entry point
47
+ def raw_template(parameters = {}, stack_name = nil, aws_region = default_region, nopretty = false, &block)
48
+ TemplateDSL.new(parameters, stack_name, aws_region, nopretty, &block)
49
+ end
50
+
51
+ def default_region
52
+ ENV['EC2_REGION'] || ENV['AWS_DEFAULT_REGION'] || 'us-east-1'
53
+ end
54
+
55
+ # Core interpreter for the DSL
56
+ class TemplateDSL < JsonObjectDSL
57
+ attr_reader :parameters, :aws_region, :nopretty, :stack_name
58
+
59
+ def initialize(parameters = {}, stack_name = nil, aws_region = default_region, nopretty = false)
60
+ @parameters = parameters
61
+ @stack_name = stack_name
62
+ @aws_region = aws_region
63
+ @nopretty = nopretty
64
+ super()
65
+ end
66
+
67
+ def exec!()
68
+ cfn(self)
69
+ end
70
+
71
+ def parameter(name, options)
72
+ default(:Parameters, {})[name] = options
73
+ @parameters[name] ||= options[:Default]
74
+ end
75
+
76
+ # Find parameters where the specified attribute is true then remove the attribute from the cfn template.
77
+ def excise_parameter_attribute!(attribute)
78
+ marked_parameters = []
79
+ @dict.fetch(:Parameters, {}).each do |param, options|
80
+ if options.delete(attribute.to_sym) or options.delete(attribute.to_s)
81
+ marked_parameters << param
82
+ end
83
+ end
84
+ marked_parameters
85
+ end
86
+
87
+ def mapping(name, options)
88
+ # if options is a string and a valid file then the script will process the external file.
89
+ default(:Mappings, {})[name] = \
90
+ if options.is_a?(Hash); options
91
+ elsif options.is_a?(String); load_from_file(options)['Mappings'][name]
92
+ else; raise("Options for mapping #{name} is neither a string or a hash. Error!")
93
+ end
94
+ end
95
+
96
+ def load_from_file(filename)
97
+ file = File.open(filename)
98
+
99
+ begin
100
+ # Figure out what the file extension is and process accordingly.
101
+ contents = case File.extname(filename)
102
+ when ".rb"; eval(file.read, nil, filename)
103
+ when ".json"; JSON.load(file)
104
+ when ".yaml"; YAML::load(file)
105
+ else; raise("Do not recognize extension of #{filename}.")
106
+ end
107
+ ensure
108
+ file.close
109
+ end
110
+ contents
111
+ end
112
+
113
+ def excise_tags!
114
+ tags = @dict.fetch(:Tags, {})
115
+ @dict.delete(:Tags)
116
+ tags
117
+ end
118
+
119
+ def tag(tag)
120
+ tag.each do | name, value |
121
+ default(:Tags, {})[name] = value
122
+ end
123
+ end
124
+
125
+ def condition(name, options) default(:Conditions, {})[name] = options end
126
+
127
+ def resource(name, options) default(:Resources, {})[name] = options end
128
+
129
+ def output(name, options) default(:Outputs, {})[name] = options end
130
+
131
+ def find_in_map(map, key, name)
132
+ # Eagerly evaluate mappings when all keys are known at template expansion time
133
+ if map.is_a?(String) && key.is_a?(String) && name.is_a?(String)
134
+ # We don't know whether the map was built with string keys or symbol keys. Try both.
135
+ def get(map, key) map[key] || map.fetch(key.to_sym) end
136
+ get(get(@dict.fetch(:Mappings).fetch(map), key), name)
137
+ else
138
+ { :'Fn::FindInMap' => [ map, key, name ] }
139
+ end
140
+ end
141
+ end
142
+
143
+ def base64(value) { :'Fn::Base64' => value } end
144
+
145
+ def find_in_map(map, key, name) { :'Fn::FindInMap' => [ map, key, name ] } end
146
+
147
+ def get_att(resource, attribute) { :'Fn::GetAtt' => [ resource, attribute ] } end
148
+
149
+ def get_azs(region = '') { :'Fn::GetAZs' => region } end
150
+
151
+ def join(delim, *list)
152
+ case list.length
153
+ when 0 then ''
154
+ when 1 then list[0]
155
+ else join_list(delim,list)
156
+ end
157
+ end
158
+
159
+ # Variant of join that matches the native CFN syntax.
160
+ def join_list(delim, list) { :'Fn::Join' => [ delim, list ] } end
161
+
162
+ def equal(one, two) { :'Fn::Equals' => [one, two] } end
163
+
164
+ def fn_not(condition) { :'Fn::Not' => [condition] } end
165
+
166
+ def fn_or(*condition_list)
167
+ case condition_list.length
168
+ when 0..1 then raise "fn_or needs at least 2 items."
169
+ when 2..10 then { :'Fn::Or' => condition_list }
170
+ else raise "fn_or needs a list of 2-10 items that evaluate to true/false."
171
+ end
172
+ end
173
+
174
+ def fn_and(*condition_list)
175
+ case condition_list.length
176
+ when 0..1 then raise "fn_and needs at least 2 items."
177
+ when 2..10 then { :'Fn::And' => condition_list }
178
+ else raise "fn_and needs a list of 2-10 items that evaluate to true/false."
179
+ end
180
+ end
181
+
182
+ def fn_if(cond, if_true, if_false) { :'Fn::If' => [cond, if_true, if_false] } end
183
+
184
+ def not_equal(one, two) fn_not(equal(one,two)) end
185
+
186
+ def select(index, list) { :'Fn::Select' => [ index, list ] } end
187
+
188
+ def ref(name) { :Ref => name } end
189
+
190
+ def aws_account_id() ref("AWS::AccountId") end
191
+
192
+ def aws_notification_arns() ref("AWS::NotificationARNs") end
193
+
194
+ def aws_no_value() ref("AWS::NoValue") end
195
+
196
+ def aws_stack_id() ref("AWS::StackId") end
197
+
198
+ def aws_stack_name() ref("AWS::StackName") end
199
+
200
+ # deprecated, for backward compatibility
201
+ def no_value()
202
+ warn_deprecated('no_value()', 'aws_no_value()')
203
+ aws_no_value()
204
+ end
205
+
206
+ # Read the specified file and return its value as a string literal
207
+ def file(filename) File.read(File.absolute_path(filename, File.dirname($PROGRAM_NAME))) end
208
+
209
+ # Interpolates a string like "NAME={{ref('Service')}}" and returns a CloudFormation "Fn::Join"
210
+ # operation to collect the results. Anything between {{ and }} is interpreted as a Ruby expression
211
+ # and eval'd. This is especially useful with Ruby "here" documents.
212
+ # Local variables may also be exposed to the string via the `locals` hash.
213
+ def interpolate(string, locals={})
214
+ list = []
215
+ while string.length > 0
216
+ head, match, string = string.partition(/\{\{.*?\}\}/)
217
+ list << head if head.length > 0
218
+ list << eval(match[2..-3], nil, 'interpolated string') if match.length > 0
219
+ end
220
+
221
+ # Split out strings in an array by newline, for visibility
222
+ list = list.flat_map {|value| value.is_a?(String) ? value.lines.to_a : value }
223
+ join('', *list)
224
+ end
225
+
226
+ def join_interpolate(delim, string)
227
+ $stderr.puts "join_interpolate(delim,string) has been deprecated; use interpolate(string) instead"
228
+ interpolate(string)
229
+ end
230
+
231
+ # This class is used by erb templates so they can access the parameters passed
232
+ class Namespace
233
+ attr_accessor :params
234
+ def initialize(hash)
235
+ @params = hash
236
+ end
237
+ def get_binding
238
+ binding
239
+ end
240
+ end
241
+
242
+ # Combines the provided ERB template with optional parameters
243
+ def erb_template(filename, params = {})
244
+ ERB.new(file(filename), nil, '-').result(Namespace.new(params).get_binding)
245
+ end
246
+
247
+ def warn_deprecated(old, new)
248
+ $stderr.puts "Warning: '#{old}' has been deprecated. Please update your template to use '#{new}' instead."
249
+ end
@@ -15,7 +15,7 @@
15
15
  module Cfn
16
16
  module Ruby
17
17
  module Dsl
18
- VERSION = "0.5.4"
18
+ VERSION = "1.0.0"
19
19
  end
20
20
  end
21
21
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudformation-ruby-dsl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.4
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shawn Smith
@@ -15,65 +15,79 @@ authors:
15
15
  autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
- date: 2015-05-19 00:00:00.000000000 Z
18
+ date: 2015-06-19 00:00:00.000000000 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: detabulator
22
22
  requirement: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  type: :runtime
28
28
  prerelease: false
29
29
  version_requirements: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: json
36
36
  requirement: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  type: :runtime
42
42
  prerelease: false
43
43
  version_requirements: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  - !ruby/object:Gem::Dependency
49
- name: xml-simple
49
+ name: bundler
50
50
  requirement: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
57
  version_requirements: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  - !ruby/object:Gem::Dependency
63
- name: bundler
63
+ name: aws-sdk
64
+ requirement: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ type: :runtime
70
+ prerelease: false
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ - !ruby/object:Gem::Dependency
77
+ name: diffy
64
78
  requirement: !ruby/object:Gem::Requirement
65
79
  requirements:
66
- - - '>='
80
+ - - ">="
67
81
  - !ruby/object:Gem::Version
68
82
  version: '0'
69
83
  type: :runtime
70
84
  prerelease: false
71
85
  version_requirements: !ruby/object:Gem::Requirement
72
86
  requirements:
73
- - - '>='
87
+ - - ">="
74
88
  - !ruby/object:Gem::Version
75
89
  version: '0'
76
- description: Ruby DSL library that provides a wrapper around the cfn-cmd.
90
+ description: Ruby DSL library that provides a wrapper around the CloudFormation.
77
91
  email:
78
92
  - Shawn.Smith@bazaarvoice.com
79
93
  - Dave.Barcelo@bazaarvoice.com
@@ -88,7 +102,7 @@ executables:
88
102
  extensions: []
89
103
  extra_rdoc_files: []
90
104
  files:
91
- - .gitignore
105
+ - ".gitignore"
92
106
  - Gemfile
93
107
  - LICENSE.txt
94
108
  - README.md
@@ -110,69 +124,10 @@ files:
110
124
  - initial_contributions.md
111
125
  - lib/cloudformation-ruby-dsl.rb
112
126
  - lib/cloudformation-ruby-dsl/cfntemplate.rb
127
+ - lib/cloudformation-ruby-dsl/dsl.rb
113
128
  - lib/cloudformation-ruby-dsl/spotprice.rb
114
129
  - lib/cloudformation-ruby-dsl/table.rb
115
130
  - lib/cloudformation-ruby-dsl/version.rb
116
- - vendor/AWSCloudFormation-1.0.12/README.TXT
117
- - vendor/AWSCloudFormation-1.0.12/RELEASENOTES.TXT
118
- - vendor/AWSCloudFormation-1.0.12/THIRDPARTYLICENSE.TXT
119
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-cancel-update-stack
120
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-cancel-update-stack.cmd
121
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-cmd
122
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-cmd.cmd
123
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-create-stack
124
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-create-stack.cmd
125
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-delete-stack
126
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-delete-stack.cmd
127
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-events
128
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-events.cmd
129
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-resource
130
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-resource.cmd
131
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-resources
132
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stack-resources.cmd
133
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stacks
134
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-describe-stacks.cmd
135
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-get-template
136
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-get-template.cmd
137
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-list-stack-resources
138
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-list-stack-resources.cmd
139
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-list-stacks
140
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-list-stacks.cmd
141
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-update-stack
142
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-update-stack.cmd
143
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-validate-template
144
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-validate-template.cmd
145
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-version
146
- - vendor/AWSCloudFormation-1.0.12/bin/cfn-version.cmd
147
- - vendor/AWSCloudFormation-1.0.12/bin/service
148
- - vendor/AWSCloudFormation-1.0.12/bin/service.cmd
149
- - vendor/AWSCloudFormation-1.0.12/credential-file-path.template
150
- - vendor/AWSCloudFormation-1.0.12/lib/CliCommando-1.0.jar
151
- - vendor/AWSCloudFormation-1.0.12/lib/activation-1.1.jar
152
- - vendor/AWSCloudFormation-1.0.12/lib/commons-cli-1.1.jar
153
- - vendor/AWSCloudFormation-1.0.12/lib/commons-codec-1.3.jar
154
- - vendor/AWSCloudFormation-1.0.12/lib/commons-discovery-0.2.jar
155
- - vendor/AWSCloudFormation-1.0.12/lib/commons-httpclient-3.0.jar
156
- - vendor/AWSCloudFormation-1.0.12/lib/commons-logging-1.0.4.jar
157
- - vendor/AWSCloudFormation-1.0.12/lib/commons-logging-api-1.1.1.jar
158
- - vendor/AWSCloudFormation-1.0.12/lib/httpclient-4.2.jar
159
- - vendor/AWSCloudFormation-1.0.12/lib/jaxb-api-2.0.jar
160
- - vendor/AWSCloudFormation-1.0.12/lib/jaxb-impl-2.0.1.jar
161
- - vendor/AWSCloudFormation-1.0.12/lib/jaxws-api-2.0.jar
162
- - vendor/AWSCloudFormation-1.0.12/lib/jdom-1.0.jar
163
- - vendor/AWSCloudFormation-1.0.12/lib/log4j.jar
164
- - vendor/AWSCloudFormation-1.0.12/lib/serializer.jar
165
- - vendor/AWSCloudFormation-1.0.12/lib/service.jar
166
- - vendor/AWSCloudFormation-1.0.12/lib/stax-api-1.0.1.jar
167
- - vendor/AWSCloudFormation-1.0.12/lib/wsdl4j-1.6.1.jar
168
- - vendor/AWSCloudFormation-1.0.12/lib/wss4j-1.5.7.jar
169
- - vendor/AWSCloudFormation-1.0.12/lib/wstx-asl-3.2.0.jar
170
- - vendor/AWSCloudFormation-1.0.12/lib/xalan-j2-2.7.0.jar
171
- - vendor/AWSCloudFormation-1.0.12/lib/xfire-all-1.2.6.jar
172
- - vendor/AWSCloudFormation-1.0.12/lib/xfire-jsr181-api-1.0-M1.jar
173
- - vendor/AWSCloudFormation-1.0.12/lib/xmlsec-1.4.2.jar
174
- - vendor/AWSCloudFormation-1.0.12/license.txt
175
- - vendor/AWSCloudFormation-1.0.12/notice.txt
176
131
  homepage: http://github.com/bazaarvoice/cloudformation-ruby-dsl
177
132
  licenses: []
178
133
  metadata: {}
@@ -183,19 +138,19 @@ require_paths:
183
138
  - bin
184
139
  required_ruby_version: !ruby/object:Gem::Requirement
185
140
  requirements:
186
- - - '>='
141
+ - - ">="
187
142
  - !ruby/object:Gem::Version
188
143
  version: '0'
189
144
  required_rubygems_version: !ruby/object:Gem::Requirement
190
145
  requirements:
191
- - - '>='
146
+ - - ">="
192
147
  - !ruby/object:Gem::Version
193
148
  version: '0'
194
149
  requirements: []
195
150
  rubyforge_project:
196
- rubygems_version: 2.0.14
151
+ rubygems_version: 2.2.2
197
152
  signing_key:
198
153
  specification_version: 4
199
- summary: Ruby DSL library that provides a wrapper around the cfn-cmd. Written by
200
- [Bazaarvoice](http://www.bazaarvoice.com).
154
+ summary: Ruby DSL library that provides a wrapper around the CloudFormation. Written
155
+ by [Bazaarvoice](http://www.bazaarvoice.com).
201
156
  test_files: []