skywriter 1.0.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.
Files changed (154) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +18 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +8 -0
  5. data/CHANGES.md +5 -0
  6. data/Gemfile +4 -0
  7. data/LICENSE.md +22 -0
  8. data/README.md +139 -0
  9. data/Rakefile +7 -0
  10. data/lib/skywriter/function.rb +133 -0
  11. data/lib/skywriter/resource/auto_scaling/auto_scaling_group.rb +28 -0
  12. data/lib/skywriter/resource/auto_scaling/launch_configuration.rb +28 -0
  13. data/lib/skywriter/resource/auto_scaling/scaling_policy.rb +18 -0
  14. data/lib/skywriter/resource/auto_scaling/scheduled_action.rb +21 -0
  15. data/lib/skywriter/resource/auto_scaling/trigger.rb +26 -0
  16. data/lib/skywriter/resource/cloud_formation/authentication.rb +46 -0
  17. data/lib/skywriter/resource/cloud_formation/custom_resource.rb +17 -0
  18. data/lib/skywriter/resource/cloud_formation/stack.rb +15 -0
  19. data/lib/skywriter/resource/cloud_formation/wait_condition.rb +15 -0
  20. data/lib/skywriter/resource/cloud_formation/wait_condition_handle.rb +12 -0
  21. data/lib/skywriter/resource/cloud_front/distribution.rb +13 -0
  22. data/lib/skywriter/resource/cloud_watch/alarm.rb +27 -0
  23. data/lib/skywriter/resource/dynamo_db/table.rb +18 -0
  24. data/lib/skywriter/resource/ec2/customer_gateway.rb +16 -0
  25. data/lib/skywriter/resource/ec2/dhcp_options.rb +18 -0
  26. data/lib/skywriter/resource/ec2/eip.rb +14 -0
  27. data/lib/skywriter/resource/ec2/eip_association.rb +17 -0
  28. data/lib/skywriter/resource/ec2/instance.rb +34 -0
  29. data/lib/skywriter/resource/ec2/internet_gateway.rb +13 -0
  30. data/lib/skywriter/resource/ec2/network_acl.rb +14 -0
  31. data/lib/skywriter/resource/ec2/network_acl_entry.rb +20 -0
  32. data/lib/skywriter/resource/ec2/network_interface.rb +20 -0
  33. data/lib/skywriter/resource/ec2/network_interface_attachment.rb +16 -0
  34. data/lib/skywriter/resource/ec2/route.rb +17 -0
  35. data/lib/skywriter/resource/ec2/route_table.rb +14 -0
  36. data/lib/skywriter/resource/ec2/security_group.rb +17 -0
  37. data/lib/skywriter/resource/ec2/security_group_egress.rb +23 -0
  38. data/lib/skywriter/resource/ec2/security_group_ingress.rb +26 -0
  39. data/lib/skywriter/resource/ec2/subnet.rb +16 -0
  40. data/lib/skywriter/resource/ec2/subnet_network_acl_association.rb +14 -0
  41. data/lib/skywriter/resource/ec2/subnet_route_table_association.rb +14 -0
  42. data/lib/skywriter/resource/ec2/volume.rb +18 -0
  43. data/lib/skywriter/resource/ec2/volume_attachment.rb +15 -0
  44. data/lib/skywriter/resource/ec2/vpc.rb +17 -0
  45. data/lib/skywriter/resource/ec2/vpc_dhcp_options_association.rb +14 -0
  46. data/lib/skywriter/resource/ec2/vpc_gateway_attachment.rb +15 -0
  47. data/lib/skywriter/resource/ec2/vpn_connection.rb +17 -0
  48. data/lib/skywriter/resource/ec2/vpn_connection_route.rb +14 -0
  49. data/lib/skywriter/resource/ec2/vpn_gateway.rb +14 -0
  50. data/lib/skywriter/resource/ec2/vpn_gateway_route_propagation.rb +14 -0
  51. data/lib/skywriter/resource/elasti_cache/cache_cluster.rb +27 -0
  52. data/lib/skywriter/resource/elastic_beanstalk/application.rb +14 -0
  53. data/lib/skywriter/resource/elastic_beanstalk/application_version.rb +15 -0
  54. data/lib/skywriter/resource/elastic_beanstalk/configuration_template.rb +18 -0
  55. data/lib/skywriter/resource/elastic_beanstalk/environment.rb +21 -0
  56. data/lib/skywriter/resource/elastic_load_balancing/load_balancer.rb +25 -0
  57. data/lib/skywriter/resource/elasticache/parameter_group.rb +15 -0
  58. data/lib/skywriter/resource/elasticache/security_group.rb +13 -0
  59. data/lib/skywriter/resource/elasticache/security_group_ingress.rb +15 -0
  60. data/lib/skywriter/resource/elasticache/subnet_group.rb +14 -0
  61. data/lib/skywriter/resource/iam/access_key.rb +16 -0
  62. data/lib/skywriter/resource/iam/group.rb +15 -0
  63. data/lib/skywriter/resource/iam/instance_profile.rb +15 -0
  64. data/lib/skywriter/resource/iam/policy.rb +18 -0
  65. data/lib/skywriter/resource/iam/role.rb +13 -0
  66. data/lib/skywriter/resource/iam/user.rb +17 -0
  67. data/lib/skywriter/resource/iam/user_to_group_addition.rb +15 -0
  68. data/lib/skywriter/resource/logical_name_pointer.rb +11 -0
  69. data/lib/skywriter/resource/pointer.rb +23 -0
  70. data/lib/skywriter/resource/rds/db_instance.rb +37 -0
  71. data/lib/skywriter/resource/rds/db_parameter_group.rb +17 -0
  72. data/lib/skywriter/resource/rds/db_security_group.rb +17 -0
  73. data/lib/skywriter/resource/rds/db_security_group_ingress.rb +18 -0
  74. data/lib/skywriter/resource/rds/db_subnet_group.rb +16 -0
  75. data/lib/skywriter/resource/redshift/cluster.rb +37 -0
  76. data/lib/skywriter/resource/redshift/cluster_parameter_group.rb +16 -0
  77. data/lib/skywriter/resource/redshift/cluster_security_group.rb +14 -0
  78. data/lib/skywriter/resource/redshift/cluster_security_group_ingress.rb +17 -0
  79. data/lib/skywriter/resource/redshift/cluster_subnet_group.rb +15 -0
  80. data/lib/skywriter/resource/ref_pointer.rb +11 -0
  81. data/lib/skywriter/resource/route_53/record_set.rb +24 -0
  82. data/lib/skywriter/resource/route_53/record_set_group.rb +17 -0
  83. data/lib/skywriter/resource/s3/bucket.rb +17 -0
  84. data/lib/skywriter/resource/s3/bucket_policy.rb +15 -0
  85. data/lib/skywriter/resource/sdb/domain.rb +13 -0
  86. data/lib/skywriter/resource/sns/topic.rb +16 -0
  87. data/lib/skywriter/resource/sns/topic_policy.rb +15 -0
  88. data/lib/skywriter/resource/sqs/queue.rb +18 -0
  89. data/lib/skywriter/resource/sqs/queue_policy.rb +15 -0
  90. data/lib/skywriter/resource.rb +165 -0
  91. data/lib/skywriter/resource_property/README.md +64 -0
  92. data/lib/skywriter/resource_property/auto_scaling/block_device_mapping.rb +12 -0
  93. data/lib/skywriter/resource_property/auto_scaling/ebs_block_device.rb +17 -0
  94. data/lib/skywriter/resource_property/auto_scaling/notification_configuration.rb +11 -0
  95. data/lib/skywriter/resource_property/auto_scaling/tag.rb +15 -0
  96. data/lib/skywriter/resource_property/cloud_formation/resource_tag.rb +12 -0
  97. data/lib/skywriter/resource_property/cloud_front/cache_behavior.rb +14 -0
  98. data/lib/skywriter/resource_property/cloud_front/custom_origin.rb +11 -0
  99. data/lib/skywriter/resource_property/cloud_front/default_cache_behavior.rb +13 -0
  100. data/lib/skywriter/resource_property/cloud_front/distribution_config.rb +16 -0
  101. data/lib/skywriter/resource_property/cloud_front/forwarded_value.rb +13 -0
  102. data/lib/skywriter/resource_property/cloud_front/logging.rb +10 -0
  103. data/lib/skywriter/resource_property/cloud_front/origin.rb +12 -0
  104. data/lib/skywriter/resource_property/cloud_front/s3_origin.rb +9 -0
  105. data/lib/skywriter/resource_property/cloud_watch/metric_dimension.rb +10 -0
  106. data/lib/skywriter/resource_property/dynamo_db/attribute_definition.rb +12 -0
  107. data/lib/skywriter/resource_property/dynamo_db/global_secondary_index.rb +14 -0
  108. data/lib/skywriter/resource_property/dynamo_db/key_schema.rb +10 -0
  109. data/lib/skywriter/resource_property/dynamo_db/local_secondary_index.rb +13 -0
  110. data/lib/skywriter/resource_property/dynamo_db/projection.rb +12 -0
  111. data/lib/skywriter/resource_property/dynamo_db/provisioned_throughput.rb +10 -0
  112. data/lib/skywriter/resource_property/ec2/block_device_mapping.rb +12 -0
  113. data/lib/skywriter/resource_property/ec2/ebs_block_device.rb +15 -0
  114. data/lib/skywriter/resource_property/ec2/icmp.rb +10 -0
  115. data/lib/skywriter/resource_property/ec2/mount_point.rb +10 -0
  116. data/lib/skywriter/resource_property/ec2/network_interface.rb +18 -0
  117. data/lib/skywriter/resource_property/ec2/network_interface_association.rb +12 -0
  118. data/lib/skywriter/resource_property/ec2/network_interface_attachment.rb +10 -0
  119. data/lib/skywriter/resource_property/ec2/network_interface_group_item.rb +10 -0
  120. data/lib/skywriter/resource_property/ec2/network_interface_private_ip_specification.rb +10 -0
  121. data/lib/skywriter/resource_property/ec2/port_range.rb +10 -0
  122. data/lib/skywriter/resource_property/ec2/security_group_rule.rb +12 -0
  123. data/lib/skywriter/resource_property/ec2/tag.rb +10 -0
  124. data/lib/skywriter/resource_property/elastic_beanstalk/environment_tier.rb +11 -0
  125. data/lib/skywriter/resource_property/elastic_beanstalk/option_setting.rb +13 -0
  126. data/lib/skywriter/resource_property/elastic_beanstalk/source_bundle.rb +10 -0
  127. data/lib/skywriter/resource_property/elastic_beanstalk/source_configuration.rb +10 -0
  128. data/lib/skywriter/resource_property/elastic_load_balancing/app_cookie_stickiness_policy.rb +10 -0
  129. data/lib/skywriter/resource_property/elastic_load_balancing/health_check.rb +13 -0
  130. data/lib/skywriter/resource_property/elastic_load_balancing/lb_cookie_stickiness_policy.rb +10 -0
  131. data/lib/skywriter/resource_property/elastic_load_balancing/listener.rb +14 -0
  132. data/lib/skywriter/resource_property/elastic_load_balancing/policy.rb +13 -0
  133. data/lib/skywriter/resource_property/rds/security_group_rule.rb +12 -0
  134. data/lib/skywriter/resource_property/redshift/parameter.rb +10 -0
  135. data/lib/skywriter/resource_property/route53/alias_target.rb +10 -0
  136. data/lib/skywriter/resource_property/s3/website_configuration_policy.rb +16 -0
  137. data/lib/skywriter/resource_property/sns/subscription.rb +10 -0
  138. data/lib/skywriter/resource_property/sqs/redrive_policy.rb +10 -0
  139. data/lib/skywriter/resource_property.rb +57 -0
  140. data/lib/skywriter/template.rb +143 -0
  141. data/lib/skywriter/version.rb +3 -0
  142. data/lib/skywriter.rb +8 -0
  143. data/skywriter.gemspec +29 -0
  144. data/spec/skywriter/function_spec.rb +99 -0
  145. data/spec/skywriter/resource/cloud_formation/authentication_spec.rb +36 -0
  146. data/spec/skywriter/resource/cloud_formation/custom_resource_spec.rb +30 -0
  147. data/spec/skywriter/resource/logical_name_pointer_spec.rb +15 -0
  148. data/spec/skywriter/resource/ref_pointer_spec.rb +15 -0
  149. data/spec/skywriter/resource_property/ec2/security_group_rule_spec.rb +7 -0
  150. data/spec/skywriter/resource_property_spec.rb +153 -0
  151. data/spec/skywriter/resource_spec.rb +236 -0
  152. data/spec/skywriter/template_spec.rb +246 -0
  153. data/spec/spec_helper.rb +29 -0
  154. metadata +306 -0
