aws-sdk-appconfig 1.17.0 → 1.21.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.
@@ -119,7 +119,9 @@ module Aws::AppConfig
119
119
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
120
  # are very aggressive. Construct and pass an instance of
121
121
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
122
+ # enable retries and extended timeouts. Instance profile credential
123
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
124
+ # to true.
123
125
  #
124
126
  # @option options [required, String] :region
125
127
  # The AWS region to connect to. The configured `:region` is
@@ -275,6 +277,15 @@ module Aws::AppConfig
275
277
  # ** Please note ** When response stubbing is enabled, no HTTP
276
278
  # requests are made, and retries are disabled.
277
279
  #
280
+ # @option options [Boolean] :use_dualstack_endpoint
281
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
282
+ # will be used if available.
283
+ #
284
+ # @option options [Boolean] :use_fips_endpoint
285
+ # When set to `true`, fips compatible endpoints will be used if available.
286
+ # When a `fips` region is used, the region is normalized and this config
287
+ # is set to `true`.
288
+ #
278
289
  # @option options [Boolean] :validate_params (true)
279
290
  # When `true`, request parameters are validated before
280
291
  # sending the request.
@@ -327,11 +338,12 @@ module Aws::AppConfig
327
338
 
328
339
  # @!group API Operations
329
340
 
330
- # An application in AppConfig is a logical unit of code that provides
331
- # capabilities for your customers. For example, an application can be a
332
- # microservice that runs on Amazon EC2 instances, a mobile application
333
- # installed by your users, a serverless application using Amazon API
334
- # Gateway and AWS Lambda, or any system you run on behalf of others.
341
+ # Creates an application. An application in AppConfig is a logical unit
342
+ # of code that provides capabilities for your customers. For example, an
343
+ # application can be a microservice that runs on Amazon EC2 instances, a
344
+ # mobile application installed by your users, a serverless application
345
+ # using Amazon API Gateway and Lambda, or any system you run on behalf
346
+ # of others.
335
347
  #
336
348
  # @option params [required, String] :name
337
349
  # A name for the application.
@@ -350,6 +362,23 @@ module Aws::AppConfig
350
362
  # * {Types::Application#name #name} => String
351
363
  # * {Types::Application#description #description} => String
352
364
  #
365
+ #
366
+ # @example Example: To create an application
367
+ #
368
+ # # The following create-application example creates an application in AWS AppConfig.
369
+ #
370
+ # resp = client.create_application({
371
+ # description: "An application used for creating an example.",
372
+ # name: "example-application",
373
+ # })
374
+ #
375
+ # resp.to_h outputs the following:
376
+ # {
377
+ # description: "An application used for creating an example.",
378
+ # id: "339ohji",
379
+ # name: "example-application",
380
+ # }
381
+ #
353
382
  # @example Request syntax with placeholder values
354
383
  #
355
384
  # resp = client.create_application({
@@ -375,25 +404,29 @@ module Aws::AppConfig
375
404
  req.send_request(options)
376
405
  end
377
406
 
378
- # Information that enables AppConfig to access the configuration source.
379
- # Valid configuration sources include Systems Manager (SSM) documents,
380
- # SSM Parameter Store parameters, and Amazon S3 objects. A configuration
381
- # profile includes the following information.
407
+ # Creates a configuration profile, which is information that enables
408
+ # AppConfig to access the configuration source. Valid configuration
409
+ # sources include the AppConfig hosted configuration store, Amazon Web
410
+ # Services Systems Manager (SSM) documents, SSM Parameter Store
411
+ # parameters, Amazon S3 objects, or any [integration source action][1]
412
+ # supported by CodePipeline. A configuration profile includes the
413
+ # following information:
382
414
  #
383
- # * The Uri location of the configuration data.
415
+ # * The URI location of the configuration data.
384
416
  #
385
- # * The AWS Identity and Access Management (IAM) role that provides
386
- # access to the configuration data.
417
+ # * The Identity and Access Management (IAM) role that provides access
418
+ # to the configuration data.
387
419
  #
388
420
  # * A validator for the configuration data. Available validators include
389
- # either a JSON Schema or an AWS Lambda function.
421
+ # either a JSON Schema or an Lambda function.
390
422
  #
391
423
  # For more information, see [Create a Configuration and a Configuration
392
- # Profile][1] in the *AWS AppConfig User Guide*.
424
+ # Profile][2] in the *AppConfig User Guide*.
393
425
  #
394
426
  #
395
427
  #
396
- # [1]: http://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-creating-configuration-and-profile.html
428
+ # [1]: http://docs.aws.amazon.com/codepipeline/latest/userguide/integrations-action-type.html#integrations-source
429
+ # [2]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-creating-configuration-and-profile.html
397
430
  #
398
431
  # @option params [required, String] :application_id
399
432
  # The application ID.
@@ -405,19 +438,25 @@ module Aws::AppConfig
405
438
  # A description of the configuration profile.
406
439
  #
407
440
  # @option params [required, String] :location_uri
408
- # A URI to locate the configuration. You can specify a Systems Manager
409
- # (SSM) document, an SSM Parameter Store parameter, or an Amazon S3
410
- # object. For an SSM document, specify either the document name in the
411
- # format `ssm-document://<Document_name>` or the Amazon Resource Name
412
- # (ARN). For a parameter, specify either the parameter name in the
413
- # format `ssm-parameter://<Parameter_name>` or the ARN. For an Amazon S3
441
+ # A URI to locate the configuration. You can specify the AppConfig
442
+ # hosted configuration store, Systems Manager (SSM) document, an SSM
443
+ # Parameter Store parameter, or an Amazon S3 object. For the hosted
444
+ # configuration store and for feature flags, specify `hosted`. For an
445
+ # SSM document, specify either the document name in the format
446
+ # `ssm-document://<Document_name>` or the Amazon Resource Name (ARN).
447
+ # For a parameter, specify either the parameter name in the format
448
+ # `ssm-parameter://<Parameter_name>` or the ARN. For an Amazon S3
414
449
  # object, specify the URI in the following format:
415
450
  # `s3://<bucket>/<objectKey> `. Here is an example:
416
- # s3://my-bucket/my-app/us-east-1/my-config.json
451
+ # `s3://my-bucket/my-app/us-east-1/my-config.json`
417
452
  #
418
453
  # @option params [String] :retrieval_role_arn
419
454
  # The ARN of an IAM role with permission to access the configuration at
420
- # the specified LocationUri.
455
+ # the specified `LocationUri`.
456
+ #
457
+ # A retrieval role ARN is not required for configurations stored in the
458
+ # AppConfig hosted configuration store. It is required for all other
459
+ # sources that store your configuration.
421
460
  #
422
461
  # @option params [Array<Types::Validator>] :validators
423
462
  # A list of methods for validating the configuration.
@@ -427,6 +466,12 @@ module Aws::AppConfig
427
466
  # and categorize your AppConfig resources. Each tag consists of a key
428
467
  # and an optional value, both of which you define.
429
468
  #
469
+ # @option params [String] :type
470
+ # The type of configurations that the configuration profile contains. A
471
+ # configuration can be a feature flag used for enabling or disabling new
472
+ # features or a free-form configuration used for distributing
473
+ # configurations to your application.
474
+ #
430
475
  # @return [Types::ConfigurationProfile] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
431
476
  #
432
477
  # * {Types::ConfigurationProfile#application_id #application_id} => String
@@ -436,6 +481,29 @@ module Aws::AppConfig
436
481
  # * {Types::ConfigurationProfile#location_uri #location_uri} => String
437
482
  # * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
438
483
  # * {Types::ConfigurationProfile#validators #validators} => Array&lt;Types::Validator&gt;
