aws-sdk-appconfig 1.28.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a89fe4b7bffcbc8e5c19cf223f43a220a73a97dc674b18f0db2ff4338eb65c0
4
- data.tar.gz: 14ed4b25fc36d9318c5e025d64d4cb04df2ae9642fbe2a1a5350eae29a0a98ec
3
+ metadata.gz: cf9c7b43fcdf678a03151fe88f95923ed639e6821c09446aeb7ffbb50c425052
4
+ data.tar.gz: f0c915c9b30be8fce573e4dece1778eefae6ccafa2a0c3fa695e46045cf54970
5
5
  SHA512:
6
- metadata.gz: 297d8a5919dc62b3ce17be6b3cc2f665c07b1cced8b4c767eb051cebcb43f008d2d1dbb2e26bf9a745881d717d667a129504da646c888feaf3087a24315d42b1
7
- data.tar.gz: 103271c724d8aba8fd84fc168aa0dc401e1961f1a31e75cd0fdd4d28fd0545b77e7ecea424617879666cf79d01fb49eb4fcf00ed1c1763713936417297d755d5
6
+ metadata.gz: e983581d51d15ac9396a7c185150bbcd3ced30c0986a8e818ccca5efdc045ea929dcae474da73e5469789fdedb5b3601f37e271c8faaacc695c62ea79235c0a2
7
+ data.tar.gz: '084ecdfbe31dceb3be0e18fb5636153f0e2b0c5113be101667d967c11e15390d718bb885288bd48a5d859039f21b929a30a026095b51b78d6b88dd50fc92679e'
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
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
+
4
9
  1.28.0 (2023-01-18)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.28.0
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 AppConfig hosted configuration store, Amazon Web
439
- # Services Systems Manager (SSM) documents, SSM Parameter Store
440
- # parameters, Amazon S3 objects, or any [integration source action][1]
441
- # supported by CodePipeline. A configuration profile includes the
442
- # following information:
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][2] in the *AppConfig User Guide*.
467
+ # Profile][1] in the *AppConfig User Guide*.
454
468
  #
455
469
  #
456
470
  #
457
- # [1]: http://docs.aws.amazon.com/codepipeline/latest/userguide/integrations-action-type.html#integrations-source
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 AppConfig
471
- # hosted configuration store, Systems Manager (SSM) document, an SSM
472
- # Parameter Store parameter, or an Amazon S3 object. For the hosted
473
- # configuration store and for feature flags, specify `hosted`. For an
474
- # SSM document, specify either the document name in the format
475
- # `ssm-document://<Document_name>` or the Amazon Resource Name (ARN).
476
- # For a parameter, specify either the parameter name in the format
477
- # `ssm-parameter://<Parameter_name>` or the ARN. For an Amazon S3
478
- # object, specify the URI in the following format:
479
- # `s3://<bucket>/<objectKey> `. Here is an example:
480
- # `s3://my-bucket/my-app/us-east-1/my-config.json`
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`\://&lt;secret name&gt;.
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
- # Services-authored extensions provided by AppConfig. For most
823
- # use-cases, to create your own extension, you must create an Lambda
824
- # function to perform any computation and processing defined in the
825
- # extension. For more information about extensions, see [Working with
826
- # AppConfig extensions][1] in the *AppConfig User Guide*.
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
- # Services-authored extension, you associate the extension with an
924
- # AppConfig application, environment, or configuration profile. For
925
- # example, you can choose to run the `AppConfig deployment events to
926
- # Amazon SNS` Amazon Web Services-authored extension and receive
927
- # notifications on an Amazon SNS topic anytime a configuration
928
- # deployment is started for a specific application. Defining which
929
- # extension to associate with an AppConfig resource is called an
930
- # *extension association*. An extension association is a specified
931
- # relationship between an extension and an AppConfig resource, such as
932
- # an application or a configuration profile. For more information about
933
- # extensions and associations, see [Working with AppConfig
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 has been deprecated. Calls to receive configuration
1379
- # data should use the [StartConfigurationSession][1] and
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 that you include the
1439
- # `ClientConfigurationVersion` value with every call to
1440
- # `GetConfiguration`. This value must be saved on your client.
1441
- # Subsequent calls to `GetConfiguration` must pass this value by using
1442
- # the `ClientConfigurationVersion` parameter.
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][1] in the *AppConfig User Guide*.
1449
+ # [Retrieving the Configuration][3] in the *AppConfig User Guide*.
1446
1450
  #
1447
1451
  #
