convection 1.1.2 → 1.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (27) hide show
  1. checksums.yaml +4 -4
  2. data/lib/convection/dsl/intrinsic_functions.rb +12 -0
  3. data/lib/convection/model/template/resource/aws_api_gateway_account.rb +17 -0
  4. data/lib/convection/model/template/resource/aws_api_gateway_api_key.rb +26 -0
  5. data/lib/convection/model/template/resource/aws_api_gateway_authorizer.rb +25 -0
  6. data/lib/convection/model/template/resource/aws_api_gateway_base_path_mapping.rb +20 -0
  7. data/lib/convection/model/template/resource/aws_api_gateway_client_certificate.rb +17 -0
  8. data/lib/convection/model/template/resource/aws_api_gateway_deployment.rb +32 -0
  9. data/lib/convection/model/template/resource/aws_api_gateway_method.rb +38 -0
  10. data/lib/convection/model/template/resource/aws_api_gateway_model.rb +21 -0
  11. data/lib/convection/model/template/resource/aws_api_gateway_resource.rb +19 -0
  12. data/lib/convection/model/template/resource/aws_api_gateway_rest_api.rb +29 -0
  13. data/lib/convection/model/template/resource/aws_api_gateway_stage.rb +31 -0
  14. data/lib/convection/model/template/resource/aws_api_gateway_usage_plan.rb +39 -0
  15. data/lib/convection/model/template/resource/aws_api_gateway_usage_plan_key.rb +19 -0
  16. data/lib/convection/model/template/resource_property/aws_api_gateway_api_key_stage_key.rb +16 -0
  17. data/lib/convection/model/template/resource_property/aws_api_gateway_deployment_stage_description.rb +34 -0
  18. data/lib/convection/model/template/resource_property/aws_api_gateway_deployment_stage_description_method_setting.rb +24 -0
  19. data/lib/convection/model/template/resource_property/aws_api_gateway_deployment_stage_method_setting.rb +24 -0
  20. data/lib/convection/model/template/resource_property/aws_api_gateway_method_integration.rb +30 -0
  21. data/lib/convection/model/template/resource_property/aws_api_gateway_method_integration_integration_response.rb +18 -0
  22. data/lib/convection/model/template/resource_property/aws_api_gateway_method_method_response.rb +17 -0
  23. data/lib/convection/model/template/resource_property/aws_api_gateway_rest_api_s3_location.rb +18 -0
  24. data/lib/convection/model/template/resource_property/aws_api_gateway_usage_plan_api_stage.rb +16 -0
  25. data/lib/convection/model/template/resource_property/aws_api_gateway_usage_plan_quota_settings.rb +17 -0
  26. data/lib/convection/model/template/resource_property/aws_api_gateway_usage_plan_throttle_settings.rb +16 -0
  27. metadata +26 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 914c84855a7c16396afe48c41eddbdb2bf2227ef
4
- data.tar.gz: 4f04ec572a8407af9d3c23fd763fc25ca83f4b4c
3
+ metadata.gz: 57b8936a7475e4318ae6ca263f4be81eec84f58a
4
+ data.tar.gz: ffd2bc43ed853c6b5d3677f573c6cedb1b83d680
5
5
  SHA512:
6
- metadata.gz: 111e7767df7418e7f192a9e45e1b6fac94b16942fd07f0b8dce998e502e13134d6d6f62145ea46e3aa13bd3c48d02023bf61faaab1c39e708603e57eb5242291
7
- data.tar.gz: 9395471b31480a3c9c5a38f6141825c9a4e6653b958b1176b1f2424f671d3e5f260b5680c6663c3f6b731bb52706f63331d598b2aeaec5ebbe1184f14f9ff826
6
+ metadata.gz: ff0a27fbf967556ebecd4601bde48909b709b782e51b02d9cfa26b9b409cdceb6e0d393ddf4ba0fec39018bfdf864c26b25c6bd902855f811b841d0ac026f9e1
7
+ data.tar.gz: 2e52db753ae774f9c2d021ca01671d5fbb0afdf1fed078f233678fc8a125f0d18e817b06683b1499a63a517533708e5af8e977e63a49a1c8296ebf93fa382b8d
@@ -45,6 +45,18 @@ module Convection
45
45
  }
