aws-sdk-cloudformation 1.70.0 → 1.72.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4cc20892317dc3a305234fb88c976d4dfb5a5001483b1d663229d77c17f56b04
4
- data.tar.gz: 8ae7f8414a3c31e0d35aa7fa332635f0836ffeed8dd63737393732bc224de5e1
3
+ metadata.gz: 46a507b6b348e97c8fecb70958267c29ad15fe519652e40d6041edcc70c3526c
4
+ data.tar.gz: f8bf054f14da9660c53527348764373a27157a91e5e4633469fde0d9b0237e71
5
5
  SHA512:
6
- metadata.gz: 5729c3c85480ff0f73a4c031545eb1f69c78a7ee45c83fe513f16b4dceacf2d327f8e181cee899d5aaae9aedc4b8882b6b8f10f5922182bd91fbf54984496077
7
- data.tar.gz: f19f260d37be5048c81543cf87aa91b261ae557401101ff290b1ee18277fa4e43b668cca930c16ad439e2900469bb41fbaf72f97bc78474d3d010f6c21791bb4
6
+ metadata.gz: 6a489660e970c726e059c62c1240c90434706ecacdeb694da7401ac2dcb431cfa11825dd36bb70937fff548b355760114c163ff175dd3a4f59e08519f2a1f617
7
+ data.tar.gz: ad12e7e4b134035fd44600c519f2f94dfc899023ca6a1c7eb5342a8f4b29f2cdfe5942b11470d8cd58abe53222fbb8c50e594b1325a2927ce265bb89d660a57b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.72.0 (2022-10-28)
5
+ ------------------
6
+
7
+ * Feature - This release adds more fields to improves visibility of AWS CloudFormation StackSets information in following APIs: ListStackInstances, DescribeStackInstance, ListStackSetOperationResults, ListStackSetOperations, DescribeStackSetOperation.
8
+
9
+ 1.71.0 (2022-10-25)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.70.0 (2022-07-06)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.70.0
1
+ 1.72.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/query.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:cloudformation)
@@ -79,8 +79,9 @@ module Aws::CloudFormation
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::Query)
84
+ add_plugin(Aws::CloudFormation::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -287,6 +288,19 @@ module Aws::CloudFormation
287
288
  # ** Please note ** When response stubbing is enabled, no HTTP
288
289
  # requests are made, and retries are disabled.
289
290
  #
291
+ # @option options [Aws::TokenProvider] :token_provider
292
+ # A Bearer Token Provider. This can be an instance of any one of the
293
+ # following classes:
294
+ #
295
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
296
+ # tokens.
297
+ #
298
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
299
+ # access token generated from `aws login`.
300
+ #
301
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
302
+ # will be used to search for tokens configured for your profile in shared configuration files.
303
+ #
290
304
  # @option options [Boolean] :use_dualstack_endpoint
291
305
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
292
306
  # will be used if available.
@@ -300,6 +314,9 @@ module Aws::CloudFormation
300
314
  # When `true`, request parameters are validated before
301
315
  # sending the request.
302
316
  #
317
+ # @option options [Aws::CloudFormation::EndpointProvider] :endpoint_provider
318
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::CloudFormation::EndpointParameters`
319
+ #
303
320
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
304
321
  # requests through. Formatted like 'http://proxy.com:123'.
305
322
  #
@@ -2615,6 +2632,7 @@ module Aws::CloudFormation
2615
2632
  # resp.stack_instance.organizational_unit_id #=> String
2616
2633
  # resp.stack_instance.drift_status #=> String, one of "DRIFTED", "IN_SYNC", "UNKNOWN", "NOT_CHECKED"
2617
2634
  # resp.stack_instance.last_drift_check_timestamp #=> Time
2635
+ # resp.stack_instance.last_operation_id #=> String
2618
2636
  #
2619
2637
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackInstance AWS API Documentation
2620
2638
  #
@@ -3038,6 +3056,7 @@ module Aws::CloudFormation
3038
3056
  # resp.stack_set_operation.stack_set_drift_detection_details.in_progress_stack_instances_count #=> Integer
3039
3057
  # resp.stack_set_operation.stack_set_drift_detection_details.failed_stack_instances_count #=> Integer
3040
3058
  # resp.stack_set_operation.status_reason #=> String
3059
+ # resp.stack_set_operation.status_details.failed_stack_instances_count #=> Integer
3041
3060
  #
3042
3061
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackSetOperation AWS API Documentation
3043
3062
  #
@@ -4189,7 +4208,7 @@ module Aws::CloudFormation
4189
4208
  # request parameter to get the next set of results.
4190
4209
  #
4191
4210
  # @option params [Array<Types::StackInstanceFilter>] :filters
4192
- # The status that stack instances are filtered by.
4211
+ # The filter to apply to stack instances
4193
4212
  #
4194
4213
  # @option params [String] :stack_instance_account
4195
4214
  # The name of the Amazon Web Services account that you want to list
@@ -4235,7 +4254,7 @@ module Aws::CloudFormation
4235
4254
  # max_results: 1,
4236
4255
  # filters: [
4237
4256
  # {
4238
- # name: "DETAILED_STATUS", # accepts DETAILED_STATUS
4257
+ # name: "DETAILED_STATUS", # accepts DETAILED_STATUS, LAST_OPERATION_ID
4239
4258
  # values: "StackInstanceFilterValues",
4240
4259
  # },
4241
4260
  # ],
@@ -4257,6 +4276,7 @@ module Aws::CloudFormation
4257
4276
  # resp.summaries[0].organizational_unit_id #=> String
4258
4277
  # resp.summaries[0].drift_status #=> String, one of "DRIFTED", "IN_SYNC", "UNKNOWN", "NOT_CHECKED"
4259
4278
  # resp.summaries[0].last_drift_check_timestamp #=> Time
4279
+ # resp.summaries[0].last_operation_id #=> String
4260
4280
  # resp.next_token #=> String
4261
4281
  #
4262
4282
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackInstances AWS API Documentation
@@ -4372,6 +4392,9 @@ module Aws::CloudFormation
4372
4392
  #
4373
4393
  # [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html
4374
4394
  #
4395
+ # @option params [Array<Types::OperationResultFilter>] :filters
4396
+ # The filter to apply to operation results.
4397
+ #
4375
4398
  # @return [Types::ListStackSetOperationResultsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4376
4399
  #
4377
4400
  # * {Types::ListStackSetOperationResultsOutput#summaries #summaries} => Array&lt;Types::StackSetOperationResultSummary&gt;
@@ -4387,6 +4410,12 @@ module Aws::CloudFormation
4387
4410
  # next_token: "NextToken",
4388
4411
  # max_results: 1,
4389
4412
  # call_as: "SELF", # accepts SELF, DELEGATED_ADMIN
4413
+ # filters: [
4414
+ # {
4415
+ # name: "OPERATION_RESULT_STATUS", # accepts OPERATION_RESULT_STATUS
4416
+ # values: "OperationResultFilterValues",
4417
+ # },
4418
+ # ],
4390
4419
  # })
4391
4420
  #
4392
4421
  # @example Response structure
@@ -4478,6 +4507,14 @@ module Aws::CloudFormation
4478
4507
  # resp.summaries[0].creation_timestamp #=> Time
4479
4508
  # resp.summaries[0].end_timestamp #=> Time
4480
4509
  # resp.summaries[0].status_reason #=> String
4510
+ # resp.summaries[0].status_details.failed_stack_instances_count #=> Integer
4511
+ # resp.summaries[0].operation_preferences.region_concurrency_type #=> String, one of "SEQUENTIAL", "PARALLEL"
4512
+ # resp.summaries[0].operation_preferences.region_order #=> Array
4513
+ # resp.summaries[0].operation_preferences.region_order[0] #=> String
4514
+ # resp.summaries[0].operation_preferences.failure_tolerance_count #=> Integer
4515
+ # resp.summaries[0].operation_preferences.failure_tolerance_percentage #=> Integer
4516
+ # resp.summaries[0].operation_preferences.max_concurrent_count #=> Integer
4517
+ # resp.summaries[0].operation_preferences.max_concurrent_percentage #=> Integer
4481
4518
  # resp.next_token #=> String
4482
4519
  #
4483
4520
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackSetOperations AWS API Documentation
@@ -5668,8 +5705,9 @@ module Aws::CloudFormation
5668
5705
  # [RegisterType](AWSCloudFormation/latest/APIReference/API_RegisterType.html).
5669
5706
  #
5670
5707
  # Once you've initiated testing on an extension using `TestType`, you
5671
- # can use [DescribeType][2] to monitor the current test status and test
5672
- # status description for the extension.
5708
+ # can pass the returned `TypeVersionArn` into [DescribeType][2] to
5709
+ # monitor the current test status and test status description for the
5710
+ # extension.
5673
5711
  #
5674
5712
  # An extension must have a test status of `PASSED` before it can be
5675
5713
  # published. For more information, see [Publishing extensions to make
@@ -6785,7 +6823,7 @@ module Aws::CloudFormation
6785
6823
  params: params,
6786
6824
  config: config)
6787
6825
  context[:gem_name] = 'aws-sdk-cloudformation'
6788
- context[:gem_version] = '1.70.0'
6826
+ context[:gem_version] = '1.72.0'
6789
6827
  Seahorse::Client::Request.new(handlers, context)
6790
6828
  end
6791
6829
 
@@ -237,6 +237,10 @@ module Aws::CloudFormation
237
237
  OperationIdAlreadyExistsException = Shapes::StructureShape.new(name: 'OperationIdAlreadyExistsException')
238
238
  OperationInProgressException = Shapes::StructureShape.new(name: 'OperationInProgressException')
239
239
  OperationNotFoundException = Shapes::StructureShape.new(name: 'OperationNotFoundException')
240
+ OperationResultFilter = Shapes::StructureShape.new(name: 'OperationResultFilter')
241
+ OperationResultFilterName = Shapes::StringShape.new(name: 'OperationResultFilterName')
242
+ OperationResultFilterValues = Shapes::StringShape.new(name: 'OperationResultFilterValues')
243
+ OperationResultFilters = Shapes::ListShape.new(name: 'OperationResultFilters')
240
244
  OperationStatus = Shapes::StringShape.new(name: 'OperationStatus')
241
245
  OperationStatusCheckFailedException = Shapes::StructureShape.new(name: 'OperationStatusCheckFailedException')
242
246
  OptionalSecureUrl = Shapes::StringShape.new(name: 'OptionalSecureUrl')
@@ -393,6 +397,7 @@ module Aws::CloudFormation
393
397
  StackSetOperationResultSummaries = Shapes::ListShape.new(name: 'StackSetOperationResultSummaries')
394
398
  StackSetOperationResultSummary = Shapes::StructureShape.new(name: 'StackSetOperationResultSummary')
395
399
  StackSetOperationStatus = Shapes::StringShape.new(name: 'StackSetOperationStatus')
400
+ StackSetOperationStatusDetails = Shapes::StructureShape.new(name: 'StackSetOperationStatusDetails')
396
401
  StackSetOperationStatusReason = Shapes::StringShape.new(name: 'StackSetOperationStatusReason')
397
402
  StackSetOperationSummaries = Shapes::ListShape.new(name: 'StackSetOperationSummaries')
398
403
  StackSetOperationSummary = Shapes::StructureShape.new(name: 'StackSetOperationSummary')
@@ -1049,6 +1054,7 @@ module Aws::CloudFormation
1049
1054
  ListStackSetOperationResultsInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
1050
1055
  ListStackSetOperationResultsInput.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
1051
1056
  ListStackSetOperationResultsInput.add_member(:call_as, Shapes::ShapeRef.new(shape: CallAs, location_name: "CallAs"))
1057
+ ListStackSetOperationResultsInput.add_member(:filters, Shapes::ShapeRef.new(shape: OperationResultFilters, location_name: "Filters"))
1052
1058
  ListStackSetOperationResultsInput.struct_class = Types::ListStackSetOperationResultsInput
1053
1059
 
1054
1060
  ListStackSetOperationResultsOutput.add_member(:summaries, Shapes::ShapeRef.new(shape: StackSetOperationResultSummaries, location_name: "Summaries"))
@@ -1144,6 +1150,12 @@ module Aws::CloudFormation
1144
1150
 
1145
1151
  OperationNotFoundException.struct_class = Types::OperationNotFoundException
1146
1152
 
1153
+ OperationResultFilter.add_member(:name, Shapes::ShapeRef.new(shape: OperationResultFilterName, location_name: "Name"))
1154
+ OperationResultFilter.add_member(:values, Shapes::ShapeRef.new(shape: OperationResultFilterValues, location_name: "Values"))
1155
+ OperationResultFilter.struct_class = Types::OperationResultFilter
1156
+
1157
+ OperationResultFilters.member = Shapes::ShapeRef.new(shape: OperationResultFilter)
1158
+
1147
1159
  OperationStatusCheckFailedException.struct_class = Types::OperationStatusCheckFailedException
1148
1160
 
1149
1161
  OrganizationalUnitIdList.member = Shapes::ShapeRef.new(shape: OrganizationalUnitId)
@@ -1404,6 +1416,7 @@ module Aws::CloudFormation
1404
1416
  StackInstance.add_member(:organizational_unit_id, Shapes::ShapeRef.new(shape: OrganizationalUnitId, location_name: "OrganizationalUnitId"))
1405
1417
  StackInstance.add_member(:drift_status, Shapes::ShapeRef.new(shape: StackDriftStatus, location_name: "DriftStatus"))
1406
1418
  StackInstance.add_member(:last_drift_check_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastDriftCheckTimestamp"))
1419
+ StackInstance.add_member(:last_operation_id, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "LastOperationId"))
1407
1420
  StackInstance.struct_class = Types::StackInstance
1408
1421
 
1409
1422
  StackInstanceComprehensiveStatus.add_member(:detailed_status, Shapes::ShapeRef.new(shape: StackInstanceDetailedStatus, location_name: "DetailedStatus"))
@@ -1429,6 +1442,7 @@ module Aws::CloudFormation
1429
1442
  StackInstanceSummary.add_member(:organizational_unit_id, Shapes::ShapeRef.new(shape: OrganizationalUnitId, location_name: "OrganizationalUnitId"))
1430
1443
  StackInstanceSummary.add_member(:drift_status, Shapes::ShapeRef.new(shape: StackDriftStatus, location_name: "DriftStatus"))
1431
1444
  StackInstanceSummary.add_member(:last_drift_check_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastDriftCheckTimestamp"))
1445
+ StackInstanceSummary.add_member(:last_operation_id, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "LastOperationId"))
1432
1446
  StackInstanceSummary.struct_class = Types::StackInstanceSummary
1433
1447
 
1434
1448
  StackNotFoundException.struct_class = Types::StackNotFoundException
@@ -1544,6 +1558,7 @@ module Aws::CloudFormation
1544
1558
  StackSetOperation.add_member(:deployment_targets, Shapes::ShapeRef.new(shape: DeploymentTargets, location_name: "DeploymentTargets"))
1545
1559
  StackSetOperation.add_member(:stack_set_drift_detection_details, Shapes::ShapeRef.new(shape: StackSetDriftDetectionDetails, location_name: "StackSetDriftDetectionDetails"))
1546
1560
  StackSetOperation.add_member(:status_reason, Shapes::ShapeRef.new(shape: StackSetOperationStatusReason, location_name: "StatusReason"))
1561
+ StackSetOperation.add_member(:status_details, Shapes::ShapeRef.new(shape: StackSetOperationStatusDetails, location_name: "StatusDetails"))
1547
1562
  StackSetOperation.struct_class = Types::StackSetOperation
1548
1563
 
1549
1564
  StackSetOperationPreferences.add_member(:region_concurrency_type, Shapes::ShapeRef.new(shape: RegionConcurrencyType, location_name: "RegionConcurrencyType"))
@@ -1564,6 +1579,9 @@ module Aws::CloudFormation
1564
1579
  StackSetOperationResultSummary.add_member(:organizational_unit_id, Shapes::ShapeRef.new(shape: OrganizationalUnitId, location_name: "OrganizationalUnitId"))
1565
1580
  StackSetOperationResultSummary.struct_class = Types::StackSetOperationResultSummary
1566
1581
 
1582
+ StackSetOperationStatusDetails.add_member(:failed_stack_instances_count, Shapes::ShapeRef.new(shape: FailedStackInstancesCount, location_name: "FailedStackInstancesCount"))
1583
+ StackSetOperationStatusDetails.struct_class = Types::StackSetOperationStatusDetails
1584
+
1567
1585
  StackSetOperationSummaries.member = Shapes::ShapeRef.new(shape: StackSetOperationSummary)
1568
1586
 
1569
1587
  StackSetOperationSummary.add_member(:operation_id, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "OperationId"))
@@ -1572,6 +1590,8 @@ module Aws::CloudFormation
1572
1590
  StackSetOperationSummary.add_member(:creation_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreationTimestamp"))
1573
1591
  StackSetOperationSummary.add_member(:end_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "EndTimestamp"))
1574
1592
  StackSetOperationSummary.add_member(:status_reason, Shapes::ShapeRef.new(shape: StackSetOperationStatusReason, location_name: "StatusReason"))
1593
+ StackSetOperationSummary.add_member(:status_details, Shapes::ShapeRef.new(shape: StackSetOperationStatusDetails, location_name: "StatusDetails"))
1594
+ StackSetOperationSummary.add_member(:operation_preferences, Shapes::ShapeRef.new(shape: StackSetOperationPreferences, location_name: "OperationPreferences"))
1575
1595
  StackSetOperationSummary.struct_class = Types::StackSetOperationSummary
1576
1596
 
1577
1597
  StackSetSummaries.member = Shapes::ShapeRef.new(shape: StackSetSummary)
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::CloudFormation
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,112 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::CloudFormation
11
+ class EndpointProvider
12
+ def initialize(rule_set = nil)
13
+ @@rule_set ||= begin
14
+ endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
+ Aws::Endpoints::RuleSet.new(
16
+ version: endpoint_rules['version'],
17
+ service_id: endpoint_rules['serviceId'],
18
+ parameters: endpoint_rules['parameters'],
19
+ rules: endpoint_rules['rules']
20
+ )
21
+ end
22
+ @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
+ end
24
+
25
+ def resolve_endpoint(parameters)
26
+ @provider.resolve_endpoint(parameters)
27
+ end
28
+
29
+ # @api private
30
+ RULES = <<-JSON
31
+ eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
33
+ dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
34
+ cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
35
+ dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
36
+ ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
37
+ ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
38
+ ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
39
+ aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
40
+ OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
41
+ UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
42
+ dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
43
+ UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
44
+ dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
45
+ ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
46
+ IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
47
+ aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
48
+ bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
49
+ ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
50
+ Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
51
+ cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
52
+ InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
53
+ aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
54
+ cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
55
+ InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
56
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
57
+ UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
58
+ SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
59
+ eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
60
+ InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
61
+ LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
62
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
63
+ b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
64
+ fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
65
+ RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
66
+ ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
67
+ ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
68
+ ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
69
+ dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
70
+ dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
71
+ Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
72
+ In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
73
+ YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
74
+ YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
75
+ cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
76
+ dCI6eyJ1cmwiOiJodHRwczovL2Nsb3VkZm9ybWF0aW9uLWZpcHMue1JlZ2lv
77
+ bn0ue1BhcnRpdGlvblJlc3VsdCNkdWFsU3RhY2tEbnNTdWZmaXh9IiwicHJv
78
+ cGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1d
79
+ fSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgYW5kIER1YWxTdGFj
80
+ ayBhcmUgZW5hYmxlZCwgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1
81
+ cHBvcnQgb25lIG9yIGJvdGgiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0
82
+ aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoi
83
+ VXNlRklQUyJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNv
84
+ bmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVl
85
+ LHsiZm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVz
86
+ dWx0In0sInN1cHBvcnRzRklQUyJdfV19XSwidHlwZSI6InRyZWUiLCJydWxl
87
+ cyI6W3siY29uZGl0aW9ucyI6W10sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7
88
+ ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL2Ns
89
+ b3VkZm9ybWF0aW9uLWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNk
90
+ bnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
91
+ ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W10sImVycm9yIjoi
92
+ RklQUyBpcyBlbmFibGVkIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBz
93
+ dXBwb3J0IEZJUFMiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6
94
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRHVh
95
+ bFN0YWNrIn0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29u
96
+ ZGl0aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUs
97
+ eyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1
98
+ bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5cGUiOiJ0cmVlIiwi
99
+ cnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJo
100
+ dHRwczovL2Nsb3VkZm9ybWF0aW9uLntSZWdpb259LntQYXJ0aXRpb25SZXN1
101
+ bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFk
102
+ ZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpb
103
+ XSwiZXJyb3IiOiJEdWFsU3RhY2sgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0
104
+ aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJy
105
+ b3IifV19LHsiY29uZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0
106
+ dHBzOi8vY2xvdWRmb3JtYXRpb24ue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3Vs
107
+ dCNkbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwi
108
+ dHlwZSI6ImVuZHBvaW50In1dfV19
109
+
110
+ JSON
111
+ end
112
+ end