aws-sdk-appconfig 1.18.0 → 1.22.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
30
31
  require 'aws-sdk-core/plugins/signature_v4.rb'
31
32
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
33
 
@@ -73,6 +74,7 @@ module Aws::AppConfig
73
74
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
75
  add_plugin(Aws::Plugins::TransferEncoding)
75
76
  add_plugin(Aws::Plugins::HttpChecksum)
77
+ add_plugin(Aws::Plugins::DefaultsMode)
76
78
  add_plugin(Aws::Plugins::SignatureV4)
77
79
  add_plugin(Aws::Plugins::Protocols::RestJson)
78
80
 
@@ -119,7 +121,9 @@ module Aws::AppConfig
119
121
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
122
  # are very aggressive. Construct and pass an instance of
121
123
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
124
+ # enable retries and extended timeouts. Instance profile credential
125
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
126
+ # to true.
123
127
  #
124
128
  # @option options [required, String] :region
125
129
  # The AWS region to connect to. The configured `:region` is
@@ -173,6 +177,10 @@ module Aws::AppConfig
173
177
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
178
  # a clock skew correction and retry requests with skewed client clocks.
175
179
  #
180
+ # @option options [String] :defaults_mode ("legacy")
181
+ # See {Aws::DefaultsModeConfiguration} for a list of the
182
+ # accepted modes and the configuration defaults that are included.
183
+ #
176
184
  # @option options [Boolean] :disable_host_prefix_injection (false)
177
185
  # Set to true to disable SDK automatically adding host prefix
178
186
  # to default service endpoint when available.
@@ -275,6 +283,15 @@ module Aws::AppConfig
275
283
  # ** Please note ** When response stubbing is enabled, no HTTP
276
284
  # requests are made, and retries are disabled.
277
285
  #
286
+ # @option options [Boolean] :use_dualstack_endpoint
287
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
288
+ # will be used if available.
289
+ #
290
+ # @option options [Boolean] :use_fips_endpoint
291
+ # When set to `true`, fips compatible endpoints will be used if available.
292
+ # When a `fips` region is used, the region is normalized and this config
293
+ # is set to `true`.
294
+ #
278
295
  # @option options [Boolean] :validate_params (true)
279
296
  # When `true`, request parameters are validated before
280
297
  # sending the request.
@@ -286,7 +303,7 @@ module Aws::AppConfig
286
303
  # seconds to wait when opening a HTTP session before raising a
287
304
  # `Timeout::Error`.
288
305
  #
289
- # @option options [Integer] :http_read_timeout (60) The default
306
+ # @option options [Float] :http_read_timeout (60) The default
290
307
  # number of seconds to wait for response data. This value can
291
308
  # safely be set per-request on the session.
292
309
  #
@@ -302,6 +319,9 @@ module Aws::AppConfig
302
319
  # disables this behaviour. This value can safely be set per
303
320
  # request on the session.
304
321
  #
322
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
323
+ # in seconds.
324
+ #
305
325
  # @option options [Boolean] :http_wire_trace (false) When `true`,
306
326
  # HTTP debug output will be sent to the `:logger`.
307
327
  #
@@ -327,11 +347,12 @@ module Aws::AppConfig
327
347
 
328
348
  # @!group API Operations
329
349
 
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.
350
+ # Creates an application. An application in AppConfig is a logical unit
351
+ # of code that provides capabilities for your customers. For example, an
352
+ # application can be a microservice that runs on Amazon EC2 instances, a
353
+ # mobile application installed by your users, a serverless application
354
+ # using Amazon API Gateway and Lambda, or any system you run on behalf
355
+ # of others.
335
356
  #
336
357
  # @option params [required, String] :name
337
358
  # A name for the application.
@@ -350,6 +371,23 @@ module Aws::AppConfig
350
371
  # * {Types::Application#name #name} => String
351
372
  # * {Types::Application#description #description} => String
352
373
  #
374
+ #
375
+ # @example Example: To create an application
376
+ #
377
+ # # The following create-application example creates an application in AWS AppConfig.
378
+ #
379
+ # resp = client.create_application({
380
+ # description: "An application used for creating an example.",
381
+ # name: "example-application",
382
+ # })
383
+ #
384
+ # resp.to_h outputs the following:
385
+ # {
386
+ # description: "An application used for creating an example.",
387
+ # id: "339ohji",
388
+ # name: "example-application",
389
+ # }
390
+ #
353
391
  # @example Request syntax with placeholder values
354
392
  #
355
393
  # resp = client.create_application({
@@ -375,25 +413,29 @@ module Aws::AppConfig
375
413
  req.send_request(options)
376
414
  end
377
415
 
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.
416
+ # Creates a configuration profile, which is information that enables
417
+ # AppConfig to access the configuration source. Valid configuration
418
+ # sources include the AppConfig hosted configuration store, Amazon Web
419
+ # Services Systems Manager (SSM) documents, SSM Parameter Store
420
+ # parameters, Amazon S3 objects, or any [integration source action][1]
421
+ # supported by CodePipeline. A configuration profile includes the
422
+ # following information:
382
423
  #
383
- # * The Uri location of the configuration data.
424
+ # * The URI location of the configuration data.
384
425
  #
385
- # * The AWS Identity and Access Management (IAM) role that provides
386
- # access to the configuration data.
426
+ # * The Identity and Access Management (IAM) role that provides access
427
+ # to the configuration data.
387
428
  #
388
429
  # * A validator for the configuration data. Available validators include
389
- # either a JSON Schema or an AWS Lambda function.
430
+ # either a JSON Schema or an Lambda function.
390
431
  #
391
432
  # For more information, see [Create a Configuration and a Configuration
392
- # Profile][1] in the *AWS AppConfig User Guide*.
433
+ # Profile][2] in the *AppConfig User Guide*.
393
434
  #
394
435
  #
395
436
  #
396
- # [1]: http://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-creating-configuration-and-profile.html
437
+ # [1]: http://docs.aws.amazon.com/codepipeline/latest/userguide/integrations-action-type.html#integrations-source
438
+ # [2]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-creating-configuration-and-profile.html
397
439
  #
398
440
  # @option params [required, String] :application_id
399
441
  # The application ID.
@@ -405,19 +447,25 @@ module Aws::AppConfig
405
447
  # A description of the configuration profile.
406
448
  #
407
449
  # @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
450
+ # A URI to locate the configuration. You can specify the AppConfig
451
+ # hosted configuration store, Systems Manager (SSM) document, an SSM
452
+ # Parameter Store parameter, or an Amazon S3 object. For the hosted
453
+ # configuration store and for feature flags, specify `hosted`. For an
454
+ # SSM document, specify either the document name in the format
455
+ # `ssm-document://<Document_name>` or the Amazon Resource Name (ARN).
456
+ # For a parameter, specify either the parameter name in the format
457
+ # `ssm-parameter://<Parameter_name>` or the ARN. For an Amazon S3
414
458
  # object, specify the URI in the following format:
415
459
  # `s3://<bucket>/<objectKey> `. Here is an example:
416
- # s3://my-bucket/my-app/us-east-1/my-config.json
460
+ # `s3://my-bucket/my-app/us-east-1/my-config.json`
417
461
  #
418
462
  # @option params [String] :retrieval_role_arn
419
463
  # The ARN of an IAM role with permission to access the configuration at
420
- # the specified LocationUri.
464
+ # the specified `LocationUri`.
465
+ #
466
+ # A retrieval role ARN is not required for configurations stored in the
467
+ # AppConfig hosted configuration store. It is required for all other
468
+ # sources that store your configuration.
421
469
  #
422
470
  # @option params [Array<Types::Validator>] :validators
423
471
  # A list of methods for validating the configuration.
@@ -427,6 +475,12 @@ module Aws::AppConfig
427
475
  # and categorize your AppConfig resources. Each tag consists of a key