484
+ # * {Types::ConfigurationProfile#type #type} => String
485
+ #
486
+ #
487
+ # @example Example: To create a configuration profile
488
+ #
489
+ # # The following create-configuration-profile example creates a configuration profile using a configuration stored in
490
+ # # Parameter Store, a capability of Systems Manager.
491
+ #
492
+ # resp = client.create_configuration_profile({
493
+ # application_id: "339ohji",
494
+ # location_uri: "ssm-parameter://Example-Parameter",
495
+ # name: "Example-Configuration-Profile",
496
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
497
+ # })
498
+ #
499
+ # resp.to_h outputs the following:
500
+ # {
501
+ # application_id: "339ohji",
502
+ # id: "ur8hx2f",
503
+ # location_uri: "ssm-parameter://Example-Parameter",
504
+ # name: "Example-Configuration-Profile",
505
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
506
+ # }
439
507
  #
440
508
  # @example Request syntax with placeholder values
441
509
  #
@@ -454,6 +522,7 @@ module Aws::AppConfig
454
522
  # tags: {
455
523
  # "TagKey" => "TagValue",
456
524
  # },
525
+ # type: "ConfigurationProfileType",
457
526
  # })
458
527
  #
459
528
  # @example Response structure
@@ -467,6 +536,7 @@ module Aws::AppConfig
467
536
  # resp.validators #=> Array
468
537
  # resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
469
538
  # resp.validators[0].content #=> String
539
+ # resp.type #=> String
470
540
  #
471
541
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateConfigurationProfile AWS API Documentation
472
542
  #
@@ -477,11 +547,11 @@ module Aws::AppConfig
477
547
  req.send_request(options)
478
548
  end
479
549
 
480
- # A deployment strategy defines important criteria for rolling out your
481
- # configuration to the designated targets. A deployment strategy
482
- # includes: the overall duration required, a percentage of targets to
483
- # receive the deployment during each interval, an algorithm that defines
484
- # how percentage grows, and bake time.
550
+ # Creates a deployment strategy that defines important criteria for
551
+ # rolling out your configuration to the designated targets. A deployment
552
+ # strategy includes the overall duration required, a percentage of
553
+ # targets to receive the deployment during each interval, an algorithm
554
+ # that defines how percentage grows, and bake time.
485
555
  #
486
556
  # @option params [required, String] :name
487
557
  # A name for the deployment strategy.
@@ -502,8 +572,8 @@ module Aws::AppConfig
502
572
  # each interval.
503
573
  #
504
574
  # @option params [String] :growth_type
505
- # The algorithm used to define how percentage grows over time. AWS
506
- # AppConfig supports the following growth types:
575
+ # The algorithm used to define how percentage grows over time. AppConfig
576
+ # supports the following growth types:
507
577
  #
508
578
  # **Linear**\: For this type, AppConfig processes the deployment by
509
579
  # dividing the total number of targets by the value specified for `Step
@@ -549,6 +619,31 @@ module Aws::AppConfig
549
619
  # * {Types::DeploymentStrategy#final_bake_time_in_minutes #final_bake_time_in_minutes} => Integer
550
620
  # * {Types::DeploymentStrategy#replicate_to #replicate_to} => String
551
621
  #
622
+ #
623
+ # @example Example: To create a deployment strategy
624
+ #
625
+ # # The following create-deployment-strategy example creates a deployment strategy called Example-Deployment that takes 15
626
+ # # minutes and deploys the configuration to 25% of the application at a time. The strategy is also copied to an SSM
627
+ # # Document.
628
+ #
629
+ # resp = client.create_deployment_strategy({
630
+ # deployment_duration_in_minutes: 15,
631
+ # growth_factor: 25,
632
+ # name: "Example-Deployment",
633
+ # replicate_to: "SSM_DOCUMENT",
634
+ # })
635
+ #
636
+ # resp.to_h outputs the following:
637
+ # {
638
+ # deployment_duration_in_minutes: 15,
639
+ # final_bake_time_in_minutes: 0,
640
+ # growth_factor: 25,
641
+ # growth_type: "LINEAR",
642
+ # id: "1225qzk",
643
+ # name: "Example-Deployment",
644
+ # replicate_to: "SSM_DOCUMENT",
645
+ # }
646
+ #
552
647
  # @example Request syntax with placeholder values
553
648
  #
554
649
  # resp = client.create_deployment_strategy({
@@ -584,14 +679,15 @@ module Aws::AppConfig
584
679
  req.send_request(options)
585
680
  end
586
681
 
587
- # For each application, you define one or more environments. An
588
- # environment is a logical deployment group of AppConfig targets, such
589
- # as applications in a `Beta` or `Production` environment. You can also
590
- # define environments for application subcomponents such as the `Web`,
591
- # `Mobile` and `Back-end` components for your application. You can
592
- # configure Amazon CloudWatch alarms for each environment. The system
593
- # monitors alarms during a configuration deployment. If an alarm is
594
- # triggered, the system rolls back the configuration.
682
+ # Creates an environment. For each application, you define one or more
683
+ # environments. An environment is a logical deployment group of
684
+ # AppConfig targets, such as applications in a `Beta` or `Production`
685
+ # environment. You can also define environments for application
686
+ # subcomponents such as the `Web`, `Mobile` and `Back-end` components
687
+ # for your application. You can configure Amazon CloudWatch alarms for
688
+ # each environment. The system monitors alarms during a configuration
689
+ # deployment. If an alarm is triggered, the system rolls back the
690
+ # configuration.
595
691
  #
596
692
  # @option params [required, String] :application_id
597
693
  # The application ID.
@@ -619,6 +715,25 @@ module Aws::AppConfig
619
715
  # * {Types::Environment#state #state} => String
620
716
  # * {Types::Environment#monitors #monitors} => Array&lt;Types::Monitor&gt;
621
717
  #
718
+ #
719
+ # @example Example: To create an environment
720
+ #
721
+ # # The following create-environment example creates an AWS AppConfig environment named Example-Environment using the
722
+ # # application you created using create-application
723
+ #
724
+ # resp = client.create_environment({
725
+ # application_id: "339ohji",
726
+ # name: "Example-Environment",
727
+ # })
728
+ #
729
+ # resp.to_h outputs the following:
730
+ # {
731
+ # application_id: "339ohji",
732
+ # id: "54j1r29",
733
+ # name: "Example-Environment",
734
+ # state: "READY_FOR_DEPLOYMENT",
735
+ # }
736
+ #
622
737
  # @example Request syntax with placeholder values
623
738
  #
624
739
  # resp = client.create_environment({
@@ -627,7 +742,7 @@ module Aws::AppConfig
627
742
  # description: "Description",
628
743
  # monitors: [
629
744
  # {
630
- # alarm_arn: "Arn",
745
+ # alarm_arn: "StringWithLengthBetween1And2048", # required
631
746
  # alarm_role_arn: "RoleArn",
632
747
  # },
633
748
  # ],
@@ -656,7 +771,8 @@ module Aws::AppConfig
656
771
  req.send_request(options)
657
772
  end
658
773
 
659
- # Create a new configuration in the AppConfig configuration store.
774
+ # Creates a new configuration in the AppConfig hosted configuration
775
+ # store.
660
776
  #
661
777
  # @option params [required, String] :application_id
662
778
  # The application ID.
@@ -676,14 +792,14 @@ module Aws::AppConfig
676
792
  #
677
793
  #
678
794
  #
679
- # [1]: https://docs.aws.amazon.com/https:/www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
795
+ # [1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
680
796
  #
681
797
  # @option params [Integer] :latest_version_number
682
798
  # An optional locking token used to prevent race conditions from
683
799
  # overwriting configuration updates when creating a new version. To
684
800
  # ensure your data is not overwritten when creating multiple hosted
685
- # configuration versions in rapid succession, specify the version of the
686
- # latest hosted configuration version.
801
+ # configuration versions in rapid succession, specify the version number
802
+ # of the latest hosted configuration version.
687
803
  #
688
804
  # @return [Types::HostedConfigurationVersion] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
689
805
  #
@@ -694,6 +810,28 @@ module Aws::AppConfig
694
810
  # * {Types::HostedConfigurationVersion#content #content} => String
695
811
  # * {Types::HostedConfigurationVersion#content_type #content_type} => String
696
812
  #