@@ -0,0 +1,18 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::DHCPOptions Resource
5
+ #
6
+ class DHCPOptions
7
+ include Skywriter::Resource
8
+
9
+ property :DomainName
10
+ property :DomainNameServers
11
+ property :NetbiosNameServers
12
+ property :NetbiosNodeType
13
+ property :NtpServers
14
+ property :Tags
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::EIP Resource
5
+ #
6
+ class EIP
7
+ include Skywriter::Resource
8
+
9
+ property :InstanceId
10
+ property :Domain
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,17 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::EIPAssociation Resource
5
+ #
6
+ class EIPAssociation
7
+ include Skywriter::Resource
8
+
9
+ property :AllocationId
10
+ property :EIP
11
+ property :InstanceId
12
+ property :NetworkInterfaceId
13
+ property :PrivateIpAddress
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,34 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::Instance Resource
5
+ #
6
+ class Instance
7
+ include Skywriter::Resource
8
+
9
+ property :AvailabilityZone
10
+ property :BlockDeviceMappings
11
+ property :DisableApiTermination
12
+ property :EbsOptimized
13
+ property :IamInstanceProfile
14
+ property :ImageId
15
+ property :InstanceType
16
+ property :KernelId
17
+ property :KeyName
18
+ property :Monitoring
19
+ property :NetworkInterfaces
20
+ property :PlacementGroupName
21
+ property :PrivateIpAddress
22
+ property :RamdiskId
23
+ property :SecurityGroupIds
24
+ property :SecurityGroups
25
+ property :SourceDestCheck
26
+ property :SubnetId
27
+ property :Tags
28
+ property :Tenancy
29
+ property :UserData
30
+ property :Volumes
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,13 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::InternetGateway Resource
5
+ #
6
+ class InternetGateway
7
+ include Skywriter::Resource
8
+
9
+ property :Tags
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::NetworkAcl Resource
5
+ #
6
+ class NetworkAcl
7
+ include Skywriter::Resource
8
+
9
+ property :Tags
10
+ property :VpcId
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,20 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::NetworkAclEntry Resource
5
+ #
6
+ class NetworkAclEntry
7
+ include Skywriter::Resource
8
+
9
+ property :CidrBlock
10
+ property :Egress
11
+ property :Icmp
12
+ property :NetworkAclId
13
+ property :PortRange
14
+ property :Protocol
15
+ property :RuleAction
16
+ property :RuleNumber
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::NetworkInterface Resource
5
+ #
6
+ class NetworkInterface
7
+ include Skywriter::Resource
8
+
9
+ property :Description
10
+ property :GroupSet
11
+ property :PrivateIpAddress
12
+ property :PrivateIpAddresses
13
+ property :SecondaryPrivateIpAddressCount
14
+ property :SourceDestCheck
15
+ property :SubnetId
16
+ property :Tags
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,16 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::NetworkInterfaceAttachment Resource
5
+ #
6
+ class NetworkInterfaceAttachment
7
+ include Skywriter::Resource
8
+
9
+ property :DeleteOnTermination
10
+ property :DeviceIndex
11
+ property :InstanceId
12
+ property :NetworkInterfaceId
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,17 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::Route Resource
5
+ #
6
+ class Route
7
+ include Skywriter::Resource
8
+
9
+ property :DestinationCidrBlock
10
+ property :GatewayId
11
+ property :InstanceId
12
+ property :NetworkInterfaceId
13
+ property :RouteTableId
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::RouteTable Resource
5
+ #
6
+ class RouteTable
7
+ include Skywriter::Resource
8
+
9
+ property :VpcId
10
+ property :Tags
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,17 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::SecurityGroup Resource
5
+ #
6
+ class SecurityGroup
7
+ include Skywriter::Resource
8
+
9
+ property :GroupDescription
10
+ property :SecurityGroupEgress
11
+ property :SecurityGroupIngress
12
+ property :VpcId
13
+ property :Tags
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,23 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::SecurityGroupEgress Resource
5
+ #
6
+ class SecurityGroupEgress < Skywriter::ResourceProperty::EC2::SecurityGroupRule
7
+ property :DestinationSecurityGroupId
8
+ property :GroupId
9
+ end
10
+ end
11
+ end
12
+
13
+ # This is just for aliasing purposes. Despite the fact that Amazon documents
14
+ # this class as a resource, it is, in fact, a resource property in all ways.
15
+ # So, we put it in the place you'd expect if you were looking at the
16
+ # CloudFormation documentations. And we're aliasing it below in the place
17
+ # where you'd expect it if you have your head right about how this behaves.
18
+ class ResourceProperty
19
+ module EC2
20
+ SecurityGroupEgress = Skywriter::Resource::EC2::SecurityGroupEgress
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,26 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::SecurityGroupIngress Resource
5
+ #
6
+ class SecurityGroupIngress < Skywriter::ResourceProperty::EC2::SecurityGroupRule
7
+ property :GroupName
8
+ property :GroupId
9
+ property :SourceSecurityGroupName
10
+ property :SourceSecurityGroupId
11
+ property :SourceSecurityGroupOwnerId
12
+ end
13
+ end
14
+ end
15
+
16
+ # This is just for aliasing purposes. Despite the fact that Amazon documents
17
+ # this class as a resource, it is, in fact, a resource property in all ways.
18
+ # So, we put it in the place you'd expect if you were looking at the
19
+ # CloudFormation documentations. And we're aliasing it below in the place
20
+ # where you'd expect it if you have your head right about how this behaves.
21
+ class ResourceProperty
22
+ module EC2
23
+ SecurityGroupIngress = Skywriter::Resource::EC2::SecurityGroupIngress
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,16 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::Subnet Resource
5
+ #
6
+ class Subnet
7
+ include Skywriter::Resource
8
+
9
+ property :AvailabilityZone
10
+ property :CidrBlock
11
+ property :Tags
12
+ property :VpcId
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::SubnetNetworkAclAssociation Resource
5
+ #
6
+ class SubnetNetworkAclAssociation
7
+ include Skywriter::Resource
8
+
9
+ property :SubnetId
10
+ property :NetworkAclId
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::SubnetRouteTableAssociation Resource
5
+ #
6
+ class SubnetRouteTableAssociation
7
+ include Skywriter::Resource
8
+
9
+ property :RouteTableId
10
+ property :SubnetId
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,18 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::Volume Resource
5
+ #
6
+ class Volume
7
+ include Skywriter::Resource
8
+
9
+ property :AvailabilityZone
10
+ property :Iops
11
+ property :Size
12
+ property :SnapshotId
13
+ property :Tags
14
+ property :VolumeType
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,15 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::VolumeAttachment Resource
5
+ #
6
+ class VolumeAttachment
7
+ include Skywriter::Resource
8
+
9
+ property :Device
10
+ property :InstanceId
11
+ property :VolumeId
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,17 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::VPC Resource
5
+ #
6
+ class VPC
7
+ include Skywriter::Resource
8
+
9
+ property :CidrBlock
10
+ property :EnableDnsSupport
11
+ property :EnableDnsHostnames
12
+ property :InstanceTenancy
13
+ property :Tags
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::VPCDHCPOptionsAssociation Resource
5
+ #
6
+ class VPCDHCPOptionsAssociation
7
+ include Skywriter::Resource
8
+
9
+ property :DhcpOptionsId
10
+ property :VpcId
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,15 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::VPCGatewayAttachment Resource
5
+ #
6
+ class VPCGatewayAttachment
7
+ include Skywriter::Resource
8
+
9
+ property :InternetGatewayId
10
+ property :VpcId
11
+ property :VpnGatewayId
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,17 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::VPNConnection Resource
5
+ #
6
+ class VPNConnection
7
+ include Skywriter::Resource
8
+
9
+ property :Type
10
+ property :CustomerGatewayId
11
+ property :StaticRoutesOnly
12
+ property :Tags
13
+ property :VpnGatewayId
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::VPNConnectionRoute Resource
5
+ #
6
+ class VPNConnectionRoute
7
+ include Skywriter::Resource
8
+
9
+ property :DestinationCidrBlock
10
+ property :VpnConnectionId
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::VPNGateway Resource
5
+ #
6
+ class VPNGateway
7
+ include Skywriter::Resource
8
+
9
+ property :Type
10
+ property :Tags
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module EC2
4
+ # AWS::EC2::VPNGatewayRoutePropagation Resource
5
+ #
6
+ class VPNGatewayRoutePropagation
7
+ include Skywriter::Resource
8
+
9
+ property :RouteTableIds
10
+ property :VpnGatewayId
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,27 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElastiCache
4
+ # AWS::ElastiCache::CacheCluster Resource
5
+ #
6
+ class CacheCluster
7
+ include Skywriter::Resource
8
+
9
+ property :AutoMinorVersionUpgrade
10
+ property :CacheNodeType
11
+ property :CacheParameterGroupName
12
+ property :CacheSecurityGroupNames
13
+ property :CacheSubnetGroupName
14
+ property :ClusterName
15
+ property :Engine
16
+ property :EngineVersion
17
+ property :NotificationTopicArn
18
+ property :NumCacheNodes
19
+ property :Port
20
+ property :PreferredAvailabilityZone
21
+ property :PreferredMaintenanceWindow
22
+ property :SnapshotArns
23
+ property :VpcSecurityGroupIds
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElasticBeanstalk
4
+ # AWS::ElasticBeanstalk::Application Resource
5
+ #
6
+ class Application
7
+ include Skywriter::Resource
8
+
9
+ property :ApplicationName
10
+ property :Description
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,15 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElasticBeanstalk
4
+ # AWS::ElasticBeanstalk::ApplicationVersion Resource
5
+ #
6
+ class ApplicationVersion
7
+ include Skywriter::Resource
8
+
9
+ property :ApplicationName
10
+ property :Description
11
+ property :SourceBundle
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,18 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElasticBeanstalk
4
+ # AWS::ElasticBeanstalk::ConfigurationTemplate Resource
5
+ #
6
+ class ConfigurationTemplate
7
+ include Skywriter::Resource
8
+
9
+ property :ApplicationName
10
+ property :Description
11
+ property :EnvironmentId
12
+ property :OptionsSettings
13
+ property :SolutionStackName
14
+ property :SourceConfiguration
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,21 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElasticBeanstalk
4
+ # AWS::ElasticBeanstalk::Environment Resource
5
+ #
6
+ class Environment
7
+ include Skywriter::Resource
8
+
9
+ property :ApplicationName
10
+ property :CNAMEPrefix
11
+ property :Description
12
+ property :EnvironmentName
13
+ property :OptionSettings
14
+ property :SolutionStackName
15
+ property :TemplateName
16
+ property :Tier
17
+ property :VersionLabel
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,25 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElasticLoadBalancing
4
+ # AWS::ElasticLoadBalancing::LoadBalancer Resource
5
+ #
6
+ class LoadBalancer
7
+ include Skywriter::Resource
8
+
9
+ property :AppCookieStickinessPolicy
10
+ property :AvailabilityZones
11
+ property :CrossZone
12
+ property :HealthCheck
13
+ property :Instances
14
+ property :LBCookieStickinessPolicy
15
+ property :LoadBalancerName
16
+ property :Listeners
17
+ property :Policies
18
+ property :Scheme
19
+ property :SecurityGroups
20
+ property :Subnets
21
+ end
22
+ end
23
+ end
24
+ end
25
+
@@ -0,0 +1,15 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElastiCache
4
+ # AWS::ElastiCache::ParameterGroup Resource
5
+ #
6
+ class ParameterGroup
7
+ include Skywriter::Resource
8
+
9
+ property :CacheParameterGroupFamily
10
+ property :Description
11
+ property :Properties # Yeah, I know...
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,13 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElastiCache
4
+ # AWS::ElastiCache::SecurityGroup Resource
5
+ #
6
+ class SecurityGroup
7
+ include Skywriter::Resource
8
+
9
+ property :Description
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,15 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElastiCache
4
+ # AWS::ElastiCache::SecurityGroupIngress Resource
5
+ #
6
+ class SecurityGroupIngress
7
+ include Skywriter::Resource
8
+
9
+ property :CacheSecurityGroupName
10
+ property :EC2SecurityGroupName
11
+ property :EC2SecurityGroupOwnerId
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+ module Skywriter
2
+ module Resource
3
+ module ElastiCache
4
+ # AWS::ElastiCache::SubnetGroup Resource
5
+ #
6
+ class SubnetGroup
7
+ include Skywriter::Resource
8
+
9
+ property :Description
10
+ property :SubnetIds
11
+ end
12
+ end
13
+ end
14
+ end