428
476
  # and an optional value, both of which you define.
429
477
  #
478
+ # @option params [String] :type
479
+ # The type of configurations that the configuration profile contains. A
480
+ # configuration can be a feature flag used for enabling or disabling new
481
+ # features or a free-form configuration used for distributing
482
+ # configurations to your application.
483
+ #
430
484
  # @return [Types::ConfigurationProfile] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
431
485
  #
432
486
  # * {Types::ConfigurationProfile#application_id #application_id} => String
@@ -436,6 +490,29 @@ module Aws::AppConfig
436
490
  # * {Types::ConfigurationProfile#location_uri #location_uri} => String
437
491
  # * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
438
492
  # * {Types::ConfigurationProfile#validators #validators} => Array&lt;Types::Validator&gt;
493
+ # * {Types::ConfigurationProfile#type #type} => String
494
+ #
495
+ #
496
+ # @example Example: To create a configuration profile
497
+ #
498
+ # # The following create-configuration-profile example creates a configuration profile using a configuration stored in
499
+ # # Parameter Store, a capability of Systems Manager.
500
+ #
501
+ # resp = client.create_configuration_profile({
502
+ # application_id: "339ohji",
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
+ # })
507
+ #
508
+ # resp.to_h outputs the following:
509
+ # {
510
+ # application_id: "339ohji",
511
+ # id: "ur8hx2f",
512
+ # location_uri: "ssm-parameter://Example-Parameter",
513
+ # name: "Example-Configuration-Profile",
514
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
515
+ # }
439
516
  #
440
517
  # @example Request syntax with placeholder values
441
518
  #
@@ -454,6 +531,7 @@ module Aws::AppConfig
454
531
  # tags: {
455
532
  # "TagKey" => "TagValue",
456
533
  # },
534
+ # type: "ConfigurationProfileType",
457
535
  # })
458
536
  #
459
537
  # @example Response structure
@@ -467,6 +545,7 @@ module Aws::AppConfig
467
545
  # resp.validators #=> Array
468
546
  # resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
469
547
  # resp.validators[0].content #=> String
548
+ # resp.type #=> String
470
549
  #
471
550
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateConfigurationProfile AWS API Documentation
472
551
  #
@@ -477,11 +556,11 @@ module Aws::AppConfig
477
556
  req.send_request(options)
478
557
  end
479
558
 
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.
559
+ # Creates a deployment strategy that defines important criteria for
560
+ # rolling out your configuration to the designated targets. A deployment
561
+ # strategy includes the overall duration required, a percentage of
562
+ # targets to receive the deployment during each interval, an algorithm
563
+ # that defines how percentage grows, and bake time.
485
564
  #
486
565
  # @option params [required, String] :name
487
566
  # A name for the deployment strategy.
@@ -502,8 +581,8 @@ module Aws::AppConfig
502
581
  # each interval.
503
582
  #
504
583
  # @option params [String] :growth_type
505
- # The algorithm used to define how percentage grows over time. AWS
506
- # AppConfig supports the following growth types:
584
+ # The algorithm used to define how percentage grows over time. AppConfig
585
+ # supports the following growth types:
507
586
  #
508
587
  # **Linear**\: For this type, AppConfig processes the deployment by
509
588
  # dividing the total number of targets by the value specified for `Step
@@ -549,6 +628,31 @@ module Aws::AppConfig
549
628
  # * {Types::DeploymentStrategy#final_bake_time_in_minutes #final_bake_time_in_minutes} => Integer
550
629
  # * {Types::DeploymentStrategy#replicate_to #replicate_to} => String
551
630
  #
631
+ #
632
+ # @example Example: To create a deployment strategy
633
+ #
634
+ # # The following create-deployment-strategy example creates a deployment strategy called Example-Deployment that takes 15
635
+ # # minutes and deploys the configuration to 25% of the application at a time. The strategy is also copied to an SSM
636
+ # # Document.
637
+ #
638
+ # resp = client.create_deployment_strategy({
639
+ # deployment_duration_in_minutes: 15,
640
+ # growth_factor: 25,
641
+ # name: "Example-Deployment",
642
+ # replicate_to: "SSM_DOCUMENT",
643
+ # })
644
+ #
645
+ # resp.to_h outputs the following:
646
+ # {
647
+ # deployment_duration_in_minutes: 15,
648
+ # final_bake_time_in_minutes: 0,
649
+ # growth_factor: 25,
650
+ # growth_type: "LINEAR",
651
+ # id: "1225qzk",
652
+ # name: "Example-Deployment",
653
+ # replicate_to: "SSM_DOCUMENT",
654
+ # }
655
+ #
552
656
  # @example Request syntax with placeholder values
553
657
  #
554
658
  # resp = client.create_deployment_strategy({
@@ -584,14 +688,15 @@ module Aws::AppConfig
584
688
  req.send_request(options)
585
689
  end
586
690
 
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.
691
+ # Creates an environment. For each application, you define one or more
692
+ # environments. An environment is a logical deployment group of
693
+ # AppConfig targets, such as applications in a `Beta` or `Production`
694
+ # environment. You can also define environments for application
695
+ # subcomponents such as the `Web`, `Mobile` and `Back-end` components
696
+ # for your application. You can configure Amazon CloudWatch alarms for
697
+ # each environment. The system monitors alarms during a configuration
698
+ # deployment. If an alarm is triggered, the system rolls back the
699
+ # configuration.
595
700
  #
596
701
  # @option params [required, String] :application_id
597
702
  # The application ID.
@@ -619,6 +724,25 @@ module Aws::AppConfig
619
724
  # * {Types::Environment#state #state} => String
620
725
  # * {Types::Environment#monitors #monitors} => Array&lt;Types::Monitor&gt;
621
726
  #
727
+ #
728
+ # @example Example: To create an environment
729
+ #
730
+ # # The following create-environment example creates an AWS AppConfig environment named Example-Environment using the
731
+ # # application you created using create-application
732
+ #
733
+ # resp = client.create_environment({
734
+ # application_id: "339ohji",
735
+ # name: "Example-Environment",
736
+ # })
737
+ #
738
+ # resp.to_h outputs the following:
739
+ # {
740
+ # application_id: "339ohji",
741
+ # id: "54j1r29",
742
+ # name: "Example-Environment",
743
+ # state: "READY_FOR_DEPLOYMENT",
744
+ # }
745
+ #
622
746
  # @example Request syntax with placeholder values
623
747
  #
624
748
  # resp = client.create_environment({
@@ -627,7 +751,7 @@ module Aws::AppConfig
627
751
  # description: "Description",
628
752
  # monitors: [
629
753
  # {
630
- # alarm_arn: "Arn",
754
+ # alarm_arn: "StringWithLengthBetween1And2048", # required
631
755
  # alarm_role_arn: "RoleArn",
632
756
  # },
633
757
  # ],
@@ -656,7 +780,8 @@ module Aws::AppConfig
656
780
  req.send_request(options)
657
781
  end
658
782
 
659
- # Create a new configuration in the AppConfig configuration store.
783
+ # Creates a new configuration in the AppConfig hosted configuration
784
+ # store.
660
785
  #
661
786
  # @option params [required, String] :application_id
662
787
  # The application ID.
@@ -676,14 +801,14 @@ module Aws::AppConfig
676
801
  #
677
802
  #
678
803
  #
679
- # [1]: https://docs.aws.amazon.com/https:/www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
804
+ # [1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
680
805
  #
681
806
  # @option params [Integer] :latest_version_number
682
807
  # An optional locking token used to prevent race conditions from
683
808
  # overwriting configuration updates when creating a new version. To
684
809
  # 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.
810
+ # configuration versions in rapid succession, specify the version number
811
+ # of the latest hosted configuration version.
687
812
  #
688
813
  # @return [Types::HostedConfigurationVersion] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
689
814
  #