813
+ #
814
+ # @example Example: To create a hosted configuration version
815
+ #
816
+ # # The following create-hosted-configuration-version example creates a new configuration in the AWS AppConfig configuration
817
+ # # store.
818
+ #
819
+ # resp = client.create_hosted_configuration_version({
820
+ # application_id: "339ohji",
821
+ # configuration_profile_id: "ur8hx2f",
822
+ # content: "eyAiTmFtZSI6ICJFeGFtcGxlQXBwbGljYXRpb24iLCAiSWQiOiBFeGFtcGxlSUQsICJSYW5rIjogNyB9",
823
+ # content_type: "text",
824
+ # latest_version_number: 1,
825
+ # })
826
+ #
827
+ # resp.to_h outputs the following:
828
+ # {
829
+ # application_id: "339ohji",
830
+ # configuration_profile_id: "ur8hx2f",
831
+ # content_type: "text",
832
+ # version_number: 1,
833
+ # }
834
+ #
697
835
  # @example Request syntax with placeholder values
698
836
  #
699
837
  # resp = client.create_hosted_configuration_version({
@@ -723,7 +861,7 @@ module Aws::AppConfig
723
861
  req.send_request(options)
724
862
  end
725
863
 
726
- # Delete an application. Deleting an application does not delete a
864
+ # Deletes an application. Deleting an application does not delete a
727
865
  # configuration from a host.
728
866
  #
729
867
  # @option params [required, String] :application_id
@@ -731,6 +869,15 @@ module Aws::AppConfig
731
869
  #
732
870
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
733
871
  #
872
+ #
873
+ # @example Example: To delete an application
874
+ #
875
+ # # The following delete-application example deletes the specified application.
876
+ #
877
+ # resp = client.delete_application({
878
+ # application_id: "339ohji",
879
+ # })
880
+ #
734
881
  # @example Request syntax with placeholder values
735
882
  #
736
883
  # resp = client.delete_application({
@@ -746,7 +893,7 @@ module Aws::AppConfig
746
893
  req.send_request(options)
747
894
  end
748
895
 
749
- # Delete a configuration profile. Deleting a configuration profile does
896
+ # Deletes a configuration profile. Deleting a configuration profile does
750
897
  # not delete a configuration from a host.
751
898
  #
752
899
  # @option params [required, String] :application_id
@@ -758,6 +905,16 @@ module Aws::AppConfig
758
905
  #
759
906
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
760
907
  #
908
+ #
909
+ # @example Example: To delete a configuration profile
910
+ #
911
+ # # The following delete-configuration-profile example deletes the specified configuration profile.
912
+ #
913
+ # resp = client.delete_configuration_profile({
914
+ # application_id: "339ohji",
915
+ # configuration_profile_id: "ur8hx2f",
916
+ # })
917
+ #
761
918
  # @example Request syntax with placeholder values
762
919
  #
763
920
  # resp = client.delete_configuration_profile({
@@ -774,7 +931,7 @@ module Aws::AppConfig
774
931
  req.send_request(options)
775
932
  end
776
933
 
777
- # Delete a deployment strategy. Deleting a deployment strategy does not
934
+ # Deletes a deployment strategy. Deleting a deployment strategy does not
778
935
  # delete a configuration from a host.
779
936
  #
780
937
  # @option params [required, String] :deployment_strategy_id
@@ -782,6 +939,15 @@ module Aws::AppConfig
782
939
  #
783
940
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
784
941
  #
942
+ #
943
+ # @example Example: To delete a deployment strategy
944
+ #
945
+ # # The following delete-deployment-strategy example deletes the specified deployment strategy.
946
+ #
947
+ # resp = client.delete_deployment_strategy({
948
+ # deployment_strategy_id: "1225qzk",
949
+ # })
950
+ #
785
951
  # @example Request syntax with placeholder values
786
952
  #
787
953
  # resp = client.delete_deployment_strategy({
@@ -797,17 +963,28 @@ module Aws::AppConfig
797
963
  req.send_request(options)
798
964
  end
799
965
 
800
- # Delete an environment. Deleting an environment does not delete a
966
+ # Deletes an environment. Deleting an environment does not delete a
801
967
  # configuration from a host.
802
968
  #
803
969
  # @option params [required, String] :application_id
804
- # The application ID that includes the environment you want to delete.
970
+ # The application ID that includes the environment that you want to
971
+ # delete.
805
972
  #
806
973
  # @option params [required, String] :environment_id
807
- # The ID of the environment you want to delete.
974
+ # The ID of the environment that you want to delete.
808
975
  #
809
976
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
810
977
  #
978
+ #
979
+ # @example Example: To delete an environment
980
+ #
981
+ # # The following delete-environment example deletes the specified application environment.
982
+ #
983
+ # resp = client.delete_environment({
984
+ # application_id: "339ohji",
985
+ # environment_id: "54j1r29",
986
+ # })
987
+ #
811
988
  # @example Request syntax with placeholder values
812
989
  #
813
990
  # resp = client.delete_environment({
@@ -824,8 +1001,8 @@ module Aws::AppConfig
824
1001
  req.send_request(options)
825
1002
  end
826
1003
 
827
- # Delete a version of a configuration from the AppConfig configuration
828
- # store.
1004
+ # Deletes a version of a configuration from the AppConfig hosted
1005
+ # configuration store.
829
1006
  #
830
1007
  # @option params [required, String] :application_id
831
1008
  # The application ID.
@@ -838,6 +1015,18 @@ module Aws::AppConfig
838
1015
  #
839
1016
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
840
1017
  #
1018
+ #
1019
+ # @example Example: To delete a hosted configuration version
1020
+ #
1021
+ # # The following delete-hosted-configuration-version example deletes a configuration version hosted in the AWS AppConfig
1022
+ # # configuration store.
1023
+ #
1024
+ # resp = client.delete_hosted_configuration_version({
1025
+ # application_id: "339ohji",
1026
+ # configuration_profile_id: "ur8hx2f",
1027
+ # version_number: 1,
1028
+ # })
1029
+ #
841
1030
  # @example Request syntax with placeholder values
842
1031
  #
843
1032
  # resp = client.delete_hosted_configuration_version({
@@ -855,7 +1044,7 @@ module Aws::AppConfig
855
1044
  req.send_request(options)
856
1045
  end
857
1046
 
858
- # Retrieve information about an application.
1047
+ # Retrieves information about an application.
859
1048
  #
860
1049
  # @option params [required, String] :application_id
861
1050
  # The ID of the application you want to get.
@@ -866,6 +1055,21 @@ module Aws::AppConfig
866
1055
  # * {Types::Application#name #name} => String
867
1056
  # * {Types::Application#description #description} => String
868
1057
  #
1058
+ #
1059
+ # @example Example: To list details of an application
1060
+ #
1061
+ # # The following get-application example lists the details of the specified application.
1062
+ #
1063
+ # resp = client.get_application({
1064
+ # application_id: "339ohji",
1065
+ # })
1066
+ #
1067
+ # resp.to_h outputs the following:
1068
+ # {
1069
+ # id: "339ohji",
1070
+ # name: "example-application",
1071
+ # }
1072
+ #
869
1073
  # @example Request syntax with placeholder values
870
1074
  #
871
1075
  # resp = client.get_application({
@@ -887,11 +1091,11 @@ module Aws::AppConfig
887
1091
  req.send_request(options)
888
1092
  end
889
1093
 
890
- # Receive information about a configuration.
1094
+ # Retrieves information about a configuration.
891
1095
  #
892
- # AWS AppConfig uses the value of the `ClientConfigurationVersion`
893
- # parameter to identify the configuration version on your clients. If
894
- # you don’t send `ClientConfigurationVersion` with each call to
1096
+ # AppConfig uses the value of the `ClientConfigurationVersion` parameter
1097
+ # to identify the configuration version on your clients. If you don’t
1098
+ # send `ClientConfigurationVersion` with each call to
895
1099
  # `GetConfiguration`, your clients receive the current configuration.
896
1100
  # You are charged each time your clients receive a configuration.
897
1101
  #
