aws-sdk-appconfig 1.27.0 → 1.29.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +13 -1
- data/VERSION +1 -1
- data/lib/aws-sdk-appconfig/client.rb +93 -69
- data/lib/aws-sdk-appconfig/client_api.rb +3 -0
- data/lib/aws-sdk-appconfig/endpoint_parameters.rb +3 -0
- data/lib/aws-sdk-appconfig/endpoint_provider.rb +41 -104
- data/lib/aws-sdk-appconfig/types.rb +60 -527
- data/lib/aws-sdk-appconfig.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cf9c7b43fcdf678a03151fe88f95923ed639e6821c09446aeb7ffbb50c425052
|
4
|
+
data.tar.gz: f0c915c9b30be8fce573e4dece1778eefae6ccafa2a0c3fa695e46045cf54970
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e983581d51d15ac9396a7c185150bbcd3ced30c0986a8e818ccca5efdc045ea929dcae474da73e5469789fdedb5b3601f37e271c8faaacc695c62ea79235c0a2
|
7
|
+
data.tar.gz: '084ecdfbe31dceb3be0e18fb5636153f0e2b0c5113be101667d967c11e15390d718bb885288bd48a5d859039f21b929a30a026095b51b78d6b88dd50fc92679e'
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,18 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.29.0 (2023-02-02)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - AWS AppConfig introduces KMS customer-managed key (CMK) encryption of configuration data, along with AWS Secrets Manager as a new configuration data source. S3 objects using SSE-KMS encryption and SSM Parameter Store SecureStrings are also now supported.
|
8
|
+
|
9
|
+
1.28.0 (2023-01-18)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
13
|
+
|
14
|
+
* Issue - Replace runtime endpoint resolution approach with generated ruby code.
|
15
|
+
|
4
16
|
1.27.0 (2022-10-25)
|
5
17
|
------------------
|
6
18
|
|
@@ -145,4 +157,4 @@ Unreleased Changes
|
|
145
157
|
1.0.0 (2019-11-25)
|
146
158
|
------------------
|
147
159
|
|
148
|
-
* Feature - Initial release of `aws-sdk-appconfig`.
|
160
|
+
* Feature - Initial release of `aws-sdk-appconfig`.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.29.0
|
@@ -435,11 +435,25 @@ module Aws::AppConfig
|
|
435
435
|
|
436
436
|
# Creates a configuration profile, which is information that enables
|
437
437
|
# AppConfig to access the configuration source. Valid configuration
|
438
|
-
# sources include the
|
439
|
-
#
|
440
|
-
#
|
441
|
-
#
|
442
|
-
#
|
438
|
+
# sources include the following:
|
439
|
+
#
|
440
|
+
# * Configuration data in YAML, JSON, and other formats stored in the
|
441
|
+
# AppConfig hosted configuration store
|
442
|
+
#
|
443
|
+
# * Configuration data stored as objects in an Amazon Simple Storage
|
444
|
+
# Service (Amazon S3) bucket
|
445
|
+
#
|
446
|
+
# * Pipelines stored in CodePipeline
|
447
|
+
#
|
448
|
+
# * Secrets stored in Secrets Manager
|
449
|
+
#
|
450
|
+
# * Standard and secure string parameters stored in Amazon Web Services
|
451
|
+
# Systems Manager Parameter Store
|
452
|
+
#
|
453
|
+
# * Configuration data in SSM documents stored in the Systems Manager
|
454
|
+
# document store
|
455
|
+
#
|
456
|
+
# A configuration profile includes the following information:
|
443
457
|
#
|
444
458
|
# * The URI location of the configuration data.
|
445
459
|
#
|
@@ -450,12 +464,11 @@ module Aws::AppConfig
|
|
450
464
|
# either a JSON Schema or an Amazon Web Services Lambda function.
|
451
465
|
#
|
452
466
|
# For more information, see [Create a Configuration and a Configuration
|
453
|
-
# Profile][
|
467
|
+
# Profile][1] in the *AppConfig User Guide*.
|
454
468
|
#
|
455
469
|
#
|
456
470
|
#
|
457
|
-
# [1]: http://docs.aws.amazon.com/
|
458
|
-
# [2]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-creating-configuration-and-profile.html
|
471
|
+
# [1]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-creating-configuration-and-profile.html
|
459
472
|
#
|
460
473
|
# @option params [required, String] :application_id
|
461
474
|
# The application ID.
|
@@ -467,17 +480,24 @@ module Aws::AppConfig
|
|
467
480
|
# A description of the configuration profile.
|
468
481
|
#
|
469
482
|
# @option params [required, String] :location_uri
|
470
|
-
# A URI to locate the configuration. You can specify the
|
471
|
-
#
|
472
|
-
#
|
473
|
-
#
|
474
|
-
#
|
475
|
-
#
|
476
|
-
#
|
477
|
-
#
|
478
|
-
#
|
479
|
-
#
|
480
|
-
#
|
483
|
+
# A URI to locate the configuration. You can specify the following:
|
484
|
+
#
|
485
|
+
# * For the AppConfig hosted configuration store and for feature flags,
|
486
|
+
# specify `hosted`.
|
487
|
+
#
|
488
|
+
# * For an Amazon Web Services Systems Manager Parameter Store
|
489
|
+
# parameter, specify either the parameter name in the format
|
490
|
+
# `ssm-parameter://<parameter name>` or the ARN.
|
491
|
+
#
|
492
|
+
# * For an Secrets Manager secret, specify the URI in the following
|
493
|
+
# format: `secrets-manager`\://<secret name>.
|
494
|
+
#
|
495
|
+
# * For an Amazon S3 object, specify the URI in the following format:
|
496
|
+
# `s3://<bucket>/<objectKey> `. Here is an example:
|
497
|
+
# `s3://my-bucket/my-app/us-east-1/my-config.json`
|
498
|
+
#
|
499
|
+
# * For an SSM document, specify either the document name in the format
|
500
|
+
# `ssm-document://<document name>` or the Amazon Resource Name (ARN).
|
481
501
|
#
|
482
502
|
# @option params [String] :retrieval_role_arn
|
483
503
|
# The ARN of an IAM role with permission to access the configuration at
|
@@ -818,12 +838,12 @@ module Aws::AppConfig
|
|
818
838
|
# inject logic or behavior at different points during the AppConfig
|
819
839
|
# workflow of creating or deploying a configuration.
|
820
840
|
#
|
821
|
-
# You can create your own extensions or use the Amazon Web
|
822
|
-
#
|
823
|
-
#
|
824
|
-
#
|
825
|
-
#
|
826
|
-
#
|
841
|
+
# You can create your own extensions or use the Amazon Web Services
|
842
|
+
# authored extensions provided by AppConfig. For most use cases, to
|
843
|
+
# create your own extension, you must create an Lambda function to
|
844
|
+
# perform any computation and processing defined in the extension. For
|
845
|
+
# more information about extensions, see [Working with AppConfig
|
846
|
+
# extensions][1] in the *AppConfig User Guide*.
|
827
847
|
#
|
828
848
|
#
|
829
849
|
#
|
@@ -919,19 +939,18 @@ module Aws::AppConfig
|
|
919
939
|
req.send_request(options)
|
920
940
|
end
|
921
941
|
|
922
|
-
# When you create an extension or configure an Amazon Web
|
923
|
-
#
|
924
|
-
#
|
925
|
-
#
|
926
|
-
# Amazon
|
927
|
-
#
|
928
|
-
#
|
929
|
-
#
|
930
|
-
#
|
931
|
-
#
|
932
|
-
#
|
933
|
-
# extensions
|
934
|
-
# extensions][1] in the *AppConfig User Guide*.
|
942
|
+
# When you create an extension or configure an Amazon Web Services
|
943
|
+
# authored extension, you associate the extension with an AppConfig
|
944
|
+
# application, environment, or configuration profile. For example, you
|
945
|
+
# can choose to run the `AppConfig deployment events to Amazon SNS`
|
946
|
+
# Amazon Web Services authored extension and receive notifications on an
|
947
|
+
# Amazon SNS topic anytime a configuration deployment is started for a
|
948
|
+
# specific application. Defining which extension to associate with an
|
949
|
+
# AppConfig resource is called an *extension association*. An extension
|
950
|
+
# association is a specified relationship between an extension and an
|
951
|
+
# AppConfig resource, such as an application or a configuration profile.
|
952
|
+
# For more information about extensions and associations, see [Working
|
953
|
+
# with AppConfig extensions][1] in the *AppConfig User Guide*.
|
935
954
|
#
|
936
955
|
#
|
937
956
|
#
|
@@ -1371,41 +1390,22 @@ module Aws::AppConfig
|
|
1371
1390
|
req.send_request(options)
|
1372
1391
|
end
|
1373
1392
|
|
1374
|
-
# Retrieves the latest deployed configuration.
|
1393
|
+
# (Deprecated) Retrieves the latest deployed configuration.
|
1375
1394
|
#
|
1376
1395
|
# Note the following important information.
|
1377
1396
|
#
|
1378
|
-
# * This API action
|
1379
|
-
#
|
1397
|
+
# * This API action is deprecated. Calls to receive configuration data
|
1398
|
+
# should use the [StartConfigurationSession][1] and
|
1380
1399
|
# [GetLatestConfiguration][2] APIs instead.
|
1381
1400
|
#
|
1382
1401
|
# * `GetConfiguration` is a priced call. For more information, see
|
1383
1402
|
# [Pricing][3].
|
1384
1403
|
#
|
1385
|
-
# * AppConfig uses the value of the `ClientConfigurationVersion`
|
1386
|
-
# parameter to identify the configuration version on your clients. If
|
1387
|
-
# you don’t send `ClientConfigurationVersion` with each call to
|
1388
|
-
# `GetConfiguration`, your clients receive the current configuration.
|
1389
|
-
# You are charged each time your clients receive a configuration.
|
1390
|
-
#
|
1391
|
-
# To avoid excess charges, we recommend you use the
|
1392
|
-
# [StartConfigurationSession][4] and [GetLatestConfiguration][5] APIs,
|
1393
|
-
# which track the client configuration version on your behalf. If you
|
1394
|
-
# choose to continue using `GetConfiguration`, we recommend that you
|
1395
|
-
# include the `ClientConfigurationVersion` value with every call to
|
1396
|
-
# `GetConfiguration`. The value to use for
|
1397
|
-
# `ClientConfigurationVersion` comes from the `ConfigurationVersion`
|
1398
|
-
# attribute returned by `GetConfiguration` when there is new or
|
1399
|
-
# updated data, and should be saved for subsequent calls to
|
1400
|
-
# `GetConfiguration`.
|
1401
|
-
#
|
1402
1404
|
#
|
1403
1405
|
#
|
1404
1406
|
# [1]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_StartConfigurationSession.html
|
1405
1407
|
# [2]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html
|
1406
1408
|
# [3]: https://aws.amazon.com/systems-manager/pricing/
|
1407
|
-
# [4]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/StartConfigurationSession.html
|
1408
|
-
# [5]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/GetLatestConfiguration.html
|
1409
1409
|
#
|
1410
1410
|
# @option params [required, String] :application
|
1411
1411
|
# The application to get. Specify either the application name or the
|
@@ -1435,18 +1435,24 @@ module Aws::AppConfig
|
|
1435
1435
|
# `GetConfiguration`, your clients receive the current configuration.
|
1436
1436
|
# You are charged each time your clients receive a configuration.
|
1437
1437
|
#
|
1438
|
-
# To avoid excess charges, we recommend
|
1439
|
-
#
|
1440
|
-
#
|
1441
|
-
#
|
1442
|
-
# the `ClientConfigurationVersion`
|
1438
|
+
# To avoid excess charges, we recommend you use the
|
1439
|
+
# [StartConfigurationSession][1] and [GetLatestConfiguration][2] APIs,
|
1440
|
+
# which track the client configuration version on your behalf. If you
|
1441
|
+
# choose to continue using `GetConfiguration`, we recommend that you
|
1442
|
+
# include the `ClientConfigurationVersion` value with every call to
|
1443
|
+
# `GetConfiguration`. The value to use for `ClientConfigurationVersion`
|
1444
|
+
# comes from the `ConfigurationVersion` attribute returned by
|
1445
|
+
# `GetConfiguration` when there is new or updated data, and should be
|
1446
|
+
# saved for subsequent calls to `GetConfiguration`.
|
1443
1447
|
#
|
1444
1448
|
# For more information about working with configurations, see
|
1445
|
-
# [Retrieving the Configuration][
|
1449
|
+
# [Retrieving the Configuration][3] in the *AppConfig User Guide*.
|
1446
1450
|
#
|
1447
1451
|
#
|
1448
1452
|
#
|
1449
|
-
# [1]:
|
1453
|
+
# [1]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/StartConfigurationSession.html
|
1454
|
+
# [2]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/GetLatestConfiguration.html
|
1455
|
+
# [3]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-retrieving-the-configuration.html
|
1450
1456
|
#
|
1451
1457
|
# @return [Types::Configuration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1452
1458
|
#
|
@@ -1602,6 +1608,8 @@ module Aws::AppConfig
|
|
1602
1608
|
# * {Types::Deployment#started_at #started_at} => Time
|
1603
1609
|
# * {Types::Deployment#completed_at #completed_at} => Time
|
1604
1610
|
# * {Types::Deployment#applied_extensions #applied_extensions} => Array<Types::AppliedExtension>
|
1611
|
+
# * {Types::Deployment#kms_key_arn #kms_key_arn} => String
|
1612
|
+
# * {Types::Deployment#kms_key_identifier #kms_key_identifier} => String
|
1605
1613
|
#
|
1606
1614
|
#
|
1607
1615
|
# @example Example: To retrieve deployment details
|
@@ -1725,6 +1733,8 @@ module Aws::AppConfig
|
|
1725
1733
|
# resp.applied_extensions[0].version_number #=> Integer
|
1726
1734
|
# resp.applied_extensions[0].parameters #=> Hash
|
1727
1735
|
# resp.applied_extensions[0].parameters["Name"] #=> String
|
1736
|
+
# resp.kms_key_arn #=> String
|
1737
|
+
# resp.kms_key_identifier #=> String
|
1728
1738
|
#
|
1729
1739
|
# @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetDeployment AWS API Documentation
|
1730
1740
|
#
|
@@ -2474,7 +2484,7 @@ module Aws::AppConfig
|
|
2474
2484
|
req.send_request(options)
|
2475
2485
|
end
|
2476
2486
|
|
2477
|
-
# Lists all custom and Amazon Web Services
|
2487
|
+
# Lists all custom and Amazon Web Services authored AppConfig extensions
|
2478
2488
|
# in the account. For more information about extensions, see [Working
|
2479
2489
|
# with AppConfig extensions][1] in the *AppConfig User Guide*.
|
2480
2490
|
#
|
@@ -2674,6 +2684,11 @@ module Aws::AppConfig
|
|
2674
2684
|
# categorize your AppConfig resources. Each tag consists of a key and an
|
2675
2685
|
# optional value, both of which you define.
|
2676
2686
|
#
|
2687
|
+
# @option params [String] :kms_key_identifier
|
2688
|
+
# The KMS key identifier (key ID, key alias, or key ARN). AppConfig uses
|
2689
|
+
# this ID to encrypt the configuration data using a customer managed
|
2690
|
+
# key.
|
2691
|
+
#
|
2677
2692
|
# @return [Types::Deployment] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
2678
2693
|
#
|
2679
2694
|
# * {Types::Deployment#application_id #application_id} => String
|
@@ -2695,6 +2710,8 @@ module Aws::AppConfig
|
|
2695
2710
|
# * {Types::Deployment#started_at #started_at} => Time
|
2696
2711
|
# * {Types::Deployment#completed_at #completed_at} => Time
|
2697
2712
|
# * {Types::Deployment#applied_extensions #applied_extensions} => Array<Types::AppliedExtension>
|
2713
|
+
# * {Types::Deployment#kms_key_arn #kms_key_arn} => String
|
2714
|
+
# * {Types::Deployment#kms_key_identifier #kms_key_identifier} => String
|
2698
2715
|
#
|
2699
2716
|
#
|
2700
2717
|
# @example Example: To start a configuration deployment
|
@@ -2752,6 +2769,7 @@ module Aws::AppConfig
|
|
2752
2769
|
# tags: {
|
2753
2770
|
# "TagKey" => "TagValue",
|
2754
2771
|
# },
|
2772
|
+
# kms_key_identifier: "Identifier",
|
2755
2773
|
# })
|
2756
2774
|
#
|
2757
2775
|
# @example Response structure
|
@@ -2792,6 +2810,8 @@ module Aws::AppConfig
|
|
2792
2810
|
# resp.applied_extensions[0].version_number #=> Integer
|
2793
2811
|
# resp.applied_extensions[0].parameters #=> Hash
|
2794
2812
|
# resp.applied_extensions[0].parameters["Name"] #=> String
|
2813
|
+
# resp.kms_key_arn #=> String
|
2814
|
+
# resp.kms_key_identifier #=> String
|
2795
2815
|
#
|
2796
2816
|
# @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/StartDeployment AWS API Documentation
|
2797
2817
|
#
|
@@ -2836,6 +2856,8 @@ module Aws::AppConfig
|
|
2836
2856
|
# * {Types::Deployment#started_at #started_at} => Time
|
2837
2857
|
# * {Types::Deployment#completed_at #completed_at} => Time
|
2838
2858
|
# * {Types::Deployment#applied_extensions #applied_extensions} => Array<Types::AppliedExtension>
|
2859
|
+
# * {Types::Deployment#kms_key_arn #kms_key_arn} => String
|
2860
|
+
# * {Types::Deployment#kms_key_identifier #kms_key_identifier} => String
|
2839
2861
|
#
|
2840
2862
|
#
|
2841
2863
|
# @example Example: To stop configuration deployment
|
@@ -2903,6 +2925,8 @@ module Aws::AppConfig
|
|
2903
2925
|
# resp.applied_extensions[0].version_number #=> Integer
|
2904
2926
|
# resp.applied_extensions[0].parameters #=> Hash
|
2905
2927
|
# resp.applied_extensions[0].parameters["Name"] #=> String
|
2928
|
+
# resp.kms_key_arn #=> String
|
2929
|
+
# resp.kms_key_identifier #=> String
|
2906
2930
|
#
|
2907
2931
|
# @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/StopDeployment AWS API Documentation
|
2908
2932
|
#
|
@@ -3528,7 +3552,7 @@ module Aws::AppConfig
|
|
3528
3552
|
params: params,
|
3529
3553
|
config: config)
|
3530
3554
|
context[:gem_name] = 'aws-sdk-appconfig'
|
3531
|
-
context[:gem_version] = '1.
|
3555
|
+
context[:gem_version] = '1.29.0'
|
3532
3556
|
Seahorse::Client::Request.new(handlers, context)
|
3533
3557
|
end
|
3534
3558
|
|
@@ -343,6 +343,8 @@ module Aws::AppConfig
|
|
343
343
|
Deployment.add_member(:started_at, Shapes::ShapeRef.new(shape: Iso8601DateTime, location_name: "StartedAt"))
|
344
344
|
Deployment.add_member(:completed_at, Shapes::ShapeRef.new(shape: Iso8601DateTime, location_name: "CompletedAt"))
|
345
345
|
Deployment.add_member(:applied_extensions, Shapes::ShapeRef.new(shape: AppliedExtensions, location_name: "AppliedExtensions"))
|
346
|
+
Deployment.add_member(:kms_key_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "KmsKeyArn"))
|
347
|
+
Deployment.add_member(:kms_key_identifier, Shapes::ShapeRef.new(shape: Identifier, location_name: "KmsKeyIdentifier"))
|
346
348
|
Deployment.struct_class = Types::Deployment
|
347
349
|
|
348
350
|
DeploymentEvent.add_member(:event_type, Shapes::ShapeRef.new(shape: DeploymentEventType, location_name: "EventType"))
|
@@ -602,6 +604,7 @@ module Aws::AppConfig
|
|
602
604
|
StartDeploymentRequest.add_member(:configuration_version, Shapes::ShapeRef.new(shape: Version, required: true, location_name: "ConfigurationVersion"))
|
603
605
|
StartDeploymentRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
|
604
606
|
StartDeploymentRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
|
607
|
+
StartDeploymentRequest.add_member(:kms_key_identifier, Shapes::ShapeRef.new(shape: Identifier, location_name: "KmsKeyIdentifier"))
|
605
608
|
StartDeploymentRequest.struct_class = Types::StartDeploymentRequest
|
606
609
|
|
607
610
|
StopDeploymentRequest.add_member(:application_id, Shapes::ShapeRef.new(shape: Id, required: true, location: "uri", location_name: "ApplicationId"))
|
@@ -50,6 +50,9 @@ module Aws::AppConfig
|
|
50
50
|
|
51
51
|
def initialize(options = {})
|
52
52
|
self[:region] = options[:region]
|
53
|
+
if self[:region].nil?
|
54
|
+
raise ArgumentError, "Missing required EndpointParameter: :region"
|
55
|
+
end
|
53
56
|
self[:use_dual_stack] = options[:use_dual_stack]
|
54
57
|
self[:use_dual_stack] = false if self[:use_dual_stack].nil?
|
55
58
|
if self[:use_dual_stack].nil?
|
@@ -9,112 +9,49 @@
|
|
9
9
|
|
10
10
|
module Aws::AppConfig
|
11
11
|
class EndpointProvider
|
12
|
-
def
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
12
|
+
def resolve_endpoint(parameters)
|
13
|
+
region = parameters.region
|
14
|
+
use_dual_stack = parameters.use_dual_stack
|
15
|
+
use_fips = parameters.use_fips
|
16
|
+
endpoint = parameters.endpoint
|
17
|
+
if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
|
18
|
+
if Aws::Endpoints::Matchers.set?(endpoint)
|
19
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
20
|
+
raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
|
21
|
+
end
|
22
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
23
|
+
raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
|
24
|
+
end
|
25
|
+
return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
|
26
|
+
end
|
27
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
28
|
+
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
|
29
|
+
return Aws::Endpoints::Endpoint.new(url: "https://appconfig-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
30
|
+
end
|
31
|
+
raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
|
32
|
+
end
|
33
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
34
|
+
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
|
35
|
+
if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-east-1")
|
36
|
+
return Aws::Endpoints::Endpoint.new(url: "https://appconfig.us-gov-east-1.amazonaws.com", headers: {}, properties: {})
|
37
|
+
end
|
38
|
+
if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-west-1")
|
39
|
+
return Aws::Endpoints::Endpoint.new(url: "https://appconfig.us-gov-west-1.amazonaws.com", headers: {}, properties: {})
|
40
|
+
end
|
41
|
+
return Aws::Endpoints::Endpoint.new(url: "https://appconfig-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
42
|
+
end
|
43
|
+
raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
|
44
|
+
end
|
45
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
46
|
+
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
|
47
|
+
return Aws::Endpoints::Endpoint.new(url: "https://appconfig.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
48
|
+
end
|
49
|
+
raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
|
50
|
+
end
|
51
|
+
return Aws::Endpoints::Endpoint.new(url: "https://appconfig.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
21
52
|
end
|
22
|
-
|
23
|
-
end
|
53
|
+
raise ArgumentError, 'No endpoint could be resolved'
|
24
54
|
|
25
|
-
def resolve_endpoint(parameters)
|
26
|
-
@provider.resolve_endpoint(parameters)
|
27
55
|
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
|
-
dCI6eyJ1cmwiOiJodHRwczovL2FwcGNvbmZpZy1maXBzLntSZWdpb259LntQ
|
77
|
-
YXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRp
|
78
|
-
ZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJj
|
79
|
-
b25kaXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGFuZCBEdWFsU3RhY2sgYXJl
|
80
|
-
IGVuYWJsZWQsIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0
|
81
|
-
IG9uZSBvciBib3RoIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMi
|
82
|
-
Olt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJ
|
83
|
-
UFMifSx0cnVlXX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRp
|
84
|
-
b25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZu
|
85
|
-
IjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9
|
86
|
-
LCJzdXBwb3J0c0ZJUFMiXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7
|
87
|
-
ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25k
|
88
|
-
aXRpb25zIjpbeyJmbiI6InN0cmluZ0VxdWFscyIsImFyZ3YiOlt7InJlZiI6
|
89
|
-
IlJlZ2lvbiJ9LCJ1cy1nb3Ytd2VzdC0xIl19XSwiZW5kcG9pbnQiOnsidXJs
|
90
|
-
IjoiaHR0cHM6Ly9hcHBjb25maWcudXMtZ292LXdlc3QtMS5hbWF6b25hd3Mu
|
91
|
-
Y29tIiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVu
|
92
|
-
ZHBvaW50In0seyJjb25kaXRpb25zIjpbeyJmbiI6InN0cmluZ0VxdWFscyIs
|
93
|
-
ImFyZ3YiOlt7InJlZiI6IlJlZ2lvbiJ9LCJ1cy1nb3YtZWFzdC0xIl19XSwi
|
94
|
-
ZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9hcHBjb25maWcudXMtZ292LWVh
|
95
|
-
c3QtMS5hbWF6b25hd3MuY29tIiwicHJvcGVydGllcyI6e30sImhlYWRlcnMi
|
96
|
-
Ont9fSwidHlwZSI6ImVuZHBvaW50In0seyJjb25kaXRpb25zIjpbXSwiZW5k
|
97
|
-
cG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9hcHBjb25maWctZmlwcy57UmVnaW9u
|
98
|
-
fS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7
|
99
|
-
fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19XX0seyJjb25k
|
100
|
-
aXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGlzIGVuYWJsZWQgYnV0IHRoaXMg
|
101
|
-
cGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgRklQUyIsInR5cGUiOiJlcnJv
|
102
|
-
ciJ9XX0seyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJh
|
103
|
-
cmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0eXBlIjoi
|
104
|
-
dHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5F
|
105
|
-
cXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7
|
106
|
-
InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1YWxTdGFjayJd
|
107
|
-
fV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W10s
|
108
|
-
ImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBwY29uZmlnLntSZWdpb259
|
109
|
-
LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3Bl
|
110
|
-
cnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0s
|
111
|
-
eyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJEdWFsU3RhY2sgaXMgZW5hYmxl
|
112
|
-
ZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBEdWFsU3Rh
|
113
|
-
Y2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W10sImVuZHBv
|
114
|
-
aW50Ijp7InVybCI6Imh0dHBzOi8vYXBwY29uZmlnLntSZWdpb259LntQYXJ0
|
115
|
-
aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFk
|
116
|
-
ZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1dfQ==
|
117
|
-
|
118
|
-
JSON
|
119
56
|
end
|
120
57
|
end
|