@@ -694,6 +819,28 @@ module Aws::AppConfig
694
819
  # * {Types::HostedConfigurationVersion#content #content} => String
695
820
  # * {Types::HostedConfigurationVersion#content_type #content_type} => String
696
821
  #
822
+ #
823
+ # @example Example: To create a hosted configuration version
824
+ #
825
+ # # The following create-hosted-configuration-version example creates a new configuration in the AWS AppConfig configuration
826
+ # # store.
827
+ #
828
+ # resp = client.create_hosted_configuration_version({
829
+ # application_id: "339ohji",
830
+ # configuration_profile_id: "ur8hx2f",
831
+ # content: "eyAiTmFtZSI6ICJFeGFtcGxlQXBwbGljYXRpb24iLCAiSWQiOiBFeGFtcGxlSUQsICJSYW5rIjogNyB9",
832
+ # content_type: "text",
833
+ # latest_version_number: 1,
834
+ # })
835
+ #
836
+ # resp.to_h outputs the following:
837
+ # {
838
+ # application_id: "339ohji",
839
+ # configuration_profile_id: "ur8hx2f",
840
+ # content_type: "text",
841
+ # version_number: 1,
842
+ # }
843
+ #
697
844
  # @example Request syntax with placeholder values
698
845
  #
699
846
  # resp = client.create_hosted_configuration_version({
@@ -723,7 +870,7 @@ module Aws::AppConfig
723
870
  req.send_request(options)
724
871
  end
725
872
 
726
- # Delete an application. Deleting an application does not delete a
873
+ # Deletes an application. Deleting an application does not delete a
727
874
  # configuration from a host.
728
875
  #
729
876
  # @option params [required, String] :application_id
@@ -731,6 +878,15 @@ module Aws::AppConfig
731
878
  #
732
879
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
733
880
  #
881
+ #
882
+ # @example Example: To delete an application
883
+ #
884
+ # # The following delete-application example deletes the specified application.
885
+ #
886
+ # resp = client.delete_application({
887
+ # application_id: "339ohji",
888
+ # })
889
+ #
734
890
  # @example Request syntax with placeholder values
735
891
  #
736
892
  # resp = client.delete_application({
@@ -746,7 +902,7 @@ module Aws::AppConfig
746
902
  req.send_request(options)
747
903
  end
748
904
 
749
- # Delete a configuration profile. Deleting a configuration profile does
905
+ # Deletes a configuration profile. Deleting a configuration profile does
750
906
  # not delete a configuration from a host.
751
907
  #
752
908
  # @option params [required, String] :application_id
@@ -758,6 +914,16 @@ module Aws::AppConfig
758
914
  #
759
915
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
760
916
  #
917
+ #
918
+ # @example Example: To delete a configuration profile
919
+ #
920
+ # # The following delete-configuration-profile example deletes the specified configuration profile.
921
+ #
922
+ # resp = client.delete_configuration_profile({
923
+ # application_id: "339ohji",
924
+ # configuration_profile_id: "ur8hx2f",
925
+ # })
926
+ #
761
927
  # @example Request syntax with placeholder values
762
928
  #
763
929
  # resp = client.delete_configuration_profile({
@@ -774,7 +940,7 @@ module Aws::AppConfig
774
940
  req.send_request(options)
775
941
  end
776
942
 
777
- # Delete a deployment strategy. Deleting a deployment strategy does not
943
+ # Deletes a deployment strategy. Deleting a deployment strategy does not
778
944
  # delete a configuration from a host.
779
945
  #
780
946
  # @option params [required, String] :deployment_strategy_id
@@ -782,6 +948,15 @@ module Aws::AppConfig
782
948
  #
783
949
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
784
950
  #
951
+ #
952
+ # @example Example: To delete a deployment strategy
953
+ #
954
+ # # The following delete-deployment-strategy example deletes the specified deployment strategy.
955
+ #
956
+ # resp = client.delete_deployment_strategy({
957
+ # deployment_strategy_id: "1225qzk",
958
+ # })
959
+ #
785
960
  # @example Request syntax with placeholder values
786
961
  #
787
962
  # resp = client.delete_deployment_strategy({
@@ -797,17 +972,28 @@ module Aws::AppConfig
797
972
  req.send_request(options)
798
973
  end
799
974
 
800
- # Delete an environment. Deleting an environment does not delete a
975
+ # Deletes an environment. Deleting an environment does not delete a
801
976
  # configuration from a host.
802
977
  #
803
978
  # @option params [required, String] :application_id
804
- # The application ID that includes the environment you want to delete.
979
+ # The application ID that includes the environment that you want to
980
+ # delete.
805
981
  #
806
982
  # @option params [required, String] :environment_id
807
- # The ID of the environment you want to delete.
983
+ # The ID of the environment that you want to delete.
808
984
  #
809
985
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
810
986
  #
987
+ #
988
+ # @example Example: To delete an environment
989
+ #
990
+ # # The following delete-environment example deletes the specified application environment.
991
+ #
992
+ # resp = client.delete_environment({
993
+ # application_id: "339ohji",
994
+ # environment_id: "54j1r29",
995
+ # })
996
+ #
811
997
  # @example Request syntax with placeholder values
812
998
  #
813
999
  # resp = client.delete_environment({
@@ -824,8 +1010,8 @@ module Aws::AppConfig
824
1010
  req.send_request(options)
825
1011
  end
826
1012
 
827
- # Delete a version of a configuration from the AppConfig configuration
828
- # store.
1013
+ # Deletes a version of a configuration from the AppConfig hosted
1014
+ # configuration store.
829
1015
  #
830
1016
  # @option params [required, String] :application_id
831
1017
  # The application ID.
@@ -838,6 +1024,18 @@ module Aws::AppConfig
838
1024
  #
839
1025
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
840
1026
  #
1027
+ #
1028
+ # @example Example: To delete a hosted configuration version
1029
+ #
1030
+ # # The following delete-hosted-configuration-version example deletes a configuration version hosted in the AWS AppConfig
1031
+ # # configuration store.
1032
+ #
1033
+ # resp = client.delete_hosted_configuration_version({
1034
+ # application_id: "339ohji",
1035
+ # configuration_profile_id: "ur8hx2f",
1036
+ # version_number: 1,
1037
+ # })
1038
+ #
841
1039
  # @example Request syntax with placeholder values
842
1040
  #
843
1041
  # resp = client.delete_hosted_configuration_version({
@@ -855,7 +1053,7 @@ module Aws::AppConfig
855
1053
  req.send_request(options)
856
1054
  end
857
1055
 
858
- # Retrieve information about an application.
1056
+ # Retrieves information about an application.
859
1057
  #
860
1058
  # @option params [required, String] :application_id
861
1059
  # The ID of the application you want to get.
@@ -866,6 +1064,21 @@ module Aws::AppConfig
866
1064
  # * {Types::Application#name #name} => String
867
1065
  # * {Types::Application#description #description} => String
868
1066
  #
1067
+ #
1068
+ # @example Example: To list details of an application
1069
+ #
1070
+ # # The following get-application example lists the details of the specified application.
1071
+ #
1072
+ # resp = client.get_application({
1073
+ # application_id: "339ohji",
1074
+ # })
1075
+ #
1076
+ # resp.to_h outputs the following:
1077
+ # {
1078
+ # id: "339ohji",
1079
+ # name: "example-application",
1080
+ # }
1081
+ #
869
1082
  # @example Request syntax with placeholder values
870
1083
  #
871
1084
  # resp = client.get_application({
@@ -887,11 +1100,11 @@ module Aws::AppConfig
887
1100
  req.send_request(options)
888
1101
  end
889
1102
 
890
- # Receive information about a configuration.
1103
+ # Retrieves information about a configuration.
891
1104
  #
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
1105
+ # AppConfig uses the value of the `ClientConfigurationVersion` parameter
1106
+ # to identify the configuration version on your clients. If you don’t
1107
+ # send `ClientConfigurationVersion` with each call to
895
1108
  # `GetConfiguration`, your clients receive the current configuration.