@@ -914,17 +1118,18 @@ module Aws::AppConfig
914
1118
  # configuration ID.
915
1119
  #
916
1120
  # @option params [required, String] :client_id
917
- # A unique ID to identify the client for the configuration. This ID
918
- # enables AppConfig to deploy the configuration in intervals, as defined
919
- # in the deployment strategy.
1121
+ # The clientId parameter in the following command is a unique,
1122
+ # user-specified ID to identify the client for the configuration. This
1123
+ # ID enables AppConfig to deploy the configuration in intervals, as
1124
+ # defined in the deployment strategy.
920
1125
  #
921
1126
  # @option params [String] :client_configuration_version
922
1127
  # The configuration version returned in the most recent
923
1128
  # `GetConfiguration` response.
924
1129
  #
925
- # AWS AppConfig uses the value of the `ClientConfigurationVersion`
926
- # parameter to identify the configuration version on your clients. If
927
- # you don’t send `ClientConfigurationVersion` with each call to
1130
+ # AppConfig uses the value of the `ClientConfigurationVersion` parameter
1131
+ # to identify the configuration version on your clients. If you don’t
1132
+ # send `ClientConfigurationVersion` with each call to
928
1133
  # `GetConfiguration`, your clients receive the current configuration.
929
1134
  # You are charged each time your clients receive a configuration.
930
1135
  #
@@ -935,11 +1140,11 @@ module Aws::AppConfig
935
1140
  # the `ClientConfigurationVersion` parameter.
936
1141
  #
937
1142
  # For more information about working with configurations, see
938
- # [Retrieving the Configuration][1] in the *AWS AppConfig User Guide*.
1143
+ # [Retrieving the Configuration][1] in the *AppConfig User Guide*.
939
1144
  #
940
1145
  #
941
1146
  #
942
- # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-retrieving-the-configuration.html
1147
+ # [1]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-retrieving-the-configuration.html
943
1148
  #
944
1149
  # @return [Types::Configuration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
945
1150
  #
@@ -947,6 +1152,27 @@ module Aws::AppConfig
947
1152
  # * {Types::Configuration#configuration_version #configuration_version} => String
948
1153
  # * {Types::Configuration#content_type #content_type} => String
949
1154
  #
1155
+ #
1156
+ # @example Example: To retrieve configuration details
1157
+ #
1158
+ # # The following get-configuration example returns the configuration details of the example application. On subsequent
1159
+ # # calls to get-configuration, use the client-configuration-version parameter to only update the configuration of your
1160
+ # # application if the version has changed. Only updating the configuration when the version has changed avoids excess
1161
+ # # charges incurred by calling get-configuration.
1162
+ #
1163
+ # resp = client.get_configuration({
1164
+ # application: "example-application",
1165
+ # client_id: "example-id",
1166
+ # configuration: "Example-Configuration-Profile",
1167
+ # environment: "Example-Environment",
1168
+ # })
1169
+ #
1170
+ # resp.to_h outputs the following:
1171
+ # {
1172
+ # configuration_version: "1",
1173
+ # content_type: "application/octet-stream",
1174
+ # }
1175
+ #
950
1176
  # @example Request syntax with placeholder values
951
1177
  #
952
1178
  # resp = client.get_configuration({
@@ -972,14 +1198,14 @@ module Aws::AppConfig
972
1198
  req.send_request(options)
973
1199
  end
974
1200
 
975
- # Retrieve information about a configuration profile.
1201
+ # Retrieves information about a configuration profile.
976
1202
  #
977
1203
  # @option params [required, String] :application_id
978
1204
  # The ID of the application that includes the configuration profile you
979
1205
  # want to get.
980
1206
  #
981
1207
  # @option params [required, String] :configuration_profile_id
982
- # The ID of the configuration profile you want to get.
1208
+ # The ID of the configuration profile that you want to get.
983
1209
  #
984
1210
  # @return [Types::ConfigurationProfile] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
985
1211
  #
@@ -990,6 +1216,26 @@ module Aws::AppConfig
990
1216
  # * {Types::ConfigurationProfile#location_uri #location_uri} => String
991
1217
  # * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
992
1218
  # * {Types::ConfigurationProfile#validators #validators} => Array&lt;Types::Validator&gt;
1219
+ # * {Types::ConfigurationProfile#type #type} => String
1220
+ #
1221
+ #
1222
+ # @example Example: To retrieve configuration profile details
1223
+ #
1224
+ # # The following get-configuration-profile example returns the details of the specified configuration profile.
1225
+ #
1226
+ # resp = client.get_configuration_profile({
1227
+ # application_id: "339ohji",
1228
+ # configuration_profile_id: "ur8hx2f",
1229
+ # })
1230
+ #
1231
+ # resp.to_h outputs the following:
1232
+ # {
1233
+ # application_id: "339ohji",
1234
+ # id: "ur8hx2f",
1235
+ # location_uri: "ssm-parameter://Example-Parameter",
1236
+ # name: "Example-Configuration-Profile",
1237
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
1238
+ # }
993
1239
  #
994
1240
  # @example Request syntax with placeholder values
995
1241
  #
@@ -1009,6 +1255,7 @@ module Aws::AppConfig
1009
1255
  # resp.validators #=> Array
1010
1256
  # resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
1011
1257
  # resp.validators[0].content #=> String
1258
+ # resp.type #=> String
1012
1259
  #
1013
1260
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetConfigurationProfile AWS API Documentation
1014
1261
  #
@@ -1019,7 +1266,7 @@ module Aws::AppConfig
1019
1266
  req.send_request(options)
1020
1267
  end
1021
1268
 
1022
- # Retrieve information about a configuration deployment.
1269
+ # Retrieves information about a configuration deployment.
1023
1270
  #
1024
1271
  # @option params [required, String] :application_id
1025
1272
  # The ID of the application that includes the deployment you want to
@@ -1053,6 +1300,82 @@ module Aws::AppConfig
1053
1300
  # * {Types::Deployment#started_at #started_at} => Time
1054
1301
  # * {Types::Deployment#completed_at #completed_at} => Time
1055
1302
  #
1303
+ #
1304
+ # @example Example: To retrieve deployment details
1305
+ #
1306
+ # # The following get-deployment example lists details of the deployment to the application in the specified environment and
1307
+ # # deployment.
1308
+ #
1309
+ # resp = client.get_deployment({
1310
+ # application_id: "339ohji",
1311
+ # deployment_number: 1,
1312
+ # environment_id: "54j1r29",
1313
+ # })
1314
+ #
1315
+ # resp.to_h outputs the following:
1316
+ # {
1317
+ # application_id: "339ohji",
1318
+ # completed_at: Time.parse("2021-09-17T21:59:03.888000+00:00"),
1319
+ # configuration_location_uri: "ssm-parameter://Example-Parameter",
1320
+ # configuration_name: "Example-Configuration-Profile",
1321
+ # configuration_profile_id: "ur8hx2f",
1322
+ # configuration_version: "1",
1323
+ # deployment_duration_in_minutes: 15,
1324
+ # deployment_number: 1,
1325
+ # deployment_strategy_id: "1225qzk",
1326
+ # environment_id: "54j1r29",
1327
+ # event_log: [
1328
+ # {
1329
+ # description: "Deployment completed",
1330
+ # event_type: "DEPLOYMENT_COMPLETED",
1331
+ # occurred_at: Time.parse("2021-09-17T21:59:03.888000+00:00"),
1332
+ # triggered_by: "APPCONFIG",
1333
+ # },
1334
+ # {
1335
+ # description: "Deployment bake time started",
1336
+ # event_type: "BAKE_TIME_STARTED",
1337
+ # occurred_at: Time.parse("2021-09-17T21:58:57.722000+00:00"),
1338
+ # triggered_by: "APPCONFIG",
1339
+ # },
1340
+ # {
1341
+ # description: "Configuration available to 100.00% of clients",
1342
+ # event_type: "PERCENTAGE_UPDATED",
1343
+ # occurred_at: Time.parse("2021-09-17T21:55:56.816000+00:00"),
1344
+ # triggered_by: "APPCONFIG",
1345
+ # },
1346
+ # {
1347
+ # description: "Configuration available to 75.00% of clients",
1348
+ # event_type: "PERCENTAGE_UPDATED",
1349
+ # occurred_at: Time.parse("2021-09-17T21:52:56.567000+00:00"),
1350
+ # triggered_by: "APPCONFIG",
1351
+ # },
1352
+ # {
1353
+ # description: "Configuration available to 50.00% of clients",
1354
+ # event_type: "PERCENTAGE_UPDATED",
1355
+ # occurred_at: Time.parse("2021-09-17T21:49:55.737000+00:00"),
1356
+ # triggered_by: "APPCONFIG",
1357
+ # },
1358
+ # {
1359
+ # description: "Configuration available to 25.00% of clients",
1360
+ # event_type: "PERCENTAGE_UPDATED",
1361
+ # occurred_at: Time.parse("2021-09-17T21:46:55.187000+00:00"),
1362
+ # triggered_by: "APPCONFIG",
1363
+ # },
1364
+ # {
1365
+ # description: "Deployment started",
1366
+ # event_type: "DEPLOYMENT_STARTED",
1367
+ # occurred_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
1368
+ # triggered_by: "USER",
1369
+ # },
1370
+ # ],
1371
+ # final_bake_time_in_minutes: 0,
1372
+ # growth_factor: 25,
1373
+ # growth_type: "LINEAR",
1374
+ # percentage_complete: 100,
1375
+ # started_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
1376
+ # state: "COMPLETE",
1377
+ # }
1378
+ #
1056
1379
  # @example Request syntax with placeholder values