46
46
  end
47
47
 
48
+ def fn_sub(str, *vars)
49
+ if vars && !vars.empty?
50
+ {
51
+ 'Fn::Sub' => [str, vars]
52
+ }
53
+ else
54
+ {
55
+ 'Fn::Sub' => str
56
+ }
57
+ end
58
+ end
59
+
48
60
  def find_in_map(map_name, key_1, key_2)
49
61
  {
50
62
  'Fn::FindInMap' => [map_name, key_1, key_2]
@@ -0,0 +1,17 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::Account
9
+ ##
10
+ class ApiGatewayAccount < Resource
11
+ type 'AWS::ApiGateway::Account'
12
+ property :cloud_watch_role_arn, 'CloudWatchRoleArn'
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,26 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::ApiKey
9
+ ##
10
+ class ApiGatewayApiKey < Resource
11
+ type 'AWS::ApiGateway::ApiKey'
12
+ property :description, 'Description'
13
+ property :enabled, 'Enabled'
14
+ property :name, 'Name'
15
+ property :stage_keys, 'StageKeys', :type => :list # [ StageKey, ... ]
16
+
17
+ def stage_key(&block)
18
+ s = ResourceProperty::ApiGatewayApiKeyStageKey.new(self)
19
+ s.instance_exec(&block) if block
20
+ stage_keys << s
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,25 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::Authorizer
9
+ ##
10
+ class ApiGatewayAuthorizer < Resource
11
+ type 'AWS::ApiGateway::Authorizer'
12
+ property :authorizer_credentials, 'AuthorizerCredentials'
13
+ property :authorizer_result_ttl_in_seconds, 'AuthorizerResultTtlInSeconds'
14
+ property :authorizer_uri, 'AuthorizerUri'
15
+ property :identity_source, 'IdentitySource'
16
+ property :identity_validation_expression, 'IdentityValidationExpression'
17
+ property :name, 'Name'
18
+ property :provider_arns, 'ProviderARNs', :type => :list # [ String, ... ],
19
+ property :request_api_id, 'RestApiId'
20
+ property :type, 'Type'
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,20 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::BasePathMapping
9
+ ##
10
+ class ApiGatewayBasePathMapping < Resource
11
+ type 'AWS::ApiGateway::BasePathMapping'
12
+ property :base_path, 'BasePath'
13
+ property :domain_name, 'DomainName'
14
+ property :rest_api_id, 'RestApiId'
15
+ property :stage, 'Stage'
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,17 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::ClientCertificate
9
+ ##
10
+ class ApiGatewayClientCertificate < Resource
11
+ type 'AWS::ApiGateway::ClientCertificate'
12
+ property :description, 'Description'
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,32 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::Deployment
9
+ ##
10
+ class ApiGatewayDeployment < Resource
11
+ type 'AWS::ApiGateway::Deployment'
12
+ property :description, 'Description'
13
+ property :rest_api_id, 'RestApiId'
14
+ property :stage_description_prop, 'StageDescription'
15
+ property :stage_name, 'StageName'
16
+
17
+ def stage_description(&block)
18
+ i = ResourceProperty::ApiGatewayDeploymentStageDescription.new(self)
19
+ i.instance_exec(&block) if block
20
+ properties['StageDescription'].set(i)
21
+ end
22
+
23
+ def method_response(&block)
24
+ r = ResourceProperty::ApiGatewayMethodMethodResponse.new(self)
25
+ r.instance_exec(&block) if block
26
+ method_responses << r
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,38 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::Method
9
+ ##
10
+ class ApiGatewayMethod < Resource
11
+ type 'AWS::ApiGateway::Method'
12
+ property :api_key_required, 'ApiKeyRequired'
13
+ property :authorization_type, 'AuthorizationType'
14
+ property :authorizer_id, 'AuthorizerId'
15
+ property :http_method, 'HttpMethod'
16
+ property :integration_prop, 'Integration'
17
+ property :method_responses, 'MethodResponses', :type => :list # [ MethodResponse, ... ]
18
+ property :request_model, 'RequestModels', :type => :hash # { String:String, ... }
19
+ property :request_parameter, 'RequestParameters', :type => :hash # { String:Boolean, ... }
20
+ property :resource_id, 'ResourceId'
21
+ property :rest_api_id, 'RestApiId'
22
+
23
+ def integration(&block)
24
+ i = ResourceProperty::ApiGatewayMethodIntegration.new(self)
25
+ i.instance_exec(&block) if block
26
+ properties['Integration'].set(i)
27
+ end
28
+
29
+ def method_response(&block)
30
+ r = ResourceProperty::ApiGatewayMethodMethodResponse.new(self)
31
+ r.instance_exec(&block) if block
32
+ method_responses << r
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,21 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::Model
9
+ ##
10
+ class ApiGatewayModel < Resource
11
+ type 'AWS::ApiGateway::Model'
12
+ property :content_type, 'ContentType'
13
+ property :description, 'Description'
14
+ property :name, 'Name'
15
+ property :rest_api_id, 'RestApiId'
16
+ property :schema, 'Schema' # JSON object
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,19 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::Resource
9
+ ##
10
+ class ApiGatewayResource < Resource
11
+ type 'AWS::ApiGateway::Resource'
12
+ property :parent_id, 'ParentId'
13
+ property :path_part, 'PathPart'
14
+ property :rest_api_id, 'RestApiId'
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,29 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::RestApi
9
+ ##
10
+ class ApiGatewayRestApi < Resource
11
+ type 'AWS::ApiGateway::RestApi'
12
+ property :body, 'Body' # JSON object
13
+ property :body_s3_location_prop, 'BodyS3Location' # S3Location
14
+ property :clone_from, 'CloneFrom'
15
+ property :description, 'Description'
16
+ property :fail_on_warnings, 'FailOnWarnings'
17
+ property :name, 'Name'
18
+ property :parameters, 'Parameters', :type => :list # [ String, ... ]
19
+
20
+ def body_s3_location(&block)
21
+ b = ResourceProperty::ApiGatewayRestApiS3Location.new(self)
22
+ b.instance_exec(&block) if block
23
+ properties['BodyS3Location'].set(b)
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,31 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::Stage
9
+ ##
10
+ class ApiGatewayStage < Resource
11
+ type 'AWS::ApiGateway::Stage'
12
+ property :cache_cluster_enabled, 'CacheClusterEnabled'
13
+ property :cache_cluster_size, 'CacheClusterSize'
14
+ property :client_certificate_id, 'ClientCertificateId'
15
+ property :deployment_id, 'DeploymentId'
16
+ property :description, 'Description'
17
+ property :method_settings, 'MethodSettings', :type => :list # [ MethodSettings, ... ]
18
+ property :rest_api_id, 'RestApiId'
19
+ property :stage_name, 'StageName'
20
+ property :variables, 'Variables', :type => :hash # { String:String, ... }
21
+
22
+ def method_setting(&block)
23
+ r = ResourceProperty::ApiGatewayStageMethodSetting.new(self)
24
+ r.instance_exec(&block) if block
25
+ method_settings << r
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,39 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::UsagePlan
9
+ ##
10
+ class ApiGatewayUsagePlan < Resource
11
+ type 'AWS::ApiGateway::UsagePlan'
12
+ property :api_stages, 'ApiStages', :type => :list # [ ApiStage, ... ]
13
+ property :description, 'Description'
14
+ property :quota_prop, 'Quota' # QuotaSetting
15
+ property :throttle_prop, 'Throttle' # ThrottleSetting
16
+ property :usage_plan_name, 'UsagePlanName'
17
+
18
+ def api_stage(&block)
19
+ r = ResourceProperty::ApiGatewayUsagePlanApiStage.new(self)
20
+ r.instance_exec(&block) if block
21
+ api_stages << r
22
+ end
23
+
24
+ def quota(&block)
25
+ i = ResourceProperty::ApiGatewayUsagePlanQuotaSettings.new(self)
26
+ i.instance_exec(&block) if block
27
+ properties['Quota'].set(i)
28
+ end
29
+
30
+ def throttle(&block)
31
+ i = ResourceProperty::ApiGatewayUsagePlanThrottleSettings.new(self)
32
+ i.instance_exec(&block) if block
33
+ properties['Throttle'].set(i)
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,19 @@
1
+ require_relative '../resource'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class Resource
7
+ ##
8
+ # AWS::ApiGateway::Method
9
+ ##
10
+ class ApiGatewayMethod < Resource
11
+ type 'AWS::ApiGateway::Method'
12
+ property :key_id, 'KeId'
13
+ property :key_type, 'KeyType'
14
+ property :authorizer_id, 'AuthorizerId'
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,16 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-apikey-stagekey.html
8
+ # API Gateway ApiKey StageKey Property Type}
9
+ class ApiGatewayApiKeyStageKey < ResourceProperty
10
+ property :rest_api_id, 'RestApiId'
11
+ property :stage_name, 'StageName'
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,34 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html
8
+ # API Gateway Deployment StageDescription Property Type}
9
+ class ApiGatewayDeploymentStageDescription < ResourceProperty
10
+ property :cache_cluster_enabled, 'CacheClusterEnabled'
11
+ property :cache_cluster_size, 'CacheClusterSize'
12
+ property :cache_data_encrypted, 'CacheDataEncrypted'
13
+ property :cache_ttl_in_seconds, 'CacheTtlInSeconds'
14
+ property :caching_enabled, 'Caching_enabled'
15
+ property :data_trace_enabled, 'DataTraceEnabled'
16
+ property :description, 'Description'
17
+ property :logging_level, 'LoggingLevel'
18
+ property :method_settings, 'MethodSettings', :type => :list # [ MethodSetting, ... ],
19
+ property :metrics_enabled, 'MetricsEnabled'
20
+ property :stage_name, 'StageName'
21
+ property :throttling_burst_limit, 'ThrottlingBurstLimit'
22
+ property :throttling_rate_limit, 'ThrottlingRateLimit'
23
+ property :variables, 'Variables', :type => :hash # { String:String, ... },
24
+
25
+ def method_setting(&block)
26
+ m = ResourceProperty::ApiGatewayDeploymentStageDescriptionMethodSetting.new(self)
27
+ m.instance_exec(&block) if block
28
+ integration_responses << m
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ 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 {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html
8
+ # API Gateway Deployment StageDescription MethodSetting Property Type}
9
+ class ApiGatewayDeploymentStageDescriptionMethodSetting < ResourceProperty
10
+ property :cache_data_encrypted, 'CacheDataEncrypted'
11
+ property :cache_ttl_in_seconds, 'CacheTtlInSeconds'
12
+ property :caching_enabled, 'Caching_enabled'
13
+ property :data_trace_enabled, 'DataTraceEnabled'
14
+ property :http_method, 'HttpMethod'
15
+ property :logging_level, 'LoggingLevel'
16
+ property :metrics_enabled, 'MetricsEnabled'
17
+ property :resource_path, 'ResourcePath'
18
+ property :throttling_burst_limit, 'ThrottlingBurstLimit'
19
+ property :throttling_rate_limit, 'ThrottlingRateLimit'
20
+ end
21
+ end
22
+ end
23
+ end
24
+ 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 {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html
8
+ # API Gateway Stage MethodSetting Property Type}
9
+ class ApiGatewayStageMethodSetting < ResourceProperty
10
+ property :cache_data_encrypted, 'CacheDataEncrypted'
11
+ property :cache_ttl_in_seconds, 'CacheTtlInSeconds'
12
+ property :caching_enabled, 'Caching_enabled'
13
+ property :data_trace_enabled, 'DataTraceEnabled'
14
+ property :http_method, 'HttpMethod'
15
+ property :logging_level, 'LoggingLevel'
16
+ property :metrics_enabled, 'MetricsEnabled'
17
+ property :resource_path, 'ResourcePath'
18
+ property :throttling_burst_limit, 'ThrottlingBurstLimit'
19
+ property :throttling_rate_limit, 'ThrottlingRateLimit'
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,30 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html
8
+ # API Gateway Method Integration Property Type}
9
+ class ApiGatewayMethodIntegration < ResourceProperty
10
+ property :cache_key_parameters, 'CacheKeyParameters', :type => :list # [ String, ... ],
11
+ property :cache_namespace, 'CacheNamespace'
12
+ property :credentials, 'Credentials'
13
+ property :integration_http_method, 'IntegrationHttpMethod'
14
+ property :integration_responses, 'IntegrationResponses', :type => :list # [ IntegrationResponse, ... ],
15
+ property :passthrough_behavior, 'PassthroughBehavior'
16
+ property :request_parameters, 'RequestParameters', :type => :hash # { String:String, ... },
17
+ property :request_templates, 'RequestTemplates', :type => :hash # { String:String, ... },
18
+ property :type, 'Type'
19
+ property :uri, 'Uri'
20
+
21
+ def integration_response(&block)
22
+ i = ResourceProperty::ApiGatewayMethodIntegrationIntegrationResponse.new(self)
23
+ i.instance_exec(&block) if block
24
+ integration_responses << i
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,18 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html
8
+ # API Gateway Method Integration IntegrationResponse Property Type}
9
+ class ApiGatewayMethodIntegrationIntegrationResponse < ResourceProperty
10
+ property :response_parameters, 'ResponseParameters', :type => :hash # { String:String, ... },
11
+ property :response_templates, 'ResponseTemplates', :type => :hash # { String:String, ... },
12
+ property :selection_pattern, 'SelectionPattern'
13
+ property :status_code, 'StatusCode'
14
+ end
15
+ end
16
+ end
17
+ end
18
+ 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 {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html
8
+ # API Gateway Method MethodResponse Property Type}
9
+ class ApiGatewayMethodMethodResponse < ResourceProperty
10
+ property :response_models, 'ResponseModels', :type => :hash # { String:String, ... },
11
+ property :response_parameters, 'ResponseParameters', :type => :hash # { String:Boolean, ... },
12
+ property :status_code, 'StatusCode'
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,18 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-restapi-bodys3location.html
8
+ # API Gateway RestApi S3Location Property Type}
9
+ class ApiGatewayRestApiS3Location < ResourceProperty
10
+ property :bucket, 'Bucket'
11
+ property :e_tag, 'ETag'
12
+ property :key, 'Key'
13
+ property :version, 'Version'
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,16 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html
8
+ # API Gateway UsagePlan ApiStage Property Type}
9
+ class ApiGatewayUsagePlanApiStage < ResourceProperty
10
+ property :api_id, 'ApiId'
11
+ property :stage, 'Stage'
12
+ end
13
+ end
14
+ end
15
+ end
16
+ 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 {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html
8
+ # API Gateway UsagePlan QuotaSettings Property Type}
9
+ class ApiGatewayUsagePlanQuotaSettings < ResourceProperty
10
+ property :limit, 'Limit'
11
+ property :offset, 'Offset'
12
+ property :period, 'Period'
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,16 @@
1
+ require_relative '../resource_property'
2
+
3
+ module Convection
4
+ module Model
5
+ class Template
6
+ class ResourceProperty
7
+ # Represents an {http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html
8
+ # API Gateway UsagePlan ThrottleSettings Property Type}
9
+ class ApiGatewayUsagePlanThrottleSettings < ResourceProperty
10
+ property :burst_limit, 'BurstLimit'
11
+ property :rate_limit, 'RateLimit'
12
+ end
13
+ end
14
+ end
15
+ end
16
+ 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: 1.1.2
4
+ version: 1.1.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: 2017-03-09 00:00:00.000000000 Z
11
+ date: 2017-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -137,6 +137,19 @@ files:
137
137
  - lib/convection/model/template/output.rb
138
138
  - lib/convection/model/template/parameter.rb
139
139
  - lib/convection/model/template/resource.rb
140
+ - lib/convection/model/template/resource/aws_api_gateway_account.rb
141
+ - lib/convection/model/template/resource/aws_api_gateway_api_key.rb
142
+ - lib/convection/model/template/resource/aws_api_gateway_authorizer.rb
143
+ - lib/convection/model/template/resource/aws_api_gateway_base_path_mapping.rb
144
+ - lib/convection/model/template/resource/aws_api_gateway_client_certificate.rb
145
+ - lib/convection/model/template/resource/aws_api_gateway_deployment.rb
146
+ - lib/convection/model/template/resource/aws_api_gateway_method.rb
147
+ - lib/convection/model/template/resource/aws_api_gateway_model.rb
148
+ - lib/convection/model/template/resource/aws_api_gateway_resource.rb
149
+ - lib/convection/model/template/resource/aws_api_gateway_rest_api.rb
150
+ - lib/convection/model/template/resource/aws_api_gateway_stage.rb
151
+ - lib/convection/model/template/resource/aws_api_gateway_usage_plan.rb
152
+ - lib/convection/model/template/resource/aws_api_gateway_usage_plan_key.rb
140
153
  - lib/convection/model/template/resource/aws_auto_scaling_auto_scaling_group.rb
141
154
  - lib/convection/model/template/resource/aws_auto_scaling_launch_configuration.rb
142
155
  - lib/convection/model/template/resource/aws_auto_scaling_scaling_policy.rb
@@ -218,6 +231,17 @@ files:
218
231
  - lib/convection/model/template/resource_attribute/update_policy.rb
219
232
  - lib/convection/model/template/resource_collection.rb
220
233
  - lib/convection/model/template/resource_property.rb
234
+ - lib/convection/model/template/resource_property/aws_api_gateway_api_key_stage_key.rb
235
+ - lib/convection/model/template/resource_property/aws_api_gateway_deployment_stage_description.rb
236
+ - lib/convection/model/template/resource_property/aws_api_gateway_deployment_stage_description_method_setting.rb
237
+ - lib/convection/model/template/resource_property/aws_api_gateway_deployment_stage_method_setting.rb
238
+ - lib/convection/model/template/resource_property/aws_api_gateway_method_integration.rb
239
+ - lib/convection/model/template/resource_property/aws_api_gateway_method_integration_integration_response.rb
240
+ - lib/convection/model/template/resource_property/aws_api_gateway_method_method_response.rb
241
+ - lib/convection/model/template/resource_property/aws_api_gateway_rest_api_s3_location.rb
242
+ - lib/convection/model/template/resource_property/aws_api_gateway_usage_plan_api_stage.rb
243
+ - lib/convection/model/template/resource_property/aws_api_gateway_usage_plan_quota_settings.rb
244
+ - lib/convection/model/template/resource_property/aws_api_gateway_usage_plan_throttle_settings.rb
221
245
  - lib/convection/model/template/resource_property/aws_certificate_manager_certificate_domain_validation_option.rb
222
246
  - lib/convection/model/template/resource_property/aws_cloudfront_cachebehavior.rb
223
247
  - lib/convection/model/template/resource_property/aws_cloudfront_customerrorresponse.rb