896
1109
  # You are charged each time your clients receive a configuration.
897
1110
  #
@@ -914,17 +1127,18 @@ module Aws::AppConfig
914
1127
  # configuration ID.
915
1128
  #
916
1129
  # @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.
1130
+ # The clientId parameter in the following command is a unique,
1131
+ # user-specified ID to identify the client for the configuration. This
1132
+ # ID enables AppConfig to deploy the configuration in intervals, as
1133
+ # defined in the deployment strategy.
920
1134
  #
921
1135
  # @option params [String] :client_configuration_version
922
1136
  # The configuration version returned in the most recent
923
1137
  # `GetConfiguration` response.
924
1138
  #
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
1139
+ # AppConfig uses the value of the `ClientConfigurationVersion` parameter
1140
+ # to identify the configuration version on your clients. If you don’t
1141
+ # send `ClientConfigurationVersion` with each call to
928
1142
  # `GetConfiguration`, your clients receive the current configuration.
929
1143
  # You are charged each time your clients receive a configuration.
930
1144
  #
@@ -935,11 +1149,11 @@ module Aws::AppConfig
935
1149
  # the `ClientConfigurationVersion` parameter.
936
1150
  #
937
1151
  # For more information about working with configurations, see
938
- # [Retrieving the Configuration][1] in the *AWS AppConfig User Guide*.
1152
+ # [Retrieving the Configuration][1] in the *AppConfig User Guide*.
939
1153
  #
940
1154
  #
941
1155
  #
942
- # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-retrieving-the-configuration.html
1156
+ # [1]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-retrieving-the-configuration.html
943
1157
  #
944
1158
  # @return [Types::Configuration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
945
1159
  #
@@ -947,6 +1161,27 @@ module Aws::AppConfig
947
1161
  # * {Types::Configuration#configuration_version #configuration_version} => String
948
1162
  # * {Types::Configuration#content_type #content_type} => String
949
1163
  #
1164
+ #
1165
+ # @example Example: To retrieve configuration details
1166
+ #
1167
+ # # The following get-configuration example returns the configuration details of the example application. On subsequent
1168
+ # # calls to get-configuration, use the client-configuration-version parameter to only update the configuration of your
1169
+ # # application if the version has changed. Only updating the configuration when the version has changed avoids excess
1170
+ # # charges incurred by calling get-configuration.
1171
+ #
1172
+ # resp = client.get_configuration({
1173
+ # application: "example-application",
1174
+ # client_id: "example-id",
1175
+ # configuration: "Example-Configuration-Profile",
1176
+ # environment: "Example-Environment",
1177
+ # })
1178
+ #
1179
+ # resp.to_h outputs the following:
1180
+ # {
1181
+ # configuration_version: "1",
1182
+ # content_type: "application/octet-stream",
1183
+ # }
1184
+ #
950
1185
  # @example Request syntax with placeholder values
951
1186
  #
952
1187
  # resp = client.get_configuration({
@@ -972,14 +1207,14 @@ module Aws::AppConfig
972
1207
  req.send_request(options)
973
1208
  end
974
1209
 
975
- # Retrieve information about a configuration profile.
1210
+ # Retrieves information about a configuration profile.
976
1211
  #
977
1212
  # @option params [required, String] :application_id
978
1213
  # The ID of the application that includes the configuration profile you
979
1214
  # want to get.
980
1215
  #
981
1216
  # @option params [required, String] :configuration_profile_id
982
- # The ID of the configuration profile you want to get.
1217
+ # The ID of the configuration profile that you want to get.
983
1218
  #
984
1219
  # @return [Types::ConfigurationProfile] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
985
1220
  #
@@ -990,6 +1225,26 @@ module Aws::AppConfig
990
1225
  # * {Types::ConfigurationProfile#location_uri #location_uri} => String
991
1226
  # * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
992
1227
  # * {Types::ConfigurationProfile#validators #validators} => Array&lt;Types::Validator&gt;
1228
+ # * {Types::ConfigurationProfile#type #type} => String
1229
+ #
1230
+ #
1231
+ # @example Example: To retrieve configuration profile details
1232
+ #
1233
+ # # The following get-configuration-profile example returns the details of the specified configuration profile.
1234
+ #
1235
+ # resp = client.get_configuration_profile({
1236
+ # application_id: "339ohji",
1237
+ # configuration_profile_id: "ur8hx2f",
1238
+ # })
1239
+ #
1240
+ # resp.to_h outputs the following:
1241
+ # {
1242
+ # application_id: "339ohji",
1243
+ # id: "ur8hx2f",
1244
+ # location_uri: "ssm-parameter://Example-Parameter",
1245
+ # name: "Example-Configuration-Profile",
1246
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
1247
+ # }
993
1248
  #
994
1249
  # @example Request syntax with placeholder values
995
1250
  #
@@ -1009,6 +1264,7 @@ module Aws::AppConfig
1009
1264
  # resp.validators #=> Array
1010
1265
  # resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
1011
1266
  # resp.validators[0].content #=> String
1267
+ # resp.type #=> String
1012
1268
  #
1013
1269
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetConfigurationProfile AWS API Documentation
1014
1270
  #
@@ -1019,7 +1275,7 @@ module Aws::AppConfig
1019
1275
  req.send_request(options)
1020
1276
  end
1021
1277
 
1022
- # Retrieve information about a configuration deployment.
1278
+ # Retrieves information about a configuration deployment.
1023
1279
  #
1024
1280
  # @option params [required, String] :application_id
1025
1281
  # The ID of the application that includes the deployment you want to
@@ -1053,6 +1309,82 @@ module Aws::AppConfig
1053
1309
  # * {Types::Deployment#started_at #started_at} => Time
1054
1310
  # * {Types::Deployment#completed_at #completed_at} => Time
1055
1311
  #
1312
+ #
1313
+ # @example Example: To retrieve deployment details
1314
+ #
1315
+ # # The following get-deployment example lists details of the deployment to the application in the specified environment and
1316
+ # # deployment.
1317
+ #
1318
+ # resp = client.get_deployment({
1319
+ # application_id: "339ohji",
1320
+ # deployment_number: 1,
1321
+ # environment_id: "54j1r29",
1322
+ # })
1323
+ #
1324
+ # resp.to_h outputs the following:
1325
+ # {
1326
+ # application_id: "339ohji",
1327
+ # completed_at: Time.parse("2021-09-17T21:59:03.888000+00:00"),
1328
+ # configuration_location_uri: "ssm-parameter://Example-Parameter",
1329
+ # configuration_name: "Example-Configuration-Profile",
1330
+ # configuration_profile_id: "ur8hx2f",
1331
+ # configuration_version: "1",
1332
+ # deployment_duration_in_minutes: 15,
1333
+ # deployment_number: 1,
1334
+ # deployment_strategy_id: "1225qzk",
1335
+ # environment_id: "54j1r29",
1336
+ # event_log: [
1337
+ # {
1338
+ # description: "Deployment completed",
1339
+ # event_type: "DEPLOYMENT_COMPLETED",
1340
+ # occurred_at: Time.parse("2021-09-17T21:59:03.888000+00:00"),
1341
+ # triggered_by: "APPCONFIG",
1342
+ # },
1343
+ # {
1344
+ # description: "Deployment bake time started",
1345
+ # event_type: "BAKE_TIME_STARTED",
1346
+ # occurred_at: Time.parse("2021-09-17T21:58:57.722000+00:00"),
1347
+ # triggered_by: "APPCONFIG",
1348
+ # },
1349
+ # {
1350
+ # description: "Configuration available to 100.00% of clients",
1351
+ # event_type: "PERCENTAGE_UPDATED",
1352
+ # occurred_at: Time.parse("2021-09-17T21:55:56.816000+00:00"),
1353
+ # triggered_by: "APPCONFIG",
1354
+ # },
1355
+ # {
1356
+ # description: "Configuration available to 75.00% of clients",
1357
+ # event_type: "PERCENTAGE_UPDATED",
1358
+ # occurred_at: Time.parse("2021-09-17T21:52:56.567000+00:00"),
1359
+ # triggered_by: "APPCONFIG",
1360
+ # },
1361
+ # {
1362
+ # description: "Configuration available to 50.00% of clients",
1363
+ # event_type: "PERCENTAGE_UPDATED",
1364
+ # occurred_at: Time.parse("2021-09-17T21:49:55.737000+00:00"),
1365
+ # triggered_by: "APPCONFIG",
1366
+ # },
1367
+ # {
1368
+ # description: "Configuration available to 25.00% of clients",
1369
+ # event_type: "PERCENTAGE_UPDATED",
1370
+ # occurred_at: Time.parse("2021-09-17T21:46:55.187000+00:00"),
1371
+ # triggered_by: "APPCONFIG",
1372
+ # },
1373
+ # {
1374
+ # description: "Deployment started",
1375
+ # event_type: "DEPLOYMENT_STARTED",
1376
+ # occurred_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
1377
+ # triggered_by: "USER",
1378
+ # },
1379
+ # ],
1380
+ # final_bake_time_in_minutes: 0,
1381
+ # growth_factor: 25,
1382
+ # growth_type: "LINEAR",
1383
+ # percentage_complete: 100,
1384
+ # started_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
1385
+ # state: "COMPLETE",
1386
+ # }
1387
+ #
1056
1388
  # @example Request syntax with placeholder values