1448
1452
  #
1449
- # [1]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-retrieving-the-configuration.html
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&lt;Types::AppliedExtension&gt;
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-authored AppConfig extensions
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&lt;Types::AppliedExtension&gt;
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&lt;Types::AppliedExtension&gt;
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.28.0'
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?
@@ -15,7 +15,7 @@ module Aws::AppConfig
15
15
  use_fips = parameters.use_fips
16
16
  endpoint = parameters.endpoint
17
17
  if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
- if Aws::Endpoints::Matchers.set?(endpoint) && (url = Aws::Endpoints::Matchers.parse_url(endpoint))
18
+ if Aws::Endpoints::Matchers.set?(endpoint)
19
19
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
20
  raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
21
  end
@@ -32,12 +32,12 @@ module Aws::AppConfig
32
32
  end
33
33
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
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-west-1")
36
- return Aws::Endpoints::Endpoint.new(url: "https://appconfig.us-gov-west-1.amazonaws.com", headers: {}, properties: {})
37
- end
38
35
  if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-east-1")
39
36
  return Aws::Endpoints::Endpoint.new(url: "https://appconfig.us-gov-east-1.amazonaws.com", headers: {}, properties: {})
40
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
41
  return Aws::Endpoints::Endpoint.new(url: "https://appconfig-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
42
42
  end
43
43
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
@@ -10,7 +10,7 @@
10
10
  module Aws::AppConfig
11
11
  module Types
12
12
 
13
- # An action defines the tasks the extension performs during the
13
+ # An action defines the tasks that the extension performs during the
14
14
  # AppConfig workflow. Each action includes an action point such as
15
15
  # `ON_CREATE_HOSTED_CONFIGURATION`, `PRE_DEPLOYMENT`, or
16
16
  # `ON_DEPLOYMENT`. Each action also includes a name, a URI to an Lambda
@@ -436,17 +436,25 @@ module Aws::AppConfig
436
436
  # @return [String]
437
437
  #
438
438
  # @!attribute [rw] location_uri
439
- # A URI to locate the configuration. You can specify the AppConfig
440
- # hosted configuration store, Systems Manager (SSM) document, an SSM
441
- # Parameter Store parameter, or an Amazon S3 object. For the hosted
442
- # configuration store and for feature flags, specify `hosted`. For an
443
- # SSM document, specify either the document name in the format
444
- # `ssm-document://<Document_name>` or the Amazon Resource Name (ARN).
445
- # For a parameter, specify either the parameter name in the format
446
- # `ssm-parameter://<Parameter_name>` or the ARN. For an Amazon S3
447
- # object, specify the URI in the following format:
448
- # `s3://<bucket>/<objectKey> `. Here is an example:
449
- # `s3://my-bucket/my-app/us-east-1/my-config.json`
439
+ # A URI to locate the configuration. You can specify the following:
440
+ #
441
+ # * For the AppConfig hosted configuration store and for feature
442
+ # flags, specify `hosted`.
443
+ #
444
+ # * For an Amazon Web Services Systems Manager Parameter Store
445
+ # parameter, specify either the parameter name in the format
446
+ # `ssm-parameter://<parameter name>` or the ARN.
447
+ #
448
+ # * For an Secrets Manager secret, specify the URI in the following
449
+ # format: `secrets-manager`\://&lt;secret name&gt;.
450
+ #
451
+ # * For an Amazon S3 object, specify the URI in the following format:
452
+ # `s3://<bucket>/<objectKey> `. Here is an example:
453
+ # `s3://my-bucket/my-app/us-east-1/my-config.json`
454
+ #
455
+ # * For an SSM document, specify either the document name in the
456
+ # format `ssm-document://<document name>` or the Amazon Resource
457
+ # Name (ARN).
450
458
  # @return [String]
451
459
  #
452
460
  # @!attribute [rw] retrieval_role_arn
@@ -944,6 +952,20 @@ module Aws::AppConfig
944
952
  # called.
945
953
  # @return [Array<Types::AppliedExtension>]
946
954
  #
955
+ # @!attribute [rw] kms_key_arn
956
+ # The Amazon Resource Name of the Key Management Service key used to
957
+ # encrypt configuration data. You can encrypt secrets stored in
958
+ # Secrets Manager, Amazon Simple Storage Service (Amazon S3) objects
959
+ # encrypted with SSE-KMS, or secure string parameters stored in Amazon
960
+ # Web Services Systems Manager Parameter Store.
961
+ # @return [String]
962
+ #
963
+ # @!attribute [rw] kms_key_identifier
964
+ # The KMS key identifier (key ID, key alias, or key ARN). AppConfig
965
+ # uses this ID to encrypt the configuration data using a customer
966
+ # managed key.
967
+ # @return [String]
968
+ #
947
969
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/Deployment AWS API Documentation
948
970
  #
949
971
  class Deployment < Struct.new(
@@ -965,7 +987,9 @@ module Aws::AppConfig
965
987
  :percentage_complete,
966
988
  :started_at,
967
989
  :completed_at,
968
- :applied_extensions)
990
+ :applied_extensions,
991
+ :kms_key_arn,
992
+ :kms_key_identifier)
969
993
  SENSITIVE = []
