convection 0.4.2 → 0.4.3

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: b3de07eb04f40d2d56959e6df5572e98f8447ce7
4
- data.tar.gz: d0925f4ae7e4f4093606a7cf1fb05bb643172bed
3
+ metadata.gz: 90b593fbb400063b388fc2f1ca38713b989a8d99
4
+ data.tar.gz: a779862372fd3969006ab17f1f8729d06c4560bb
5
5
  SHA512:
6
- metadata.gz: 69a32d02abbc59d1bdf62703de9cd72ceb8cb8a88c5efc69a4790d2fee51f21c248e976f76eb0ff0db3ea39819136709c807343b04d49a822fa4878798ba4bc2
7
- data.tar.gz: dc372422b28b5eab1d908b98cb798cff7b42c54f483b5ce86498d1c408b46f0fa79f703292ee8a7315101d2365897f0438f21c854a3608180b67988416ff5344
6
+ metadata.gz: c152eed6ec1f2c4ce484d74fb2401d7282e0f39d797bef322d6771d9725a014901ed12013a6b0bca719163ab891a42563fc37977ac720a9e867525874fd39441
7
+ data.tar.gz: 0fc5f904fe4be7ce670b74d36304d40f44bd8581c11be1b55d647d399ca5b839d592eefd2e4d1e8183bb5d48133ec1062aafa54d9a0bf558e5055e5855aaa446
@@ -23,6 +23,7 @@ module Convection
23
23
  property :lifecycle_configuration, 'LifecycleConfiguration'
24
24
  property :logging_configuration, 'LoggingConfiguration'
25
25
  property :notification_configuration, 'NotificationConfiguration'
26
+ property :replication_configuration, 'ReplicationConfiguration'
26
27
  property :versioning_configuration, 'VersioningConfiguration'
27
28
 
28
29
  def cors_configuration(&block)
@@ -36,6 +37,12 @@ module Convection
36
37
  cors_configuration(*args)
37
38
  end
38
39
 
40
+ def replication_configuration(&block)
41
+ config = ResourceProperty::S3ReplicationConfiguration.new(self)
42
+ config.instance_exec(&block) if block
43
+ properties['ReplicationConfiguration'].set(config)
44
+ end
45
+
39
46
  def render(*args)
40
47
  super.tap do |resource|
41
48
  render_tags(resource)
@@ -0,0 +1,22 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an {https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html}
8
+ # Amazon S3 Replication Configuration
9
+ class S3ReplicationConfiguration < ResourceProperty
10
+ property :role, 'Role'
11
+ property :rules, 'Rules', :type => :list
12
+
13
+ def rule(&block)
14
+ rule = ResourceProperty::S3ReplicationConfigurationRule.new(self)
15
+ rule.instance_exec(&block) if block
16
+ rules << rule
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,24 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an {https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html}
8
+ # Amazon S3 Replication Configuration Rules
9
+ class S3ReplicationConfigurationRule < ResourceProperty
10
+ property :destination, 'Destination'
11
+ property :id, 'Id'
12
+ property :prefix, 'Prefix'
13
+ property :status, 'Status'
14
+
15
+ def destination(&block)
16
+ destination_bucket = ResourceProperty::S3ReplicationConfigurationRuleDestination.new(self)
17
+ destination_bucket.instance_exec(&block) if block
18
+ properties['Destination'].set(destination_bucket)
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,17 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an
8
+ # {https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html}
9
+ # Amazon S3 Replication Configuration Rules Destination
10
+ class S3ReplicationConfigurationRuleDestination < ResourceProperty
11
+ property :bucket, 'Bucket'
12
+ property :storage_class, 'StorageClass'
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: convection
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Manero
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-08-30 00:00:00.000000000 Z
11
+ date: 2016-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -229,6 +229,9 @@ files:
229
229
  - lib/convection/model/template/resource_property/aws_lambda_vpc_config.rb
230
230
  - lib/convection/model/template/resource_property/aws_s3_cors_configuration.rb
231
231
  - lib/convection/model/template/resource_property/aws_s3_cors_configuration_rule.rb
232
+ - lib/convection/model/template/resource_property/aws_s3_replication_configuration.rb
233
+ - lib/convection/model/template/resource_property/aws_s3_replication_configuration_rule.rb
234
+ - lib/convection/model/template/resource_property/aws_s3_replication_configuration_rule_destination.rb
232
235
  - lib/convection/version.rb
233
236
  - spec/cf_client_context.rb
234
237
  - spec/collect_availability_zones_task_context.rb
@@ -289,7 +292,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
289
292
  version: '0'
290
293
  requirements: []
291
294
  rubyforge_project:
292
- rubygems_version: 2.4.5
295
+ rubygems_version: 2.4.3
293
296
  signing_key:
294
297
  specification_version: 4
295
298
  summary: A fully generic, modular DSL for AWS CloudFormation