1057
1380
  #
1058
1381
  # resp = client.get_deployment({
@@ -1095,9 +1418,9 @@ module Aws::AppConfig
1095
1418
  req.send_request(options)
1096
1419
  end
1097
1420
 
1098
- # Retrieve information about a deployment strategy. A deployment
1421
+ # Retrieves information about a deployment strategy. A deployment
1099
1422
  # strategy defines important criteria for rolling out your configuration
1100
- # to the designated targets. A deployment strategy includes: the overall
1423
+ # to the designated targets. A deployment strategy includes the overall
1101
1424
  # duration required, a percentage of targets to receive the deployment
1102
1425
  # during each interval, an algorithm that defines how percentage grows,
1103
1426
  # and bake time.
@@ -1116,6 +1439,26 @@ module Aws::AppConfig
1116
1439
  # * {Types::DeploymentStrategy#final_bake_time_in_minutes #final_bake_time_in_minutes} => Integer
1117
1440
  # * {Types::DeploymentStrategy#replicate_to #replicate_to} => String
1118
1441
  #
1442
+ #
1443
+ # @example Example: To retrieve details of a deployment strategy
1444
+ #
1445
+ # # The following get-deployment-strategy example lists the details of the specified deployment strategy.
1446
+ #
1447
+ # resp = client.get_deployment_strategy({
1448
+ # deployment_strategy_id: "1225qzk",
1449
+ # })
1450
+ #
1451
+ # resp.to_h outputs the following:
1452
+ # {
1453
+ # deployment_duration_in_minutes: 15,
1454
+ # final_bake_time_in_minutes: 0,
1455
+ # growth_factor: 25,
1456
+ # growth_type: "LINEAR",
1457
+ # id: "1225qzk",
1458
+ # name: "Example-Deployment",
1459
+ # replicate_to: "SSM_DOCUMENT",
1460
+ # }
1461
+ #
1119
1462
  # @example Request syntax with placeholder values
1120
1463
  #
1121
1464
  # resp = client.get_deployment_strategy({
@@ -1142,19 +1485,20 @@ module Aws::AppConfig
1142
1485
  req.send_request(options)
1143
1486
  end
1144
1487
 
1145
- # Retrieve information about an environment. An environment is a logical
1146
- # deployment group of AppConfig applications, such as applications in a
1147
- # `Production` environment or in an `EU_Region` environment. Each
1148
- # configuration deployment targets an environment. You can enable one or
1149
- # more Amazon CloudWatch alarms for an environment. If an alarm is
1150
- # triggered during a deployment, AppConfig roles back the configuration.
1488
+ # Retrieves information about an environment. An environment is a
1489
+ # logical deployment group of AppConfig applications, such as
1490
+ # applications in a `Production` environment or in an `EU_Region`
1491
+ # environment. Each configuration deployment targets an environment. You
1492
+ # can enable one or more Amazon CloudWatch alarms for an environment. If
1493
+ # an alarm is triggered during a deployment, AppConfig roles back the
1494
+ # configuration.
1151
1495
  #
1152
1496
  # @option params [required, String] :application_id
1153
1497
  # The ID of the application that includes the environment you want to
1154
1498
  # get.
1155
1499
  #
1156
1500
  # @option params [required, String] :environment_id
1157
- # The ID of the environment you wnat to get.
1501
+ # The ID of the environment that you want to get.
1158
1502
  #
1159
1503
  # @return [Types::Environment] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1160
1504
  #
@@ -1165,6 +1509,24 @@ module Aws::AppConfig
1165
1509
  # * {Types::Environment#state #state} => String
1166
1510
  # * {Types::Environment#monitors #monitors} => Array&lt;Types::Monitor&gt;
1167
1511
  #
1512
+ #
1513
+ # @example Example: To retrieve environment details
1514
+ #
1515
+ # # The following get-environment example returns the details and state of the specified environment.
1516
+ #
1517
+ # resp = client.get_environment({
1518
+ # application_id: "339ohji",
1519
+ # environment_id: "54j1r29",
1520
+ # })
1521
+ #
1522
+ # resp.to_h outputs the following:
1523
+ # {
1524
+ # application_id: "339ohji",
1525
+ # id: "54j1r29",
1526
+ # name: "Example-Environment",
1527
+ # state: "READY_FOR_DEPLOYMENT",
1528
+ # }
1529
+ #
1168
1530
  # @example Request syntax with placeholder values
1169
1531
  #
1170
1532
  # resp = client.get_environment({
@@ -1192,7 +1554,7 @@ module Aws::AppConfig
1192
1554
  req.send_request(options)
1193
1555
  end
1194
1556
 
1195
- # Get information about a specific configuration version.
1557
+ # Retrieves information about a specific configuration version.
1196
1558
  #
1197
1559
  # @option params [required, String] :application_id
1198
1560
  # The application ID.
@@ -1212,6 +1574,26 @@ module Aws::AppConfig
1212
1574
  # * {Types::HostedConfigurationVersion#content #content} => String
1213
1575
  # * {Types::HostedConfigurationVersion#content_type #content_type} => String
1214
1576
  #
1577
+ #
1578
+ # @example Example: To retrieve hosted configuration details
1579
+ #
1580
+ # # The following get-hosted-configuration-version example retrieves the configuration details of the AWS AppConfig hosted
1581
+ # # configuration.
1582
+ #
1583
+ # resp = client.get_hosted_configuration_version({
1584
+ # application_id: "339ohji",
1585
+ # configuration_profile_id: "ur8hx2f",
1586
+ # version_number: 1,
1587
+ # })
1588
+ #
1589
+ # resp.to_h outputs the following:
1590
+ # {
1591
+ # application_id: "339ohji",
1592
+ # configuration_profile_id: "ur8hx2f",
1593
+ # content_type: "application/json",
1594
+ # version_number: 1,
1595
+ # }
1596
+ #
1215
1597
  # @example Request syntax with placeholder values
1216
1598
  #
1217
1599
  # resp = client.get_hosted_configuration_version({
@@ -1238,7 +1620,7 @@ module Aws::AppConfig
1238
1620
  req.send_request(options)
1239
1621
  end
1240
1622
 
1241
- # List all applications in your AWS account.
1623
+ # Lists all applications in your Amazon Web Services account.
1242
1624
  #
1243
1625
  # @option params [Integer] :max_results
1244
1626
  # The maximum number of items to return for this call. The call also
