aws-sdk-appconfig 1.16.0 → 1.20.0

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