cloud_former 0.5.0 → 0.5.1

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
  SHA1:
3
- metadata.gz: df57f4eb0602f3095f6a30d112a6e403f4f44191
4
- data.tar.gz: 8814c1be794511cb9e3b112f08856c0d719fb655
3
+ metadata.gz: baee3d2fb7fd5cd5764928dbc1ffa380260d6cbb
4
+ data.tar.gz: 5486fa3e50f83d11103c959813c0b88f2341ebfb
5
5
  SHA512:
6
- metadata.gz: 10e270789e6da892b451f45d7d66bf04c9c2c75cb437f7212a09890513f514ad83e0507c9f00b5bb6439f025dc9607f517c672e10b73f4cbdf23750f6739e9a8
7
- data.tar.gz: 40cf87c4c345782589a13d2307b4b6131c788c74b500d2e07a711f1e2bc5b4a4509d9e9801120d79c0117044bb847db8f68c81b2c75e3200d62970d9e5f15442
6
+ metadata.gz: 450c00c808907d6e7b6d4398b13782f22aa614cc073bf3c4f373531f7532db0ad54ea3bcaacd69009214f5d52a5a9cb5f614eccee0bce77e93d9996c09357e79
7
+ data.tar.gz: 96dea3caa49659f4b7d41ad8b996029e8e1eab0cf8d3a47c0d3ed184ccfe5c722e8accf9564f0d689cb2856019d3fe9fdeb453ac5fad38c1be95c7cc84648bdf
data/.rubocop.yml ADDED
@@ -0,0 +1,82 @@
1
+ AllCops:
2
+ Include:
3
+ - '**/Rakefile'
4
+
5
+ Metrics/AbcSize:
6
+ Max: 20
7
+
8
+ Metrics/LineLength:
9
+ Max: 140
10
+
11
+ Metrics/ModuleLength:
12
+ Max: 2000
13
+
14
+ Metrics/ClassLength:
15
+ Max: 2000
16
+
17
+ Metrics/MethodLength:
18
+ Max: 2000
19
+
20
+ Metrics/AbcSize:
21
+ Max: 2000
22
+
23
+ Metrics/ParameterLists:
24
+ Max: 15
25
+ CountKeywordArgs: false
26
+
27
+ Metrics/CyclomaticComplexity:
28
+ Max: 600
29
+
30
+ Metrics/PerceivedComplexity:
31
+ Max: 600
32
+
33
+ Style/ClassAndModuleChildren:
34
+ Enabled: false
35
+
36
+ Style/IfUnlessModifier:
37
+ Enabled: false
38
+
39
+ Style/PredicateName:
40
+ Enabled: false
41
+
42
+ Style/RedundantSelf:
43
+ Enabled: false
44
+
45
+ Style/SingleLineBlockParams:
46
+ Methods: []
47
+
48
+ Style/StringLiterals:
49
+ Enabled: false
50
+
51
+ Style/SpaceInsideBrackets:
52
+ Enabled: false
53
+
54
+ Style/TrailingComma:
55
+ EnforcedStyleForMultiline: comma
56
+
57
+ Style/WordArray:
58
+ MinSize: 5
59
+
60
+ Style/EmptyLinesAroundClassBody:
61
+ Enabled: false
62
+
63
+ Style/MultilineOperationIndentation:
64
+ EnforcedStyle: indented
65
+
66
+ Style/PerlBackrefs:
67
+ Enabled: false
68
+
69
+ Style/TrailingComma:
70
+ EnforcedStyleForMultiline: comma
71
+
72
+ Lint/EndAlignment:
73
+ AlignWith: variable
74
+
75
+ Lint/UnderscorePrefixedVariableName:
76
+ Enabled: false
77
+
78
+ Lint/HandleExceptions:
79
+ Enabled: false
80
+
81
+ Documentation:
82
+ Enabled: false
data/lib/cloud_former.rb CHANGED
@@ -3,7 +3,6 @@ require 'cloud_former/has_properties_and_attributes'
3
3
  require 'cloud_former/makes_json'
4
4
 
5
5
  module CloudFormer
6
-
7
6
  autoload :Boolean, 'cloud_former/boolean'
8
7
  autoload :Parameter, 'cloud_former/parameters/parameter'