1057
1389
  #
1058
1390
  # resp = client.get_deployment({
@@ -1095,9 +1427,9 @@ module Aws::AppConfig
1095
1427
  req.send_request(options)
1096
1428
  end
1097
1429
 
1098
- # Retrieve information about a deployment strategy. A deployment
1430
+ # Retrieves information about a deployment strategy. A deployment
1099
1431
  # strategy defines important criteria for rolling out your configuration
1100
- # to the designated targets. A deployment strategy includes: the overall
1432
+ # to the designated targets. A deployment strategy includes the overall
1101
1433
  # duration required, a percentage of targets to receive the deployment
1102
1434
  # during each interval, an algorithm that defines how percentage grows,
1103
1435
  # and bake time.
@@ -1116,6 +1448,26 @@ module Aws::AppConfig
1116
1448
  # * {Types::DeploymentStrategy#final_bake_time_in_minutes #final_bake_time_in_minutes} => Integer
1117
1449
  # * {Types::DeploymentStrategy#replicate_to #replicate_to} => String
1118
1450
  #
1451
+ #
1452
+ # @example Example: To retrieve details of a deployment strategy
1453
+ #
1454
+ # # The following get-deployment-strategy example lists the details of the specified deployment strategy.
1455
+ #
1456
+ # resp = client.get_deployment_strategy({
1457
+ # deployment_strategy_id: "1225qzk",
1458
+ # })
1459
+ #
1460
+ # resp.to_h outputs the following:
1461
+ # {
1462
+ # deployment_duration_in_minutes: 15,
1463
+ # final_bake_time_in_minutes: 0,
1464
+ # growth_factor: 25,
1465
+ # growth_type: "LINEAR",
1466
+ # id: "1225qzk",
1467
+ # name: "Example-Deployment",
1468
+ # replicate_to: "SSM_DOCUMENT",
1469
+ # }
1470
+ #
1119
1471
  # @example Request syntax with placeholder values
1120
1472
  #
1121
1473
  # resp = client.get_deployment_strategy({
@@ -1142,19 +1494,20 @@ module Aws::AppConfig
1142
1494
  req.send_request(options)
1143
1495
  end
1144
1496
 
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.
1497
+ # Retrieves information about an environment. An environment is a
1498
+ # logical deployment group of AppConfig applications, such as
1499
+ # applications in a `Production` environment or in an `EU_Region`
1500
+ # environment. Each configuration deployment targets an environment. You
1501
+ # can enable one or more Amazon CloudWatch alarms for an environment. If
1502
+ # an alarm is triggered during a deployment, AppConfig roles back the
1503
+ # configuration.
1151
1504
  #
1152
1505
  # @option params [required, String] :application_id
1153
1506
  # The ID of the application that includes the environment you want to
1154
1507
  # get.
1155
1508
  #
1156
1509
  # @option params [required, String] :environment_id
1157
- # The ID of the environment you wnat to get.
1510
+ # The ID of the environment that you want to get.
1158
1511
  #
1159
1512
  # @return [Types::Environment] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1160
1513
  #
@@ -1165,6 +1518,24 @@ module Aws::AppConfig
1165
1518
  # * {Types::Environment#state #state} => String
1166
1519
  # * {Types::Environment#monitors #monitors} => Array&lt;Types::Monitor&gt;
1167
1520
  #
1521
+ #
1522
+ # @example Example: To retrieve environment details
1523
+ #
1524
+ # # The following get-environment example returns the details and state of the specified environment.
1525
+ #
1526
+ # resp = client.get_environment({
1527
+ # application_id: "339ohji",
1528
+ # environment_id: "54j1r29",
1529
+ # })
1530
+ #
1531
+ # resp.to_h outputs the following:
1532
+ # {
1533
+ # application_id: "339ohji",
1534
+ # id: "54j1r29",
1535
+ # name: "Example-Environment",
1536
+ # state: "READY_FOR_DEPLOYMENT",
1537
+ # }
1538
+ #
1168
1539
  # @example Request syntax with placeholder values
1169
1540
  #
1170
1541
  # resp = client.get_environment({
@@ -1192,7 +1563,7 @@ module Aws::AppConfig
1192
1563
  req.send_request(options)
1193
1564
  end
1194
1565
 
1195
- # Get information about a specific configuration version.
1566
+ # Retrieves information about a specific configuration version.
1196
1567
  #
1197
1568
  # @option params [required, String] :application_id
1198
1569
  # The application ID.
@@ -1212,6 +1583,26 @@ module Aws::AppConfig
1212
1583
  # * {Types::HostedConfigurationVersion#content #content} => String
1213
1584
  # * {Types::HostedConfigurationVersion#content_type #content_type} => String
1214
1585
  #
1586
+ #
1587
+ # @example Example: To retrieve hosted configuration details
1588
+ #
1589
+ # # The following get-hosted-configuration-version example retrieves the configuration details of the AWS AppConfig hosted
1590
+ # # configuration.
1591
+ #
1592
+ # resp = client.get_hosted_configuration_version({
1593
+ # application_id: "339ohji",
1594
+ # configuration_profile_id: "ur8hx2f",
1595
+ # version_number: 1,
1596
+ # })
1597
+ #
1598
+ # resp.to_h outputs the following:
1599
+ # {
1600
+ # application_id: "339ohji",
1601
+ # configuration_profile_id: "ur8hx2f",
1602
+ # content_type: "application/json",
1603
+ # version_number: 1,
1604
+ # }
1605
+ #
1215
1606
  # @example Request syntax with placeholder values
1216
1607
  #
1217
1608
  # resp = client.get_hosted_configuration_version({
@@ -1238,7 +1629,7 @@ module Aws::AppConfig
1238
1629
  req.send_request(options)
1239
1630
  end
1240
1631
 
1241
- # List all applications in your AWS account.
1632
+ # Lists all applications in your Amazon Web Services account.
1242
1633
  #
1243
1634
  # @option params [Integer] :max_results
1244
1635
  # The maximum number of items to return for this call. The call also
@@ -1246,8 +1637,12 @@ module Aws::AppConfig
1246
1637
  # next set of results.
1247
1638
  #
1248
1639
  # @option params [String] :next_token