@@ -1246,8 +1628,12 @@ module Aws::AppConfig
1246
1628
  # next set of results.
1247
1629
  #
1248
1630
  # @option params [String] :next_token
1249
- # A token to start the list. Use this token to get the next set of
1250
- # results.
1631
+ # A token to start the list. Next token is a pagination token generated
1632
+ # by AppConfig to describe what page the previous List call ended on.
1633
+ # For the first List request, the nextToken should not be set. On
1634
+ # subsequent calls, the nextToken parameter should be set to the
1635
+ # previous responses nextToken value. Use this token to get the next set
1636
+ # of results.
1251
1637
  #
1252
1638
  # @return [Types::Applications] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1253
1639
  #
@@ -1256,6 +1642,29 @@ module Aws::AppConfig
1256
1642
  #
1257
1643
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1258
1644
  #
1645
+ #
1646
+ # @example Example: To list the available applications
1647
+ #
1648
+ # # The following list-applications example lists the available applications in your AWS account.
1649
+ #
1650
+ # resp = client.list_applications({
1651
+ # })
1652
+ #
1653
+ # resp.to_h outputs the following:
1654
+ # {
1655
+ # items: [
1656
+ # {
1657
+ # description: "An application used for creating an example.",
1658
+ # id: "339ohji",
1659
+ # name: "test-application",
1660
+ # },
1661
+ # {
1662
+ # id: "rwalwu7",
1663
+ # name: "Test-Application",
1664
+ # },
1665
+ # ],
1666
+ # }
1667
+ #
1259
1668
  # @example Request syntax with placeholder values
1260
1669
  #
1261
1670
  # resp = client.list_applications({
@@ -1294,6 +1703,11 @@ module Aws::AppConfig
1294
1703
  # A token to start the list. Use this token to get the next set of
1295
1704
  # results.
1296
1705
  #
1706
+ # @option params [String] :type
1707
+ # A filter based on the type of configurations that the configuration
1708
+ # profile contains. A configuration can be a feature flag or a free-form
1709
+ # configuration.
1710
+ #
1297
1711
  # @return [Types::ConfigurationProfiles] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1298
1712
  #
1299
1713
  # * {Types::ConfigurationProfiles#items #items} => Array&lt;Types::ConfigurationProfileSummary&gt;
@@ -1301,12 +1715,35 @@ module Aws::AppConfig
1301
1715
  #
1302
1716
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1303
1717
  #
1718
+ #
1719
+ # @example Example: To list the available configuration profiles
1720
+ #
1721
+ # # The following list-configuration-profiles example lists the available configuration profiles for the specified
1722
+ # # application.
1723
+ #
1724
+ # resp = client.list_configuration_profiles({
1725
+ # application_id: "339ohji",
1726
+ # })
1727
+ #
1728
+ # resp.to_h outputs the following:
1729
+ # {
1730
+ # items: [
1731
+ # {
1732
+ # application_id: "339ohji",
1733
+ # id: "ur8hx2f",
1734
+ # location_uri: "ssm-parameter://Example-Parameter",
1735
+ # name: "Example-Configuration-Profile",
1736
+ # },
1737
+ # ],
1738
+ # }
1739
+ #
1304
1740
  # @example Request syntax with placeholder values
1305
1741
  #
1306
1742
  # resp = client.list_configuration_profiles({
1307
1743
  # application_id: "Id", # required
1308
1744
  # max_results: 1,
1309
1745
  # next_token: "NextToken",
1746
+ # type: "ConfigurationProfileType",
1310
1747
  # })
1311
1748
  #
1312
1749
  # @example Response structure
@@ -1318,6 +1755,7 @@ module Aws::AppConfig
1318
1755
  # resp.items[0].location_uri #=> String
1319
1756
  # resp.items[0].validator_types #=> Array
1320
1757
  # resp.items[0].validator_types[0] #=> String, one of "JSON_SCHEMA", "LAMBDA"
1758
+ # resp.items[0].type #=> String
1321
1759
  # resp.next_token #=> String
1322
1760
  #
1323
1761
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListConfigurationProfiles AWS API Documentation
@@ -1329,7 +1767,7 @@ module Aws::AppConfig
1329
1767
  req.send_request(options)
1330
1768
  end
1331
1769
 
1332
- # List deployment strategies.
1770
+ # Lists deployment strategies.
1333
1771
  #
1334
1772
  # @option params [Integer] :max_results
1335
1773
  # The maximum number of items to return for this call. The call also
@@ -1347,6 +1785,29 @@ module Aws::AppConfig
1347
1785
  #
1348
1786
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1349
1787
  #
1788
+ #
1789
+ # @example Example: To list the available deployment strategies
1790
+ #
1791
+ # # The following list-deployment-strategies example lists the available deployment strategies in your AWS account.
1792
+ #
1793
+ # resp = client.list_deployment_strategies({
1794
+ # })
1795
+ #
1796
+ # resp.to_h outputs the following:
1797
+ # {
1798
+ # items: [
1799
+ # {
1800
+ # deployment_duration_in_minutes: 15,
1801
+ # final_bake_time_in_minutes: 0,
1802
+ # growth_factor: 25,
1803
+ # growth_type: "LINEAR",
1804
+ # id: "1225qzk",
1805
+ # name: "Example-Deployment",
1806
+ # replicate_to: "SSM_DOCUMENT",
1807
+ # },
1808
+ # ],
1809
+ # }
1810
+ #
1350
1811
  # @example Request syntax with placeholder values
1351
1812
  #
1352
1813
  # resp = client.list_deployment_strategies({
@@ -1400,6 +1861,36 @@ module Aws::AppConfig
1400
1861
  #
1401
1862
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1402
1863
  #
1864
+ #
1865
+ # @example Example: To list the available deployments
1866
+ #
1867
+ # # The following list-deployments example lists the available deployments in your AWS account for the specified application
1868
+ # # and environment.
1869
+ #
1870
+ # resp = client.list_deployments({
1871
+ # application_id: "339ohji",
1872
+ # environment_id: "54j1r29",
1873
+ # })
1874
+ #
1875
+ # resp.to_h outputs the following:
1876
+ # {
1877
+ # items: [
1878
+ # {
1879
+ # completed_at: Time.parse("2021-09-17T21:59:03.888000+00:00"),
1880
+ # configuration_name: "Example-Configuration-Profile",
1881
+ # configuration_version: "1",
1882
+ # deployment_duration_in_minutes: 15,
1883
+ # deployment_number: 1,
1884
+ # final_bake_time_in_minutes: 0,
1885
+ # growth_factor: 25,
1886
+ # growth_type: "LINEAR",
1887
+ # percentage_complete: 100,
1888
+ # started_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
1889
+ # state: "COMPLETE",
1890
+ # },
1891
+ # ],
1892
+ # }
1893
+ #
1403
1894
  # @example Request syntax with placeholder values
1404
1895
  #
1405
1896
  # resp = client.list_deployments({
@@ -1434,7 +1925,7 @@ module Aws::AppConfig
1434
1925
  req.send_request(options)
1435
1926
  end
1436
1927
 
1437
- # List the environments for an application.
1928
+ # Lists the environments for an application.
1438
1929
  #
1439
1930
  # @option params [required, String] :application_id
1440
1931
  # The application ID.
@@ -1455,6 +1946,28 @@ module Aws::AppConfig
1455
1946
  #
1456
1947
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1457
1948
  #
1949
+ #
1950
+ # @example Example: To list the available environments
1951
+ #
1952
+ # # The following list-environments example lists the available environments in your AWS account for the specified
1953
+ # # application.
1954
+ #
1955
+ # resp = client.list_environments({
1956
+ # application_id: "339ohji",
1957
+ # })
1958
+ #
1959
+ # resp.to_h outputs the following:
1960
+ # {
1961
+ # items: [
1962
+ # {
1963
+ # application_id: "339ohji",
1964
+ # id: "54j1r29",
1965
+ # name: "Example-Environment",
1966
+ # state: "READY_FOR_DEPLOYMENT",
1967
+ # },
1968
+ # ],
1969
+ # }
1970
+ #
1458
1971
  # @example Request syntax with placeholder values