9
8
  autoload :CommaDelimitedListParameter, 'cloud_former/parameters/comma_delimited_list_parameter'
@@ -177,6 +176,12 @@ module CloudFormer
177
176
  autoload :Stream, 'cloud_former/resources/kinesis/stream'
178
177
  end
179
178
 
179
+ module Lambda
180
+ autoload :EventSourceMapping, 'cloud_former/resources/lambda/event_source_mapping'
181
+ autoload :Function, 'cloud_former/resources/lambda/function'
182
+ autoload :Permission, 'cloud_former/resources/lambda/permission'
183
+ end
184
+
180
185
  module RDS
181
186
  autoload :DBInstance, 'cloud_former/resources/rds/db_instance'
182
187
  autoload :DBParameterGroup, 'cloud_former/resources/rds/db_parameter_group'
@@ -209,18 +214,29 @@ module CloudFormer
209
214
  autoload :Bucket, 'cloud_former/resources/s3/bucket'
210
215
  autoload :CorsConfiguration, 'cloud_former/resource_properties/s3/cors_configuration'
211
216
  autoload :CorsRule, 'cloud_former/resource_properties/s3/cors_rule'
217
+ autoload :LambdaConfiguration, 'cloud_former/resource_properties/s3/lambda_configuration'
212
218
  autoload :LifecycleConfiguration, 'cloud_former/resource_properties/s3/lifecycle_configuration'
213
219
  autoload :LifecycleRule, 'cloud_former/resource_properties/s3/lifecycle_rule'
214
220
  autoload :LifecycleRuleTransition, 'cloud_former/resource_properties/s3/lifecycle_rule_transition'
215
221
  autoload :LoggingConfiguration, 'cloud_former/resource_properties/s3/logging_configuration'
216
222
  autoload :NotificationConfiguration, 'cloud_former/resource_properties/s3/notification_configuration'
217
- autoload :NotificationTopicConfiguration, 'cloud_former/resource_properties/s3/notification_topic_configuration'
223
+ autoload :QueueConfiguration, 'cloud_former/resource_properties/s3/queue_configuration'
224
+ autoload :TopicConfiguration, 'cloud_former/resource_properties/s3/topic_configuration'
218
225
  autoload :VersioningConfiguration, 'cloud_former/resource_properties/s3/versioning_configuration'
219
226
  autoload :WebsiteConfiguration, 'cloud_former/resource_properties/s3/website_configuration'
220
- autoload :WebsiteConfigurationRedirectAllRequestsTo, 'cloud_former/resource_properties/s3/website_configuration_redirect_all_requests_to'
227
+ autoload(
228
+ :WebsiteConfigurationRedirectAllRequestsTo,
229
+ 'cloud_former/resource_properties/s3/website_configuration_redirect_all_requests_to',
230
+ )
221
231
  autoload :WebsiteConfigurationRoutingRules, 'cloud_former/resource_properties/s3/website_configuration_routing_rules'
222
- autoload :WebsiteConfigurationRoutingRulesRedirectRule, 'cloud_former/resource_properties/s3/website_configuration_routing_rules_redirect_rule'
223
- autoload :WebsiteConfigurationRoutingRulesRoutingRuleCondition, 'cloud_former/resource_properties/s3/website_configuration_routing_rules_routing_rule_condition'
232
+ autoload(
233
+ :WebsiteConfigurationRoutingRulesRedirectRule,
234
+ 'cloud_former/resource_properties/s3/website_configuration_routing_rules_redirect_rule',
235
+ )
236
+ autoload(
237
+ :WebsiteConfigurationRoutingRulesRoutingRuleCondition,
238
+ 'cloud_former/resource_properties/s3/website_configuration_routing_rules_routing_rule_condition',
239
+ )
224
240
  end
225
241
 
226
242
  module SNS
@@ -2,10 +2,18 @@
2
2
  module CloudFormer
3
3
  module S3
4
4
  class NotificationConfiguration < ResourceProperty
5
+ aws_attribute :lambda_configurations,
6
+ embed: true,
7
+ list: true,
8
+ type: LambdaConfiguration
9
+ aws_attribute :queue_configurations,
10
+ embed: true,
11
+ list: true,
12
+ type: QueueConfiguration
5
13
  aws_attribute :topic_configurations,