1249
- # A token to start the list. Use this token to get the next set of
1250
- # results.
1640
+ # A token to start the list. Next token is a pagination token generated
1641
+ # by AppConfig to describe what page the previous List call ended on.
1642
+ # For the first List request, the nextToken should not be set. On
1643
+ # subsequent calls, the nextToken parameter should be set to the
1644
+ # previous responses nextToken value. Use this token to get the next set
1645
+ # of results.
1251
1646
  #
1252
1647
  # @return [Types::Applications] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1253
1648
  #
@@ -1256,6 +1651,29 @@ module Aws::AppConfig
1256
1651
  #
1257
1652
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1258
1653
  #
1654
+ #
1655
+ # @example Example: To list the available applications
1656
+ #
1657
+ # # The following list-applications example lists the available applications in your AWS account.
1658
+ #
1659
+ # resp = client.list_applications({
1660
+ # })
1661
+ #
1662
+ # resp.to_h outputs the following:
1663
+ # {
1664
+ # items: [
1665
+ # {
1666
+ # description: "An application used for creating an example.",
1667
+ # id: "339ohji",
1668
+ # name: "test-application",
1669
+ # },
1670
+ # {
1671
+ # id: "rwalwu7",
1672
+ # name: "Test-Application",
1673
+ # },
1674
+ # ],
1675
+ # }
1676
+ #
1259
1677
  # @example Request syntax with placeholder values
1260
1678
  #
1261
1679
  # resp = client.list_applications({
@@ -1294,6 +1712,11 @@ module Aws::AppConfig
1294
1712
  # A token to start the list. Use this token to get the next set of
1295
1713
  # results.
1296
1714
  #
1715
+ # @option params [String] :type
1716
+ # A filter based on the type of configurations that the configuration
1717
+ # profile contains. A configuration can be a feature flag or a free-form
1718
+ # configuration.
1719
+ #
1297
1720
  # @return [Types::ConfigurationProfiles] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1298
1721
  #
1299
1722
  # * {Types::ConfigurationProfiles#items #items} => Array&lt;Types::ConfigurationProfileSummary&gt;
@@ -1301,12 +1724,35 @@ module Aws::AppConfig
1301
1724
  #
1302
1725
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1303
1726
  #
1727
+ #
1728
+ # @example Example: To list the available configuration profiles
1729
+ #
1730
+ # # The following list-configuration-profiles example lists the available configuration profiles for the specified
1731
+ # # application.
1732
+ #
1733
+ # resp = client.list_configuration_profiles({
1734
+ # application_id: "339ohji",
1735
+ # })
1736
+ #
1737
+ # resp.to_h outputs the following:
1738
+ # {
1739
+ # items: [
1740
+ # {
1741
+ # application_id: "339ohji",
1742
+ # id: "ur8hx2f",
1743
+ # location_uri: "ssm-parameter://Example-Parameter",
1744
+ # name: "Example-Configuration-Profile",
1745
+ # },
1746
+ # ],
1747
+ # }
1748
+ #
1304
1749
  # @example Request syntax with placeholder values
1305
1750
  #
1306
1751
  # resp = client.list_configuration_profiles({
1307
1752
  # application_id: "Id", # required
1308
1753
  # max_results: 1,
1309
1754
  # next_token: "NextToken",
1755
+ # type: "ConfigurationProfileType",
1310
1756
  # })
1311
1757
  #
1312
1758
  # @example Response structure
@@ -1318,6 +1764,7 @@ module Aws::AppConfig
1318
1764
  # resp.items[0].location_uri #=> String
1319
1765
  # resp.items[0].validator_types #=> Array
1320
1766
  # resp.items[0].validator_types[0] #=> String, one of "JSON_SCHEMA", "LAMBDA"
1767
+ # resp.items[0].type #=> String
1321
1768
  # resp.next_token #=> String
1322
1769
  #
1323
1770
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListConfigurationProfiles AWS API Documentation
@@ -1329,7 +1776,7 @@ module Aws::AppConfig
1329
1776
  req.send_request(options)
1330
1777
  end
1331
1778
 
1332
- # List deployment strategies.
1779
+ # Lists deployment strategies.
1333
1780
  #
1334
1781
  # @option params [Integer] :max_results
1335
1782
  # The maximum number of items to return for this call. The call also
@@ -1347,6 +1794,29 @@ module Aws::AppConfig
1347
1794
  #
1348
1795
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1349
1796
  #
1797
+ #
1798
+ # @example Example: To list the available deployment strategies
1799
+ #
1800
+ # # The following list-deployment-strategies example lists the available deployment strategies in your AWS account.
1801
+ #
1802
+ # resp = client.list_deployment_strategies({
1803
+ # })
1804
+ #
1805
+ # resp.to_h outputs the following:
1806
+ # {
1807
+ # items: [
1808
+ # {
1809
+ # deployment_duration_in_minutes: 15,
1810
+ # final_bake_time_in_minutes: 0,
1811
+ # growth_factor: 25,
1812
+ # growth_type: "LINEAR",
1813
+ # id: "1225qzk",
1814
+ # name: "Example-Deployment",
1815
+ # replicate_to: "SSM_DOCUMENT",
1816
+ # },
1817
+ # ],
1818
+ # }
1819
+ #
1350
1820
  # @example Request syntax with placeholder values
1351
1821
  #
1352
1822
  # resp = client.list_deployment_strategies({
@@ -1400,6 +1870,36 @@ module Aws::AppConfig
1400
1870
  #
1401
1871
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1402
1872
  #
1873
+ #
1874
+ # @example Example: To list the available deployments
1875
+ #
1876
+ # # The following list-deployments example lists the available deployments in your AWS account for the specified application
1877
+ # # and environment.
1878
+ #
1879
+ # resp = client.list_deployments({
1880
+ # application_id: "339ohji",
1881
+ # environment_id: "54j1r29",
1882
+ # })
1883
+ #
1884
+ # resp.to_h outputs the following:
1885
+ # {
1886
+ # items: [
1887
+ # {
1888
+ # completed_at: Time.parse("2021-09-17T21:59:03.888000+00:00"),
1889
+ # configuration_name: "Example-Configuration-Profile",
1890
+ # configuration_version: "1",
1891
+ # deployment_duration_in_minutes: 15,
1892
+ # deployment_number: 1,
1893
+ # final_bake_time_in_minutes: 0,
1894
+ # growth_factor: 25,
1895
+ # growth_type: "LINEAR",
1896
+ # percentage_complete: 100,
1897
+ # started_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
1898
+ # state: "COMPLETE",
1899
+ # },
1900
+ # ],
1901
+ # }
1902
+ #
1403
1903
  # @example Request syntax with placeholder values
1404
1904
  #
1405
1905
  # resp = client.list_deployments({
@@ -1434,7 +1934,7 @@ module Aws::AppConfig
1434
1934
  req.send_request(options)
1435
1935
  end
1436
1936
 
1437
- # List the environments for an application.
1937
+ # Lists the environments for an application.
1438
1938
  #
1439
1939
  # @option params [required, String] :application_id
1440
1940
  # The application ID.
@@ -1455,6 +1955,28 @@ module Aws::AppConfig
1455
1955
  #
1456
1956
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1457
1957
  #
1958
+ #
1959
+ # @example Example: To list the available environments
1960
+ #
1961
+ # # The following list-environments example lists the available environments in your AWS account for the specified
1962
+ # # application.
1963
+ #
1964
+ # resp = client.list_environments({
1965
+ # application_id: "339ohji",
1966
+ # })
1967
+ #
1968
+ # resp.to_h outputs the following:
1969
+ # {
1970
+ # items: [
1971
+ # {
1972
+ # application_id: "339ohji",
1973
+ # id: "54j1r29",
1974
+ # name: "Example-Environment",
1975
+ # state: "READY_FOR_DEPLOYMENT",
1976
+ # },
1977
+ # ],
1978
+ # }
1979
+ #
1458
1980
  # @example Request syntax with placeholder values