970
994
  include Aws::Structure
971
995
  end
@@ -1394,7 +1418,7 @@ module Aws::AppConfig
1394
1418
 
1395
1419
  # @!attribute [rw] items
1396
1420
  # The list of available extensions. The list includes Amazon Web
1397
- # Services-authored and user-created extensions.
1421
+ # Services authored and user-created extensions.
1398
1422
  # @return [Array<Types::ExtensionSummary>]
1399
1423
  #
1400
1424
  # @!attribute [rw] next_token
@@ -1473,18 +1497,25 @@ module Aws::AppConfig
1473
1497
  # `GetConfiguration`, your clients receive the current configuration.
1474
1498
  # You are charged each time your clients receive a configuration.
1475
1499
  #
1476
- # To avoid excess charges, we recommend that you include the
1477
- # `ClientConfigurationVersion` value with every call to
1478
- # `GetConfiguration`. This value must be saved on your client.
1479
- # Subsequent calls to `GetConfiguration` must pass this value by using
1480
- # the `ClientConfigurationVersion` parameter.
1500
+ # To avoid excess charges, we recommend you use the
1501
+ # [StartConfigurationSession][1] and [GetLatestConfiguration][2] APIs,
1502
+ # which track the client configuration version on your behalf. If you
1503
+ # choose to continue using `GetConfiguration`, we recommend that you
1504
+ # include the `ClientConfigurationVersion` value with every call to
1505
+ # `GetConfiguration`. The value to use for
1506
+ # `ClientConfigurationVersion` comes from the `ConfigurationVersion`
1507
+ # attribute returned by `GetConfiguration` when there is new or
1508
+ # updated data, and should be saved for subsequent calls to
1509
+ # `GetConfiguration`.
1481
1510
  #
1482
1511
  # For more information about working with configurations, see
1483
- # [Retrieving the Configuration][1] in the *AppConfig User Guide*.
1512
+ # [Retrieving the Configuration][3] in the *AppConfig User Guide*.
1484
1513
  #
1485
1514
  #
1486
1515
  #
1487
- # [1]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-retrieving-the-configuration.html
1516
+ # [1]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/StartConfigurationSession.html
1517
+ # [2]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/GetLatestConfiguration.html
1518
+ # [3]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-retrieving-the-configuration.html
1488
1519
  # @return [String]
1489
1520
  #
1490
1521
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetConfigurationRequest AWS API Documentation
@@ -2140,6 +2171,12 @@ module Aws::AppConfig
2140
2171
  # an optional value, both of which you define.
2141
2172
  # @return [Hash<String,String>]
2142
2173
  #
2174
+ # @!attribute [rw] kms_key_identifier
2175
+ # The KMS key identifier (key ID, key alias, or key ARN). AppConfig
2176
+ # uses this ID to encrypt the configuration data using a customer
2177
+ # managed key.
2178
+ # @return [String]
2179
+ #
2143
2180
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/StartDeploymentRequest AWS API Documentation
2144
2181
  #
2145
2182
  class StartDeploymentRequest < Struct.new(
@@ -2149,7 +2186,8 @@ module Aws::AppConfig
2149
2186
  :configuration_profile_id,
2150
2187
  :configuration_version,
2151
2188
  :description,
2152
- :tags)
2189
+ :tags,
2190
+ :kms_key_identifier)
2153
2191
  SENSITIVE = []
2154
2192
  include Aws::Structure
2155
2193
  end
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-appconfig/customizations'
52
52
  # @!group service
53
53
  module Aws::AppConfig
54
54
 
55
- GEM_VERSION = '1.28.0'
55
+ GEM_VERSION = '1.29.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-appconfig
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.28.0
4
+ version: 1.29.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-18 00:00:00.000000000 Z
11
+ date: 2023-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core