6
14
  embed: true,
7
15
  list: true,
8
- type: NotificationTopicConfiguration
16
+ type: TopicConfiguration
9
17
  end
10
18
  end
11
19
  end
@@ -1,7 +1,7 @@
1
1
  # http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html
2
2
  module CloudFormer
3
3
  module S3
4
- class NotificationTopicConfiguration < ResourceProperty
4
+ class TopicConfiguration < ResourceProperty
5
5
  aws_attribute :event, type: String
6
6
  aws_attribute :topic, type: String
7
7
  end
@@ -0,0 +1,12 @@
1
+ # http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html
2
+ module CloudFormer
3
+ module Lambda
4
+ class EventSourceMapping < Resource
5
+ aws_property :batch_size, type: Integer
6
+ aws_property :enabled, type: Boolean
7
+ aws_property :event_source_arn, type: String
8
+ aws_property :function_name, type: String
9
+ aws_property :starting_position, type: String
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,14 @@
1
+ # http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html
2
+ module CloudFormer
3
+ module Lambda
4
+ class Function < Resource
5
+ aws_property :code, type: String
6
+ aws_property :description, type: String
7
+ aws_property :handler, type: String
8
+ aws_property :memory_size, type: Integer
9
+ aws_property :role, type: String
10
+ aws_property :runtime, type: String
11
+ aws_property :timeout, type: Integer
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ # http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html
2
+ module CloudFormer
3
+ module Lambda
4
+ class Permission < Resource
5
+ aws_property :action, type: String
6
+ aws_property :function_name, type: String
7
+ aws_property :principal, type: String
8
+ aws_property :source_account, type: String
9
+ aws_property :source_arn, type: String
10
+ end
11
+ end
12
+ end
@@ -1,3 +1,3 @@
1
1
  module CloudFormer
2
- VERSION = '0.5.0'
2
+ VERSION = '0.5.1'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloud_former
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aubrey Holland
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-19 00:00:00.000000000 Z
11
+ date: 2015-11-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -76,6 +76,7 @@ extra_rdoc_files: []
76
76
  files:
77
77
  - ".gitignore"
78
78
  - ".rspec"
79
+ - ".rubocop.yml"
79
80
  - Gemfile
80
81
  - LICENSE
81
82
  - LICENSE.txt
@@ -172,7 +173,7 @@ files:
172
173
  - lib/cloud_former/resource_properties/s3/lifecycle_rule_transition.rb
173
174
  - lib/cloud_former/resource_properties/s3/logging_configuration.rb
174
175
  - lib/cloud_former/resource_properties/s3/notification_configuration.rb
175
- - lib/cloud_former/resource_properties/s3/notification_topic_configuration.rb
176
+ - lib/cloud_former/resource_properties/s3/topic_configuration.rb
176
177
  - lib/cloud_former/resource_properties/s3/versioning_configuration.rb
177
178
  - lib/cloud_former/resource_properties/s3/website_configuration.rb
178
179
  - lib/cloud_former/resource_properties/s3/website_configuration_redirect_all_requests_to.rb
@@ -238,6 +239,9 @@ files:
238
239
  - lib/cloud_former/resources/iam/user.rb
239
240
  - lib/cloud_former/resources/iam/user_to_group_addition.rb
240
241
  - lib/cloud_former/resources/kinesis/stream.rb
242
+ - lib/cloud_former/resources/lambda/event_source_mapping.rb
243
+ - lib/cloud_former/resources/lambda/function.rb
244
+ - lib/cloud_former/resources/lambda/permission.rb
241
245
  - lib/cloud_former/resources/list.rb
242
246
  - lib/cloud_former/resources/rds/db_instance.rb
243
247
  - lib/cloud_former/resources/rds/db_parameter_group.rb
@@ -293,7 +297,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
293
297
  version: '0'
294
298
  requirements: []
295
299
  rubyforge_project:
296
- rubygems_version: 2.4.8
300
+ rubygems_version: 2.4.6
297
301
  signing_key:
298
302
  specification_version: 4
299
303
  summary: A Ruby DSL for creating CloudFormation templates