1459
1981
  #
1460
1982
  # resp = client.list_environments({
@@ -1485,7 +2007,7 @@ module Aws::AppConfig
1485
2007
  req.send_request(options)
1486
2008
  end
1487
2009
 
1488
- # View a list of configurations stored in the AppConfig configuration
2010
+ # Lists configurations stored in the AppConfig hosted configuration
1489
2011
  # store by version.
1490
2012
  #
1491
2013
  # @option params [required, String] :application_id
@@ -1510,6 +2032,29 @@ module Aws::AppConfig
1510
2032
  #
1511
2033
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1512
2034
  #
2035
+ #
2036
+ # @example Example: To list the available hosted configuration versions
2037
+ #
2038
+ # # The following list-hosted-configuration-versions example lists the configurations versions hosted in the AWS AppConfig
2039
+ # # hosted configuration store for the specified application and configuration profile.
2040
+ #
2041
+ # resp = client.list_hosted_configuration_versions({
2042
+ # application_id: "339ohji",
2043
+ # configuration_profile_id: "ur8hx2f",
2044
+ # })
2045
+ #
2046
+ # resp.to_h outputs the following:
2047
+ # {
2048
+ # items: [
2049
+ # {
2050
+ # application_id: "339ohji",
2051
+ # configuration_profile_id: "ur8hx2f",
2052
+ # content_type: "application/json",
2053
+ # version_number: 1,
2054
+ # },
2055
+ # ],
2056
+ # }
2057
+ #
1513
2058
  # @example Request syntax with placeholder values
1514
2059
  #
1515
2060
  # resp = client.list_hosted_configuration_versions({
@@ -1547,6 +2092,22 @@ module Aws::AppConfig
1547
2092
  #
1548
2093
  # * {Types::ResourceTags#tags #tags} => Hash&lt;String,String&gt;
1549
2094
  #
2095
+ #
2096
+ # @example Example: To list the tags of an application
2097
+ #
2098
+ # # The following list-tags-for-resource example lists the tags of a specified application.
2099
+ #
2100
+ # resp = client.list_tags_for_resource({
2101
+ # resource_arn: "arn:aws:appconfig:us-east-1:111122223333:application/339ohji",
2102
+ # })
2103
+ #
2104
+ # resp.to_h outputs the following:
2105
+ # {
2106
+ # tags: {
2107
+ # "group1" => "1",
2108
+ # },
2109
+ # }
2110
+ #
1550
2111
  # @example Request syntax with placeholder values
1551
2112
  #
1552
2113
  # resp = client.list_tags_for_resource({
@@ -1613,6 +2174,50 @@ module Aws::AppConfig
1613
2174
  # * {Types::Deployment#started_at #started_at} => Time
1614
2175
  # * {Types::Deployment#completed_at #completed_at} => Time
1615
2176
  #
2177
+ #
2178
+ # @example Example: To start a configuration deployment
2179
+ #
2180
+ # # The following start-deployment example starts a deployment to the application using the specified environment,
2181
+ # # deployment strategy, and configuration profile.
2182
+ #
2183
+ # resp = client.start_deployment({
2184
+ # application_id: "339ohji",
2185
+ # configuration_profile_id: "ur8hx2f",
2186
+ # configuration_version: "1",
2187
+ # deployment_strategy_id: "1225qzk",
2188
+ # description: "",
2189
+ # environment_id: "54j1r29",
2190
+ # tags: {
2191
+ # },
2192
+ # })
2193
+ #
2194
+ # resp.to_h outputs the following:
2195
+ # {
2196
+ # application_id: "339ohji",
2197
+ # configuration_location_uri: "ssm-parameter://Example-Parameter",
2198
+ # configuration_name: "Example-Configuration-Profile",
2199
+ # configuration_profile_id: "ur8hx2f",
2200
+ # configuration_version: "1",
2201
+ # deployment_duration_in_minutes: 15,
2202
+ # deployment_number: 1,
2203
+ # deployment_strategy_id: "1225qzk",
2204
+ # environment_id: "54j1r29",
2205
+ # event_log: [
2206
+ # {
2207
+ # description: "Deployment started",
2208
+ # event_type: "DEPLOYMENT_STARTED",
2209
+ # occurred_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
2210
+ # triggered_by: "USER",
2211
+ # },
2212
+ # ],
2213
+ # final_bake_time_in_minutes: 0,
2214
+ # growth_factor: 25,
2215
+ # growth_type: "LINEAR",
2216
+ # percentage_complete: 1.0,
2217
+ # started_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
2218
+ # state: "DEPLOYING",
2219
+ # }
2220
+ #
1616
2221
  # @example Request syntax with placeholder values
1617
2222
  #
1618
2223
  # resp = client.start_deployment({
@@ -1695,6 +2300,26 @@ module Aws::AppConfig
1695
2300
  # * {Types::Deployment#started_at #started_at} => Time
1696
2301
  # * {Types::Deployment#completed_at #completed_at} => Time
1697
2302
  #
2303
+ #
2304
+ # @example Example: To stop configuration deployment
2305
+ #
2306
+ # # The following stop-deployment example stops the deployment of an application configuration to the specified environment.
2307
+ #
2308
+ # resp = client.stop_deployment({
2309
+ # application_id: "339ohji",
2310
+ # deployment_number: 2,
2311
+ # environment_id: "54j1r29",
2312
+ # })
2313
+ #
2314
+ # resp.to_h outputs the following:
2315
+ # {
2316
+ # deployment_duration_in_minutes: 15,
2317
+ # deployment_number: 2,
2318
+ # final_bake_time_in_minutes: 0,
2319
+ # growth_factor: 25.0,
2320
+ # percentage_complete: 1.0,
2321
+ # }
2322
+ #
1698
2323
  # @example Request syntax with placeholder values
1699
2324
  #
1700
2325
  # resp = client.stop_deployment({
@@ -1737,7 +2362,7 @@ module Aws::AppConfig
1737
2362
  req.send_request(options)
1738
2363
  end
1739
2364
 
1740
- # Metadata to assign to an AppConfig resource. Tags help organize and
2365
+ # Assigns metadata to an AppConfig resource. Tags help organize and
1741
2366
  # categorize your AppConfig resources. Each tag consists of a key and an
1742
2367
  # optional value, both of which you define. You can specify a maximum of
1743
2368
  # 50 tags for a resource.
@@ -1752,6 +2377,18 @@ module Aws::AppConfig
1752
2377
  #
1753
2378
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1754
2379
  #
2380
+ #
2381
+ # @example Example: To tag an application
2382
+ #
2383
+ # # The following tag-resource example tags an application resource.
2384
+ #
2385
+ # resp = client.tag_resource({
2386
+ # resource_arn: "arn:aws:appconfig:us-east-1:111122223333:application/339ohji",
2387
+ # tags: {
2388
+ # "group1" => "1",
2389
+ # },
2390
+ # })
2391
+ #
1755
2392
  # @example Request syntax with placeholder values
1756
2393
  #
1757
2394
  # resp = client.tag_resource({
@@ -1780,6 +2417,18 @@ module Aws::AppConfig
1780
2417
  #
1781
2418
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1782
2419
  #
2420
+ #
2421
+ # @example Example: To remove a tag from an application
2422
+ #
2423
+ # # The following untag-resource example removes the group1 tag from the specified application.
2424
+ #
2425
+ # resp = client.untag_resource({
2426
+ # resource_arn: "arn:aws:appconfig:us-east-1:111122223333:application/339ohji",
2427
+ # tag_keys: [
2428
+ # "group1",
2429
+ # ],
2430
+ # })
2431
+ #
1783
2432
  # @example Request syntax with placeholder values
1784
2433
  #
1785
2434
  # resp = client.untag_resource({
@@ -1813,6 +2462,24 @@ module Aws::AppConfig
1813
2462
  # * {Types::Application#name #name} => String