1459
1972
  #
1460
1973
  # resp = client.list_environments({
@@ -1485,7 +1998,7 @@ module Aws::AppConfig
1485
1998
  req.send_request(options)
1486
1999
  end
1487
2000
 
1488
- # View a list of configurations stored in the AppConfig configuration
2001
+ # Lists configurations stored in the AppConfig hosted configuration
1489
2002
  # store by version.
1490
2003
  #
1491
2004
  # @option params [required, String] :application_id
@@ -1510,6 +2023,29 @@ module Aws::AppConfig
1510
2023
  #
1511
2024
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1512
2025
  #
2026
+ #
2027
+ # @example Example: To list the available hosted configuration versions
2028
+ #
2029
+ # # The following list-hosted-configuration-versions example lists the configurations versions hosted in the AWS AppConfig
2030
+ # # hosted configuration store for the specified application and configuration profile.
2031
+ #
2032
+ # resp = client.list_hosted_configuration_versions({
2033
+ # application_id: "339ohji",
2034
+ # configuration_profile_id: "ur8hx2f",
2035
+ # })
2036
+ #
2037
+ # resp.to_h outputs the following:
2038
+ # {
2039
+ # items: [
2040
+ # {
2041
+ # application_id: "339ohji",
2042
+ # configuration_profile_id: "ur8hx2f",
2043
+ # content_type: "application/json",
2044
+ # version_number: 1,
2045
+ # },
2046
+ # ],
2047
+ # }
2048
+ #
1513
2049
  # @example Request syntax with placeholder values
1514
2050
  #
1515
2051
  # resp = client.list_hosted_configuration_versions({
@@ -1547,6 +2083,22 @@ module Aws::AppConfig
1547
2083
  #
1548
2084
  # * {Types::ResourceTags#tags #tags} => Hash&lt;String,String&gt;
1549
2085
  #
2086
+ #
2087
+ # @example Example: To list the tags of an application
2088
+ #
2089
+ # # The following list-tags-for-resource example lists the tags of a specified application.
2090
+ #
2091
+ # resp = client.list_tags_for_resource({
2092
+ # resource_arn: "arn:aws:appconfig:us-east-1:111122223333:application/339ohji",
2093
+ # })
2094
+ #
2095
+ # resp.to_h outputs the following:
2096
+ # {
2097
+ # tags: {
2098
+ # "group1" => "1",
2099
+ # },
2100
+ # }
2101
+ #
1550
2102
  # @example Request syntax with placeholder values
1551
2103
  #
1552
2104
  # resp = client.list_tags_for_resource({
@@ -1613,6 +2165,50 @@ module Aws::AppConfig
1613
2165
  # * {Types::Deployment#started_at #started_at} => Time
1614
2166
  # * {Types::Deployment#completed_at #completed_at} => Time
1615
2167
  #
2168
+ #
2169
+ # @example Example: To start a configuration deployment
2170
+ #
2171
+ # # The following start-deployment example starts a deployment to the application using the specified environment,
2172
+ # # deployment strategy, and configuration profile.
2173
+ #
2174
+ # resp = client.start_deployment({
2175
+ # application_id: "339ohji",
2176
+ # configuration_profile_id: "ur8hx2f",
2177
+ # configuration_version: "1",
2178
+ # deployment_strategy_id: "1225qzk",
2179
+ # description: "",
2180
+ # environment_id: "54j1r29",
2181
+ # tags: {
2182
+ # },
2183
+ # })
2184
+ #
2185
+ # resp.to_h outputs the following:
2186
+ # {
2187
+ # application_id: "339ohji",
2188
+ # configuration_location_uri: "ssm-parameter://Example-Parameter",
2189
+ # configuration_name: "Example-Configuration-Profile",
2190
+ # configuration_profile_id: "ur8hx2f",
2191
+ # configuration_version: "1",
2192
+ # deployment_duration_in_minutes: 15,
2193
+ # deployment_number: 1,
2194
+ # deployment_strategy_id: "1225qzk",
2195
+ # environment_id: "54j1r29",
2196
+ # event_log: [
2197
+ # {
2198
+ # description: "Deployment started",
2199
+ # event_type: "DEPLOYMENT_STARTED",
2200
+ # occurred_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
2201
+ # triggered_by: "USER",
2202
+ # },
2203
+ # ],
2204
+ # final_bake_time_in_minutes: 0,
2205
+ # growth_factor: 25,
2206
+ # growth_type: "LINEAR",
2207
+ # percentage_complete: 1.0,
2208
+ # started_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
2209
+ # state: "DEPLOYING",
2210
+ # }
2211
+ #
1616
2212
  # @example Request syntax with placeholder values
1617
2213
  #
1618
2214
  # resp = client.start_deployment({
@@ -1695,6 +2291,26 @@ module Aws::AppConfig
1695
2291
  # * {Types::Deployment#started_at #started_at} => Time
1696
2292
  # * {Types::Deployment#completed_at #completed_at} => Time
1697
2293
  #
2294
+ #
2295
+ # @example Example: To stop configuration deployment
2296
+ #
2297
+ # # The following stop-deployment example stops the deployment of an application configuration to the specified environment.
2298
+ #
2299
+ # resp = client.stop_deployment({
2300
+ # application_id: "339ohji",
2301
+ # deployment_number: 2,
2302
+ # environment_id: "54j1r29",
2303
+ # })
2304
+ #
2305
+ # resp.to_h outputs the following:
2306
+ # {
2307
+ # deployment_duration_in_minutes: 15,
2308
+ # deployment_number: 2,
2309
+ # final_bake_time_in_minutes: 0,
2310
+ # growth_factor: 25.0,
2311
+ # percentage_complete: 1.0,
2312
+ # }
2313
+ #
1698
2314
  # @example Request syntax with placeholder values
1699
2315
  #
1700
2316
  # resp = client.stop_deployment({
@@ -1737,7 +2353,7 @@ module Aws::AppConfig
1737
2353
  req.send_request(options)
1738
2354
  end
1739
2355
 
1740
- # Metadata to assign to an AppConfig resource. Tags help organize and
2356
+ # Assigns metadata to an AppConfig resource. Tags help organize and
1741
2357
  # categorize your AppConfig resources. Each tag consists of a key and an
1742
2358
  # optional value, both of which you define. You can specify a maximum of
1743
2359
  # 50 tags for a resource.
@@ -1752,6 +2368,18 @@ module Aws::AppConfig
1752
2368
  #
1753
2369
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1754
2370
  #
2371
+ #
2372
+ # @example Example: To tag an application
2373
+ #
2374
+ # # The following tag-resource example tags an application resource.
2375
+ #
2376
+ # resp = client.tag_resource({
2377
+ # resource_arn: "arn:aws:appconfig:us-east-1:111122223333:application/339ohji",
2378
+ # tags: {
2379
+ # "group1" => "1",
2380
+ # },
2381
+ # })
2382
+ #
1755
2383
  # @example Request syntax with placeholder values
1756
2384
  #
1757
2385
  # resp = client.tag_resource({
@@ -1780,6 +2408,18 @@ module Aws::AppConfig
1780
2408
  #
1781
2409
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1782
2410
  #
2411
+ #
2412
+ # @example Example: To remove a tag from an application
2413
+ #
2414
+ # # The following untag-resource example removes the group1 tag from the specified application.
2415
+ #
2416
+ # resp = client.untag_resource({
2417
+ # resource_arn: "arn:aws:appconfig:us-east-1:111122223333:application/339ohji",
2418
+ # tag_keys: [
2419
+ # "group1",
2420
+ # ],
2421
+ # })
2422
+ #
1783
2423
  # @example Request syntax with placeholder values
1784
2424
  #
1785
2425
  # resp = client.untag_resource({
@@ -1813,6 +2453,24 @@ module Aws::AppConfig
1813
2453
  # * {Types::Application#name #name} => String