1814
2463
  # * {Types::Application#description #description} => String
1815
2464
  #
2465
+ #
2466
+ # @example Example: To update an application
2467
+ #
2468
+ # # The following update-application example updates the name of the specified application.
2469
+ #
2470
+ # resp = client.update_application({
2471
+ # application_id: "339ohji",
2472
+ # description: "",
2473
+ # name: "Example-Application",
2474
+ # })
2475
+ #
2476
+ # resp.to_h outputs the following:
2477
+ # {
2478
+ # description: "An application used for creating an example.",
2479
+ # id: "339ohji",
2480
+ # name: "Example-Application",
2481
+ # }
2482
+ #
1816
2483
  # @example Request syntax with placeholder values
1817
2484
  #
1818
2485
  # resp = client.update_application({
@@ -1852,7 +2519,7 @@ module Aws::AppConfig
1852
2519
  #
1853
2520
  # @option params [String] :retrieval_role_arn
1854
2521
  # The ARN of an IAM role with permission to access the configuration at
1855
- # the specified LocationUri.
2522
+ # the specified `LocationUri`.
1856
2523
  #
1857
2524
  # @option params [Array<Types::Validator>] :validators
1858
2525
  # A list of methods for validating the configuration.
@@ -1866,6 +2533,28 @@ module Aws::AppConfig
1866
2533
  # * {Types::ConfigurationProfile#location_uri #location_uri} => String
1867
2534
  # * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
1868
2535
  # * {Types::ConfigurationProfile#validators #validators} => Array&lt;Types::Validator&gt;
2536
+ # * {Types::ConfigurationProfile#type #type} => String
2537
+ #
2538
+ #
2539
+ # @example Example: To update a configuration profile
2540
+ #
2541
+ # # The following update-configuration-profile example updates the description of the specified configuration profile.
2542
+ #
2543
+ # resp = client.update_configuration_profile({
2544
+ # application_id: "339ohji",
2545
+ # configuration_profile_id: "ur8hx2f",
2546
+ # description: "Configuration profile used for examples.",
2547
+ # })
2548
+ #
2549
+ # resp.to_h outputs the following:
2550
+ # {
2551
+ # application_id: "339ohji",
2552
+ # description: "Configuration profile used for examples.",
2553
+ # id: "ur8hx2f",
2554
+ # location_uri: "ssm-parameter://Example-Parameter",
2555
+ # name: "Example-Configuration-Profile",
2556
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
2557
+ # }
1869
2558
  #
1870
2559
  # @example Request syntax with placeholder values
1871
2560
  #
@@ -1894,6 +2583,7 @@ module Aws::AppConfig
1894
2583
  # resp.validators #=> Array
1895
2584
  # resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
1896
2585
  # resp.validators[0].content #=> String
2586
+ # resp.type #=> String
1897
2587
  #
1898
2588
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateConfigurationProfile AWS API Documentation
1899
2589
  #
@@ -1916,17 +2606,17 @@ module Aws::AppConfig
1916
2606
  # Total amount of time for a deployment to last.
1917
2607
  #
1918
2608
  # @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.
2609
+ # The amount of time that AppConfig monitors for alarms before
2610
+ # considering the deployment to be complete and no longer eligible for
2611
+ # automatic rollback.
1922
2612
  #
1923
2613
  # @option params [Float] :growth_factor
1924
2614
  # The percentage of targets to receive a deployed configuration during
1925
2615
  # each interval.
1926
2616
  #
1927
2617
  # @option params [String] :growth_type
1928
- # The algorithm used to define how percentage grows over time. AWS
1929
- # AppConfig supports the following growth types:
2618
+ # The algorithm used to define how percentage grows over time. AppConfig
2619
+ # supports the following growth types:
1930
2620
  #
1931
2621
  # **Linear**\: For this type, AppConfig processes the deployment by
1932
2622
  # increments of the growth factor evenly distributed over the deployment
@@ -1964,6 +2654,28 @@ module Aws::AppConfig
1964
2654
  # * {Types::DeploymentStrategy#final_bake_time_in_minutes #final_bake_time_in_minutes} => Integer
1965
2655
  # * {Types::DeploymentStrategy#replicate_to #replicate_to} => String
1966
2656
  #
2657
+ #
2658
+ # @example Example: To update a deployment strategy
2659
+ #
2660
+ # # The following update-deployment-strategy example updates final bake time to 20 minutes in the specified deployment
2661
+ # # strategy. ::
2662
+ #
2663
+ # resp = client.update_deployment_strategy({
2664
+ # deployment_strategy_id: "1225qzk",
2665
+ # final_bake_time_in_minutes: 20,
2666
+ # })
2667
+ #
2668
+ # resp.to_h outputs the following:
2669
+ # {
2670
+ # deployment_duration_in_minutes: 15,
2671
+ # final_bake_time_in_minutes: 20,
2672
+ # growth_factor: 25,
2673
+ # growth_type: "LINEAR",
2674
+ # id: "1225qzk",
2675
+ # name: "Example-Deployment",
2676
+ # replicate_to: "SSM_DOCUMENT",
2677
+ # }
2678
+ #
1967
2679
  # @example Request syntax with placeholder values
1968
2680
  #
1969
2681
  # resp = client.update_deployment_strategy({
@@ -2021,6 +2733,26 @@ module Aws::AppConfig
2021
2733
  # * {Types::Environment#state #state} => String
2022
2734
  # * {Types::Environment#monitors #monitors} => Array&lt;Types::Monitor&gt;
2023
2735
  #
2736
+ #
2737
+ # @example Example: To update an environment
2738
+ #
2739
+ # # The following update-environment example updates an environment's description.
2740
+ #
2741
+ # resp = client.update_environment({
2742
+ # application_id: "339ohji",
2743
+ # description: "An environment for examples.",
2744
+ # environment_id: "54j1r29",
2745
+ # })
2746
+ #
2747
+ # resp.to_h outputs the following:
2748
+ # {
2749
+ # application_id: "339ohji",
2750
+ # description: "An environment for examples.",
2751
+ # id: "54j1r29",
2752
+ # name: "Example-Environment",
2753
+ # state: "ROLLED_BACK",
2754
+ # }
2755
+ #
2024
2756
  # @example Request syntax with placeholder values
2025
2757
  #
2026
2758
  # resp = client.update_environment({
@@ -2030,7 +2762,7 @@ module Aws::AppConfig
2030
2762
  # description: "Description",
2031
2763
  # monitors: [
2032
2764
  # {
2033
- # alarm_arn: "Arn",
2765
+ # alarm_arn: "StringWithLengthBetween1And2048", # required
2034
2766
  # alarm_role_arn: "RoleArn",
2035
2767
  # },
2036
2768
  # ],
@@ -2070,6 +2802,17 @@ module Aws::AppConfig
2070
2802
  #
2071
2803
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2072
2804
  #
2805
+ #
2806
+ # @example Example: To validate a configuration
2807
+ #
2808
+ # # The following validate-configuration example uses the validators in a configuration profile to validate a configuration.
2809
+ #
2810
+ # resp = client.validate_configuration({
2811
+ # application_id: "abc1234",
2812
+ # configuration_profile_id: "ur8hx2f",
2813
+ # configuration_version: "1",
2814
+ # })
2815
+ #
2073
2816
  # @example Request syntax with placeholder values
2074
2817
  #
2075
2818
  # resp = client.validate_configuration({
@@ -2100,7 +2843,7 @@ module Aws::AppConfig
2100
2843
  params: params,
2101
2844
  config: config)
2102
2845
  context[:gem_name] = 'aws-sdk-appconfig'
2103
- context[:gem_version] = '1.18.0'
2846
+ context[:gem_version] = '1.22.0'
2104
2847
  Seahorse::Client::Request.new(handlers, context)
2105
2848
  end
2106
2849