1814
2454
  # * {Types::Application#description #description} => String
1815
2455
  #
2456
+ #
2457
+ # @example Example: To update an application
2458
+ #
2459
+ # # The following update-application example updates the name of the specified application.
2460
+ #
2461
+ # resp = client.update_application({
2462
+ # application_id: "339ohji",
2463
+ # description: "",
2464
+ # name: "Example-Application",
2465
+ # })
2466
+ #
2467
+ # resp.to_h outputs the following:
2468
+ # {
2469
+ # description: "An application used for creating an example.",
2470
+ # id: "339ohji",
2471
+ # name: "Example-Application",
2472
+ # }
2473
+ #
1816
2474
  # @example Request syntax with placeholder values
1817
2475
  #
1818
2476
  # resp = client.update_application({
@@ -1852,7 +2510,7 @@ module Aws::AppConfig
1852
2510
  #
1853
2511
  # @option params [String] :retrieval_role_arn
1854
2512
  # The ARN of an IAM role with permission to access the configuration at
1855
- # the specified LocationUri.
2513
+ # the specified `LocationUri`.
1856
2514
  #
1857
2515
  # @option params [Array<Types::Validator>] :validators
1858
2516
  # A list of methods for validating the configuration.
@@ -1866,6 +2524,28 @@ module Aws::AppConfig
1866
2524
  # * {Types::ConfigurationProfile#location_uri #location_uri} => String
1867
2525
  # * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
1868
2526
  # * {Types::ConfigurationProfile#validators #validators} => Array&lt;Types::Validator&gt;
2527
+ # * {Types::ConfigurationProfile#type #type} => String
2528
+ #
2529
+ #
2530
+ # @example Example: To update a configuration profile
2531
+ #
2532
+ # # The following update-configuration-profile example updates the description of the specified configuration profile.
2533
+ #
2534
+ # resp = client.update_configuration_profile({
2535
+ # application_id: "339ohji",
2536
+ # configuration_profile_id: "ur8hx2f",
2537
+ # description: "Configuration profile used for examples.",
2538
+ # })
2539
+ #
2540
+ # resp.to_h outputs the following:
2541
+ # {
2542
+ # application_id: "339ohji",
2543
+ # description: "Configuration profile used for examples.",
2544
+ # id: "ur8hx2f",
2545
+ # location_uri: "ssm-parameter://Example-Parameter",
2546
+ # name: "Example-Configuration-Profile",
2547
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
2548
+ # }
1869
2549
  #
1870
2550
  # @example Request syntax with placeholder values
1871
2551
  #
@@ -1894,6 +2574,7 @@ module Aws::AppConfig
1894
2574
  # resp.validators #=> Array
1895
2575
  # resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
1896
2576
  # resp.validators[0].content #=> String
2577
+ # resp.type #=> String
1897
2578
  #
1898
2579
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateConfigurationProfile AWS API Documentation
1899
2580
  #
@@ -1916,17 +2597,17 @@ module Aws::AppConfig
1916
2597
  # Total amount of time for a deployment to last.
1917
2598
  #
1918
2599
  # @option params [Integer] :final_bake_time_in_minutes
1919
- # The amount of time AppConfig monitors for alarms before considering
1920
- # the deployment to be complete and no longer eligible for automatic
1921
- # roll back.
2600
+ # The amount of time that AppConfig monitors for alarms before
2601
+ # considering the deployment to be complete and no longer eligible for
2602
+ # automatic rollback.
1922
2603
  #
1923
2604
  # @option params [Float] :growth_factor
1924
2605
  # The percentage of targets to receive a deployed configuration during
1925
2606
  # each interval.
1926
2607
  #
1927
2608
  # @option params [String] :growth_type
1928
- # The algorithm used to define how percentage grows over time. AWS
1929
- # AppConfig supports the following growth types:
2609
+ # The algorithm used to define how percentage grows over time. AppConfig
2610
+ # supports the following growth types:
1930
2611
  #
1931
2612
  # **Linear**\: For this type, AppConfig processes the deployment by
1932
2613
  # increments of the growth factor evenly distributed over the deployment
@@ -1964,6 +2645,28 @@ module Aws::AppConfig
1964
2645
  # * {Types::DeploymentStrategy#final_bake_time_in_minutes #final_bake_time_in_minutes} => Integer
1965
2646
  # * {Types::DeploymentStrategy#replicate_to #replicate_to} => String
1966
2647
  #
2648
+ #
2649
+ # @example Example: To update a deployment strategy
2650
+ #
2651
+ # # The following update-deployment-strategy example updates final bake time to 20 minutes in the specified deployment
2652
+ # # strategy. ::
2653
+ #
2654
+ # resp = client.update_deployment_strategy({
2655
+ # deployment_strategy_id: "1225qzk",
2656
+ # final_bake_time_in_minutes: 20,
2657
+ # })
2658
+ #
2659
+ # resp.to_h outputs the following:
2660
+ # {
2661
+ # deployment_duration_in_minutes: 15,
2662
+ # final_bake_time_in_minutes: 20,
2663
+ # growth_factor: 25,
2664
+ # growth_type: "LINEAR",
2665
+ # id: "1225qzk",
2666
+ # name: "Example-Deployment",
2667
+ # replicate_to: "SSM_DOCUMENT",
2668
+ # }
2669
+ #
1967
2670
  # @example Request syntax with placeholder values
1968
2671
  #
1969
2672
  # resp = client.update_deployment_strategy({
@@ -2021,6 +2724,26 @@ module Aws::AppConfig
2021
2724
  # * {Types::Environment#state #state} => String
2022
2725
  # * {Types::Environment#monitors #monitors} => Array&lt;Types::Monitor&gt;
2023
2726
  #
2727
+ #
2728
+ # @example Example: To update an environment
2729
+ #
2730
+ # # The following update-environment example updates an environment's description.
2731
+ #
2732
+ # resp = client.update_environment({
2733
+ # application_id: "339ohji",
2734
+ # description: "An environment for examples.",
2735
+ # environment_id: "54j1r29",
2736
+ # })
2737
+ #
2738
+ # resp.to_h outputs the following:
2739
+ # {
2740
+ # application_id: "339ohji",
2741
+ # description: "An environment for examples.",
2742
+ # id: "54j1r29",
2743
+ # name: "Example-Environment",
2744
+ # state: "ROLLED_BACK",
2745
+ # }
2746
+ #
2024
2747
  # @example Request syntax with placeholder values
2025
2748
  #
2026
2749
  # resp = client.update_environment({
@@ -2030,7 +2753,7 @@ module Aws::AppConfig
2030
2753
  # description: "Description",
2031
2754
  # monitors: [
2032
2755
  # {
2033
- # alarm_arn: "Arn",
2756
+ # alarm_arn: "StringWithLengthBetween1And2048", # required
2034
2757
  # alarm_role_arn: "RoleArn",
2035
2758
  # },
2036
2759
  # ],
@@ -2070,6 +2793,17 @@ module Aws::AppConfig
2070
2793
  #
2071
2794
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2072
2795
  #
2796
+ #
2797
+ # @example Example: To validate a configuration
2798
+ #
2799
+ # # The following validate-configuration example uses the validators in a configuration profile to validate a configuration.
2800
+ #
2801
+ # resp = client.validate_configuration({
2802
+ # application_id: "abc1234",
2803
+ # configuration_profile_id: "ur8hx2f",
2804
+ # configuration_version: "1",
2805
+ # })
2806
+ #
2073
2807
  # @example Request syntax with placeholder values
2074
2808
  #
2075
2809
  # resp = client.validate_configuration({
@@ -2100,7 +2834,7 @@ module Aws::AppConfig
2100
2834
  params: params,
2101
2835
  config: config)
2102
2836
  context[:gem_name] = 'aws-sdk-appconfig'
2103
- context[:gem_version] = '1.17.0'
2837
+ context[:gem_version] = '1.21.0'
2104
2838
  Seahorse::Client::Request.new(handlers, context)
2105
2839
  end
2106
2840