aws-sdk-proton 1.13.0 → 1.16.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/checksum_algorithm.rb'
30
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
31
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
32
33
  require 'aws-sdk-core/plugins/signature_v4.rb'
@@ -75,6 +76,7 @@ module Aws::Proton
75
76
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
76
77
  add_plugin(Aws::Plugins::TransferEncoding)
77
78
  add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
78
80
  add_plugin(Aws::Plugins::DefaultsMode)
79
81
  add_plugin(Aws::Plugins::RecursionDetection)
80
82
  add_plugin(Aws::Plugins::SignatureV4)
@@ -387,6 +389,7 @@ module Aws::Proton
387
389
  # @example Response structure
388
390
  #
389
391
  # resp.environment_account_connection.arn #=> String
392
+ # resp.environment_account_connection.component_role_arn #=> String
390
393
  # resp.environment_account_connection.environment_account_id #=> String
391
394
  # resp.environment_account_connection.environment_name #=> String
392
395
  # resp.environment_account_connection.id #=> String
@@ -405,6 +408,54 @@ module Aws::Proton
405
408
  req.send_request(options)
406
409
  end
407
410
 
411
+ # Attempts to cancel a component deployment (for a component that is in
412
+ # the `IN_PROGRESS` deployment status).
413
+ #
414
+ # For more information about components, see [Proton components][1] in
415
+ # the *Proton Administrator Guide*.
416
+ #
417
+ #
418
+ #
419
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
420
+ #
421
+ # @option params [required, String] :component_name
422
+ # The name of the component with the deployment to cancel.
423
+ #
424
+ # @return [Types::CancelComponentDeploymentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
425
+ #
426
+ # * {Types::CancelComponentDeploymentOutput#component #component} => Types::Component
427
+ #
428
+ # @example Request syntax with placeholder values
429
+ #
430
+ # resp = client.cancel_component_deployment({
431
+ # component_name: "ResourceName", # required
432
+ # })
433
+ #
434
+ # @example Response structure
435
+ #
436
+ # resp.component.arn #=> String
437
+ # resp.component.created_at #=> Time
438
+ # resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
439
+ # resp.component.deployment_status_message #=> String
440
+ # resp.component.description #=> String
441
+ # resp.component.environment_name #=> String
442
+ # resp.component.last_deployment_attempted_at #=> Time
443
+ # resp.component.last_deployment_succeeded_at #=> Time
444
+ # resp.component.last_modified_at #=> Time
445
+ # resp.component.name #=> String
446
+ # resp.component.service_instance_name #=> String
447
+ # resp.component.service_name #=> String
448
+ # resp.component.service_spec #=> String
449
+ #
450
+ # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CancelComponentDeployment AWS API Documentation
451
+ #
452
+ # @overload cancel_component_deployment(params = {})
453
+ # @param [Hash] params ({})
454
+ def cancel_component_deployment(params = {}, options = {})
455
+ req = build_request(:cancel_component_deployment, params)
456
+ req.send_request(options)
457
+ end
458
+
408
459
  # Attempts to cancel an environment deployment on an UpdateEnvironment
409
460
  # action, if the deployment is `IN_PROGRESS`. For more information, see
410
461
  # [Update an environment][1] in the *Proton Administrator guide*.
@@ -441,6 +492,7 @@ module Aws::Proton
441
492
  # @example Response structure
442
493
  #
443
494
  # resp.environment.arn #=> String
495
+ # resp.environment.component_role_arn #=> String
444
496
  # resp.environment.created_at #=> Time
445
497
  # resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
446
498
  # resp.environment.deployment_status_message #=> String
@@ -593,25 +645,154 @@ module Aws::Proton
593
645
  req.send_request(options)
594
646
  end
595
647
 
648
+ # Create an Proton component. A component is an infrastructure extension
649
+ # for a service instance.
650
+ #
651
+ # For more information about components, see [Proton components][1] in
652
+ # the *Proton Administrator Guide*.
653
+ #
654
+ #
655
+ #
656
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
657
+ #
658
+ # @option params [String] :description
659
+ # An optional customer-provided description of the component.
660
+ #
661
+ # @option params [String] :environment_name
662
+ # The name of the Proton environment that you want to associate this
663
+ # component with. You must specify this when you don't specify
664
+ # `serviceInstanceName` and `serviceName`.
665
+ #
666
+ # @option params [required, String] :manifest
667
+ # A path to a manifest file that lists the Infrastructure as Code (IaC)
668
+ # file, template language, and rendering engine for infrastructure that
669
+ # a custom component provisions.
670
+ #
671
+ # @option params [required, String] :name
672
+ # The customer-provided name of the component.
673
+ #
674
+ # @option params [String] :service_instance_name
675
+ # The name of the service instance that you want to attach this
676
+ # component to. If you don't specify this, the component isn't
677
+ # attached to any service instance. Specify both `serviceInstanceName`
678
+ # and `serviceName` or neither of them.
679
+ #
680
+ # @option params [String] :service_name
681
+ # The name of the service that `serviceInstanceName` is associated with.
682
+ # If you don't specify this, the component isn't attached to any
683
+ # service instance. Specify both `serviceInstanceName` and `serviceName`
684
+ # or neither of them.
685
+ #
686
+ # @option params [String] :service_spec
687
+ # The service spec that you want the component to use to access service
688
+ # inputs. Set this only when you attach the component to a service
689
+ # instance.
690
+ #
691
+ # @option params [Array<Types::Tag>] :tags
692
+ # An optional list of metadata items that you can associate with the
693
+ # Proton component. A tag is a key-value pair.
694
+ #
695
+ # For more information, see *Proton resources and tagging* in the
696
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
697
+ #
698
+ #
699
+ #
700
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/resources.html
701
+ # [2]: https://docs.aws.amazon.com/proton/latest/userguide/resources.html
702
+ #
703
+ # @option params [required, String] :template_file
704
+ # A path to the Infrastructure as Code (IaC) file describing
705
+ # infrastructure that a custom component provisions.
706
+ #
707
+ # <note markdown="1"> Components support a single IaC file, even if you use Terraform as
708
+ # your template language.
709
+ #
710
+ # </note>
711
+ #
712
+ # @return [Types::CreateComponentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
713
+ #
714
+ # * {Types::CreateComponentOutput#component #component} => Types::Component
715
+ #
716
+ # @example Request syntax with placeholder values
717
+ #
718
+ # resp = client.create_component({
719
+ # description: "Description",
720
+ # environment_name: "ResourceName",
721
+ # manifest: "TemplateManifestContents", # required
722
+ # name: "ResourceName", # required
723
+ # service_instance_name: "ResourceName",
724
+ # service_name: "ResourceName",
725
+ # service_spec: "SpecContents",
726
+ # tags: [
727
+ # {
728
+ # key: "TagKey", # required
729
+ # value: "TagValue", # required
730
+ # },
731
+ # ],
732
+ # template_file: "TemplateFileContents", # required
733
+ # })
734
+ #
735
+ # @example Response structure
736
+ #
737
+ # resp.component.arn #=> String
738
+ # resp.component.created_at #=> Time
739
+ # resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
740
+ # resp.component.deployment_status_message #=> String
741
+ # resp.component.description #=> String
742
+ # resp.component.environment_name #=> String
743
+ # resp.component.last_deployment_attempted_at #=> Time
744
+ # resp.component.last_deployment_succeeded_at #=> Time
745
+ # resp.component.last_modified_at #=> Time
746
+ # resp.component.name #=> String
747
+ # resp.component.service_instance_name #=> String
748
+ # resp.component.service_name #=> String
749
+ # resp.component.service_spec #=> String
750
+ #
751
+ # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateComponent AWS API Documentation
752
+ #
753
+ # @overload create_component(params = {})
754
+ # @param [Hash] params ({})
755
+ def create_component(params = {}, options = {})
756
+ req = build_request(:create_component, params)
757
+ req.send_request(options)
758
+ end
759
+
596
760
  # Deploy a new environment. An Proton environment is created from an
597
761
  # environment template that defines infrastructure and resources that
598
762
  # can be shared across services.
599
763
  #
600
764
  # **You can provision environments using the following methods:**
601
765
  #
602
- # * Standard provisioning: Proton makes direct calls to provision your
603
- # resources.
766
+ # * Amazon Web Services-managed provisioning: Proton makes direct calls
767
+ # to provision your resources.
604
768
  #
605
- # * Pull request provisioning: Proton makes pull requests on your
769
+ # * Self-managed provisioning: Proton makes pull requests on your
606
770
  # repository to provide compiled infrastructure as code (IaC) files
607
771
  # that your IaC engine uses to provision resources.
608
772
  #
609
- # For more information, see the [Environments][1] in the *Proton
610
- # Administrator Guide.*
773
+ # For more information, see [Environments][1] and [Provisioning
774
+ # methods][2] in the *Proton Administrator Guide*.
611
775
  #
612
776
  #
613
777
  #
614
778
  # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-environments.html
779
+ # [2]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-works-prov-methods.html
780
+ #
781
+ # @option params [String] :component_role_arn
782
+ # The Amazon Resource Name (ARN) of the IAM service role that Proton
783
+ # uses when provisioning directly defined components in this
784
+ # environment. It determines the scope of infrastructure that a
785
+ # component can provision.
786
+ #
787
+ # You must specify `componentRoleArn` to allow directly defined
788
+ # components to be associated with this environment.
789
+ #
790
+ # For more information about components, see [Proton components][1] in
791
+ # the *Proton Administrator Guide*.
792
+ #
793
+ #
794
+ #
795
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
615
796
  #
616
797
  # @option params [String] :description
617
798
  # A description of the environment that's being created and deployed.
@@ -619,11 +800,13 @@ module Aws::Proton
619
800
  # @option params [String] :environment_account_connection_id
620
801
  # The ID of the environment account connection that you provide if
621
802
  # you're provisioning your environment infrastructure resources to an
622
- # environment account. You must include either the
623
- # `environmentAccountConnectionId` or `protonServiceRoleArn` parameter
624
- # and value and omit the `provisioningRepository` parameter and values.
625
- # For more information, see [Environment account connections][1] in the
626
- # *Proton Administrator guide*.
803
+ # environment account. For more information, see [Environment account
804
+ # connections][1] in the *Proton Administrator guide*.
805
+ #
806
+ # To use Amazon Web Services-managed provisioning for the environment,
807
+ # specify either the `environmentAccountConnectionId` or
808
+ # `protonServiceRoleArn` parameter and omit the `provisioningRepository`
809
+ # parameter.
627
810
  #
628
811
  #
629
812
  #
@@ -634,39 +817,36 @@ module Aws::Proton
634
817
  #
635
818
  # @option params [String] :proton_service_role_arn
636
819
  # The Amazon Resource Name (ARN) of the Proton service role that allows
637
- # Proton to make calls to other services on your behalf. You must
638
- # include either the `environmentAccountConnectionId` or
639
- # `protonServiceRoleArn` parameter and value and omit the
640
- # `provisioningRepository` parameter when you use standard provisioning.
641
- #
642
- # @option params [Types::RepositoryBranchInput] :provisioning_repository
643
- # The repository that you provide with pull request provisioning. If you
644
- # provide this parameter, you must omit the
645
- # `environmentAccountConnectionId` and `protonServiceRoleArn`
646
- # parameters.
647
- #
648
- # Provisioning by pull request is currently in feature preview and is
649
- # only usable with Terraform based Proton Templates. To learn more about
650
- # [Amazon Web Services Feature Preview terms][1], see section 2 on Beta
651
- # and Previews.
820
+ # Proton to make calls to other services on your behalf.
652
821
  #
822
+ # To use Amazon Web Services-managed provisioning for the environment,
823
+ # specify either the `environmentAccountConnectionId` or
824
+ # `protonServiceRoleArn` parameter and omit the `provisioningRepository`
825
+ # parameter.
653
826
  #
827
+ # @option params [Types::RepositoryBranchInput] :provisioning_repository
828
+ # The infrastructure repository that you use to host your rendered
829
+ # infrastructure templates for self-managed provisioning.
654
830
  #
655
- # [1]: https://aws.amazon.com/service-terms
831
+ # To use self-managed provisioning for the environment, specify this
832
+ # parameter and omit the `environmentAccountConnectionId` and
833
+ # `protonServiceRoleArn` parameters.
656
834
  #
657
835
  # @option params [required, String] :spec
658
- # A link to a YAML formatted spec file that provides inputs as defined
659
- # in the environment template bundle schema file. For more information,
660
- # see [Environments][1] in the *Proton Administrator Guide*.
836
+ # A YAML formatted string that provides inputs as defined in the
837
+ # environment template bundle schema file. For more information, see
838
+ # [Environments][1] in the *Proton Administrator Guide*.
661
839
  #
662
840
  #
663
841
  #
664
842
  # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-environments.html
665
843
  #
666
844
  # @option params [Array<Types::Tag>] :tags
667
- # Create tags for your environment. For more information, see *Proton
668
- # resources and tagging* in the [Proton Administrator Guide][1] or
669
- # [Proton User Guide][2].
845
+ # An optional list of metadata items that you can associate with the
846
+ # Proton environment. A tag is a key-value pair.
847
+ #
848
+ # For more information, see *Proton resources and tagging* in the
849
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
670
850
  #
671
851
  #
672
852
  #
@@ -694,6 +874,7 @@ module Aws::Proton
694
874
  # @example Request syntax with placeholder values
695
875
  #
696
876
  # resp = client.create_environment({
877
+ # component_role_arn: "Arn",
697
878
  # description: "Description",
698
879
  # environment_account_connection_id: "EnvironmentAccountConnectionId",
699
880
  # name: "ResourceName", # required
@@ -718,6 +899,7 @@ module Aws::Proton
718
899
  # @example Response structure
719
900
  #
720
901
  # resp.environment.arn #=> String
902
+ # resp.environment.component_role_arn #=> String
721
903
  # resp.environment.created_at #=> Time
722
904
  # resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
723
905
  # resp.environment.deployment_status_message #=> String
@@ -769,13 +951,30 @@ module Aws::Proton
769
951
  # **A suitable default value is auto-generated.** You should normally
770
952
  # not need to pass this option.**
771
953
  #
954
+ # @option params [String] :component_role_arn
955
+ # The Amazon Resource Name (ARN) of the IAM service role that Proton
956
+ # uses when provisioning directly defined components in the associated
957
+ # environment account. It determines the scope of infrastructure that a
958
+ # component can provision in the account.
959
+ #
960
+ # You must specify `componentRoleArn` to allow directly defined
961
+ # components to be associated with any environments running in this
962
+ # account.
963
+ #
964
+ # For more information about components, see [Proton components][1] in
965
+ # the *Proton Administrator Guide*.
966
+ #
967
+ #
968
+ #
969
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
970
+ #
772
971
  # @option params [required, String] :environment_name
773
972
  # The name of the Proton environment that's created in the associated
774
973
  # management account.
775
974
  #
776
975
  # @option params [required, String] :management_account_id
777
976
  # The ID of the management account that accepts or rejects the
778
- # environment account connection. You create an manage the Proton
977
+ # environment account connection. You create and manage the Proton
779
978
  # environment in this account. If the management account accepts the
780
979
  # environment account connection, Proton can use the associated IAM role
781
980
  # to provision environment infrastructure resources in the associated
@@ -787,9 +986,11 @@ module Aws::Proton
787
986
  # infrastructure resources in the associated environment account.
788
987
  #
789
988
  # @option params [Array<Types::Tag>] :tags
790
- # Tags for your environment account connection. For more information,
791
- # see [Proton resources and tagging][1] in the *Proton Administrator
792
- # Guide*.
989
+ # An optional list of metadata items that you can associate with the
990
+ # Proton environment account connection. A tag is a key-value pair.
991
+ #
992
+ # For more information, see [Proton resources and tagging][1] in the
993
+ # *Proton Administrator Guide*.
793
994
  #
794
995
  #
795
996
  #
@@ -803,6 +1004,7 @@ module Aws::Proton
803
1004
  #
804
1005
  # resp = client.create_environment_account_connection({
805
1006
  # client_token: "ClientToken",
1007
+ # component_role_arn: "Arn",
806
1008
  # environment_name: "ResourceName", # required
807
1009
  # management_account_id: "AwsAccountId", # required
808
1010
  # role_arn: "Arn", # required
@@ -817,6 +1019,7 @@ module Aws::Proton
817
1019
  # @example Response structure
818
1020
  #
819
1021
  # resp.environment_account_connection.arn #=> String
1022
+ # resp.environment_account_connection.component_role_arn #=> String
820
1023
  # resp.environment_account_connection.environment_account_id #=> String
821
1024
  # resp.environment_account_connection.environment_name #=> String
822
1025
  # resp.environment_account_connection.id #=> String
@@ -875,9 +1078,11 @@ module Aws::Proton
875
1078
  # provisioned and managed infrastructure.
876
1079
  #
877
1080
  # @option params [Array<Types::Tag>] :tags
878
- # Create tags for your environment template. For more information, see
879
- # *Proton resources and tagging* in the [Proton Administrator Guide][1]
880
- # or [Proton User Guide][2].
1081
+ # An optional list of metadata items that you can associate with the
1082
+ # Proton environment template. A tag is a key-value pair.
1083
+ #
1084
+ # For more information, see *Proton resources and tagging* in the
1085
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
881
1086
  #
882
1087
  #
883
1088
  #
@@ -942,18 +1147,27 @@ module Aws::Proton
942
1147
  # A description of the new version of an environment template.
943
1148
  #
944
1149
  # @option params [String] :major_version
945
- # To create a new minor version of the environment template, include a
1150
+ # To create a new minor version of the environment template, include
946
1151
  # `major Version`.
947
1152
  #
948
1153
  # To create a new major and minor version of the environment template,
949
- # *exclude* `major Version`.
1154
+ # exclude `major Version`.
950
1155
  #
951
1156
  # @option params [required, Types::TemplateVersionSourceInput] :source
952
1157
  # An object that includes the template bundle S3 bucket path and name
953
1158
  # for the new version of an template.
954
1159
  #
955
1160
  # @option params [Array<Types::Tag>] :tags
956
- # Create tags for a new version of an environment template.
1161
+ # An optional list of metadata items that you can associate with the
1162
+ # Proton environment template version. A tag is a key-value pair.
1163
+ #
1164
+ # For more information, see *Proton resources and tagging* in the
1165
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
1166
+ #
1167
+ #
1168
+ #
1169
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/resources.html
1170
+ # [2]: https://docs.aws.amazon.com/proton/latest/userguide/resources.html
957
1171
  #
958
1172
  # @option params [required, String] :template_name
959
1173
  # The name of the environment template.
@@ -1006,15 +1220,21 @@ module Aws::Proton
1006
1220
  req.send_request(options)
1007
1221
  end
1008
1222
 
1009
- # Create and register a link to a repository that can be used with pull
1010
- # request provisioning or template sync configurations. For more
1011
- # information, see [Template bundles][1] and [Template sync
1012
- # configurations][2] in the *Proton Administrator Guide*.
1223
+ # Create and register a link to a repository that can be used with
1224
+ # self-managed provisioning (infrastructure or pipelines) or for
1225
+ # template sync configurations. When you create a repository link,
1226
+ # Proton creates a [service-linked role][1] for you.
1013
1227
  #
1228
+ # For more information, see [Self-managed provisioning][2], [Template
1229
+ # bundles][3], and [Template sync configurations][4] in the *Proton
1230
+ # Administrator Guide*.
1014
1231
  #
1015
1232
  #
1016
- # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-template-bundles.html
1017
- # [2]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-template-sync-configs.html
1233
+ #
1234
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/using-service-linked-roles.html
1235
+ # [2]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-works-prov-methods.html#ag-works-prov-methods-self
1236
+ # [3]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-template-bundles.html
1237
+ # [4]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-template-sync-configs.html
1018
1238
  #
1019
1239
  # @option params [required, String] :connection_arn
1020
1240
  # The Amazon Resource Name (ARN) of your Amazon Web Services CodeStar
@@ -1023,18 +1243,30 @@ module Aws::Proton
1023
1243
  #
1024
1244
  #
1025
1245
  #
1026
- # [1]: https://docs.aws.amazon.com/setting-up-for-service
1246
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/setting-up-for-service.html
1027
1247
  #
1028
1248
  # @option params [String] :encryption_key
1029
1249
  # The ARN of your customer Amazon Web Services Key Management Service
1030
1250
  # (Amazon Web Services KMS) key.
1031
1251
  #
1032
1252
  # @option params [required, String] :name
1033
- # The repository name, for example `myrepos/myrepo`.
1253
+ # The repository name (for example, `myrepos/myrepo`).
1034
1254
  #
1035
1255
  # @option params [required, String] :provider
1036
1256
  # The repository provider.
1037
1257
  #
1258
+ # @option params [Array<Types::Tag>] :tags
1259
+ # An optional list of metadata items that you can associate with the
1260
+ # Proton repository. A tag is a key-value pair.
1261
+ #
1262
+ # For more information, see *Proton resources and tagging* in the
1263
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
1264
+ #
1265
+ #
1266
+ #
1267
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/resources.html
1268
+ # [2]: https://docs.aws.amazon.com/proton/latest/userguide/resources.html
1269
+ #
1038
1270
  # @return [Types::CreateRepositoryOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1039
1271
  #
1040
1272
  # * {Types::CreateRepositoryOutput#repository #repository} => Types::Repository
@@ -1046,6 +1278,12 @@ module Aws::Proton
1046
1278
  # encryption_key: "Arn",
1047
1279
  # name: "RepositoryName", # required
1048
1280
  # provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
1281
+ # tags: [
1282
+ # {
1283
+ # key: "TagKey", # required
1284
+ # value: "TagValue", # required
1285
+ # },
1286
+ # ],
1049
1287
  # })
1050
1288
  #
1051
1289
  # @example Response structure
@@ -1104,7 +1342,7 @@ module Aws::Proton
1104
1342
  #
1105
1343
  # @option params [required, String] :spec
1106
1344
  # A link to a spec file that provides inputs as defined in the service
1107
- # template bundle schema file. The spec file is in YAML format. Don’t
1345
+ # template bundle schema file. The spec file is in YAML format. *Don’t*
1108
1346
  # include pipeline inputs in the spec if your service template *doesn’t*
1109
1347
  # include a service pipeline. For more information, see [Create a
1110
1348
  # service][1] in the *Proton Administrator Guide* and [Create a
@@ -1116,9 +1354,11 @@ module Aws::Proton
1116
1354
  # [2]: https://docs.aws.amazon.com/proton/latest/userguide/ug-svc-create.html
1117
1355
  #
1118
1356
  # @option params [Array<Types::Tag>] :tags
1119
- # Create tags for your service. For more information, see *Proton
1120
- # resources and tagging* in the [Proton Administrator Guide][1] or
1121
- # [Proton User Guide][2].
1357
+ # An optional list of metadata items that you can associate with the
1358
+ # Proton service. A tag is a key-value pair.
1359
+ #
1360
+ # For more information, see *Proton resources and tagging* in the
1361
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
1122
1362
  #
1123
1363
  #
1124
1364
  #
@@ -1195,7 +1435,7 @@ module Aws::Proton
1195
1435
  end
1196
1436
 
1197
1437
  # Create a service template. The administrator creates a service
1198
- # template to define standardized infrastructure and an optional CICD
1438
+ # template to define standardized infrastructure and an optional CI/CD
1199
1439
  # service pipeline. Developers, in turn, select the service template
1200
1440
  # from Proton. If the selected service template includes a service
1201
1441
  # pipeline definition, they provide a link to their source code
@@ -1221,9 +1461,9 @@ module Aws::Proton
1221
1461
  # The name of the service template.
1222
1462
  #
1223
1463
  # @option params [String] :pipeline_provisioning
1224
- # Proton includes a service pipeline for your service by default. When
1225
- # included, this parameter indicates that an Proton service pipeline
1226
- # *won't* be included for your service. Once specified, this parameter
1464
+ # By default, Proton provides a service pipeline for your service. When
1465
+ # this parameter is included, it indicates that an Proton service
1466
+ # pipeline *isn't* provided for your service. After it's included, it
1227
1467
  # *can't* be changed. For more information, see [Service template
1228
1468
  # bundles][1] in the *Proton Administrator Guide*.
1229
1469
  #
@@ -1232,9 +1472,11 @@ module Aws::Proton
1232
1472
  # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-template-bundles.html
1233
1473
  #
1234
1474
  # @option params [Array<Types::Tag>] :tags
1235
- # Create tags for your service template. For more information, see
1236
- # *Proton resources and tagging* in the [Proton Administrator Guide][1]
1237
- # or [Proton User Guide][2].
1475
+ # An optional list of metadata items that you can associate with the
1476
+ # Proton service template. A tag is a key-value pair.
1477
+ #
1478
+ # For more information, see *Proton resources and tagging* in the
1479
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
1238
1480
  #
1239
1481
  #
1240
1482
  #
@@ -1296,8 +1538,10 @@ module Aws::Proton
1296
1538
  # not need to pass this option.**
1297
1539
  #
1298
1540
  # @option params [required, Array<Types::CompatibleEnvironmentTemplateInput>] :compatible_environment_templates
1299
- # An array of compatible environment template objects for the new
1300
- # version of a service template.
1541
+ # An array of environment template objects that are compatible with the
1542
+ # new service template version. A service instance based on this service
1543
+ # template version can run in environments based on compatible
1544
+ # templates.
1301
1545
  #
1302
1546
  # @option params [String] :description
1303
1547
  # A description of the new version of a service template.
@@ -1313,8 +1557,29 @@ module Aws::Proton
1313
1557
  # An object that includes the template bundle S3 bucket path and name
1314
1558
  # for the new version of a service template.
1315
1559
  #
1560
+ # @option params [Array<String>] :supported_component_sources
1561
+ # An array of supported component sources. Components with supported
1562
+ # sources can be attached to service instances based on this service
1563
+ # template version.
1564
+ #
1565
+ # For more information about components, see [Proton components][1] in
1566
+ # the *Proton Administrator Guide*.
1567
+ #
1568
+ #
1569
+ #
1570
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
1571
+ #
1316
1572
  # @option params [Array<Types::Tag>] :tags
1317
- # Create tags for a new version of a service template.
1573
+ # An optional list of metadata items that you can associate with the
1574
+ # Proton service template version. A tag is a key-value pair.
1575
+ #
1576
+ # For more information, see *Proton resources and tagging* in the
1577
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
1578
+ #
1579
+ #
1580
+ #
1581
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/resources.html
1582
+ # [2]: https://docs.aws.amazon.com/proton/latest/userguide/resources.html
1318
1583
  #
1319
1584
  # @option params [required, String] :template_name
1320
1585
  # The name of the service template.
@@ -1341,6 +1606,7 @@ module Aws::Proton
1341
1606
  # key: "S3Key", # required
1342
1607
  # },
1343
1608
  # },
1609
+ # supported_component_sources: ["DIRECTLY_DEFINED"], # accepts DIRECTLY_DEFINED
1344
1610
  # tags: [
1345
1611
  # {
1346
1612
  # key: "TagKey", # required
@@ -1365,6 +1631,8 @@ module Aws::Proton
1365
1631
  # resp.service_template_version.schema #=> String
1366
1632
  # resp.service_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
1367
1633
  # resp.service_template_version.status_message #=> String
1634
+ # resp.service_template_version.supported_component_sources #=> Array
1635
+ # resp.service_template_version.supported_component_sources[0] #=> String, one of "DIRECTLY_DEFINED"
1368
1636
  # resp.service_template_version.template_name #=> String
1369
1637
  #
1370
1638
  # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateServiceTemplateVersion AWS API Documentation
@@ -1376,13 +1644,13 @@ module Aws::Proton
1376
1644
  req.send_request(options)
1377
1645
  end
1378
1646
 
1379
- # Set up a template for automated template version creation. When a
1380
- # commit is pushed to your registered [repository][1], Proton checks for
1381
- # changes to your repository template bundles. If it detects a template
1382
- # bundle change, a new minor or major version of its template is
1383
- # created, if the version doesn’t already exist. For more information,
1384
- # see [Template sync configurations][2] in the *Proton Administrator
1385
- # Guide*.
1647
+ # Set up a template to create new template versions automatically. When
1648
+ # a commit is pushed to your registered [repository][1], Proton checks
1649
+ # for changes to your repository template bundles. If it detects a
1650
+ # template bundle change, a new major or minor version of its template
1651
+ # is created, if the version doesn’t already exist. For more
1652
+ # information, see [Template sync configurations][2] in the *Proton
1653
+ # Administrator Guide*.
1386
1654
  #
1387
1655
  #
1388
1656
  #
@@ -1393,7 +1661,7 @@ module Aws::Proton
1393
1661
  # The branch of the registered repository for your template.
1394
1662
  #
1395
1663
  # @option params [required, String] :repository_name
1396
- # The name of your repository, for example `myrepos/myrepo`.
1664
+ # The name of your repository (for example, `myrepos/myrepo`).
1397
1665
  #
1398
1666
  # @option params [required, String] :repository_provider
1399
1667
  # The provider type for your repository.
@@ -1442,6 +1710,53 @@ module Aws::Proton
1442
1710
  req.send_request(options)
1443
1711
  end
1444
1712
 
1713
+ # Delete an Proton component resource.
1714
+ #
1715
+ # For more information about components, see [Proton components][1] in
1716
+ # the *Proton Administrator Guide*.
1717
+ #
1718
+ #
1719
+ #
1720
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
1721
+ #
1722
+ # @option params [required, String] :name
1723
+ # The name of the component to delete.
1724
+ #
1725
+ # @return [Types::DeleteComponentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1726
+ #
1727
+ # * {Types::DeleteComponentOutput#component #component} => Types::Component
1728
+ #
1729
+ # @example Request syntax with placeholder values
1730
+ #
1731
+ # resp = client.delete_component({
1732
+ # name: "ResourceName", # required
1733
+ # })
1734
+ #
1735
+ # @example Response structure
1736
+ #
1737
+ # resp.component.arn #=> String
1738
+ # resp.component.created_at #=> Time
1739
+ # resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
1740
+ # resp.component.deployment_status_message #=> String
1741
+ # resp.component.description #=> String
1742
+ # resp.component.environment_name #=> String
1743
+ # resp.component.last_deployment_attempted_at #=> Time
1744
+ # resp.component.last_deployment_succeeded_at #=> Time
1745
+ # resp.component.last_modified_at #=> Time
1746
+ # resp.component.name #=> String
1747
+ # resp.component.service_instance_name #=> String
1748
+ # resp.component.service_name #=> String
1749
+ # resp.component.service_spec #=> String
1750
+ #
1751
+ # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteComponent AWS API Documentation
1752
+ #
1753
+ # @overload delete_component(params = {})
1754
+ # @param [Hash] params ({})
1755
+ def delete_component(params = {}, options = {})
1756
+ req = build_request(:delete_component, params)
1757
+ req.send_request(options)
1758
+ end
1759
+
1445
1760
  # Delete an environment.
1446
1761
  #
1447
1762
  # @option params [required, String] :name
@@ -1460,6 +1775,7 @@ module Aws::Proton
1460
1775
  # @example Response structure
1461
1776
  #
1462
1777
  # resp.environment.arn #=> String
1778
+ # resp.environment.component_role_arn #=> String
1463
1779
  # resp.environment.created_at #=> Time
1464
1780
  # resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
1465
1781
  # resp.environment.deployment_status_message #=> String
@@ -1521,6 +1837,7 @@ module Aws::Proton
1521
1837
  # @example Response structure
1522
1838
  #
1523
1839
  # resp.environment_account_connection.arn #=> String
1840
+ # resp.environment_account_connection.component_role_arn #=> String
1524
1841
  # resp.environment_account_connection.environment_account_id #=> String
1525
1842
  # resp.environment_account_connection.environment_name #=> String
1526
1843
  # resp.environment_account_connection.id #=> String
@@ -1669,7 +1986,19 @@ module Aws::Proton
1669
1986
  req.send_request(options)
1670
1987
  end
1671
1988
 
1672
- # Delete a service.
1989
+ # Delete a service, with its instances and pipeline.
1990
+ #
1991
+ # <note markdown="1"> You can't delete a service if it has any service instances that have
1992
+ # components attached to them.
1993
+ #
1994
+ # For more information about components, see [Proton components][1] in
1995
+ # the *Proton Administrator Guide*.
1996
+ #
1997
+ # </note>
1998
+ #
1999
+ #
2000
+ #
2001
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
1673
2002
  #
1674
2003
  # @option params [required, String] :name
1675
2004
  # The name of the service to delete.
@@ -1804,6 +2133,8 @@ module Aws::Proton
1804
2133
  # resp.service_template_version.schema #=> String
1805
2134
  # resp.service_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
1806
2135
  # resp.service_template_version.status_message #=> String
2136
+ # resp.service_template_version.supported_component_sources #=> Array
2137
+ # resp.service_template_version.supported_component_sources[0] #=> String, one of "DIRECTLY_DEFINED"
1807
2138
  # resp.service_template_version.template_name #=> String
1808
2139
  #
1809
2140
  # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/DeleteServiceTemplateVersion AWS API Documentation
@@ -1875,10 +2206,64 @@ module Aws::Proton
1875
2206
  req.send_request(options)
1876
2207
  end
1877
2208
 
1878
- # Get detail data for an environment.
2209
+ # Get detailed data for a component.
2210
+ #
2211
+ # For more information about components, see [Proton components][1] in
2212
+ # the *Proton Administrator Guide*.
2213
+ #
2214
+ #
2215
+ #
2216
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
2217
+ #
2218
+ # @option params [required, String] :name
2219
+ # The name of the component that you want to get the detailed data for.
2220
+ #
2221
+ # @return [Types::GetComponentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2222
+ #
2223
+ # * {Types::GetComponentOutput#component #component} => Types::Component
2224
+ #
2225
+ # @example Request syntax with placeholder values
2226
+ #
2227
+ # resp = client.get_component({
2228
+ # name: "ResourceName", # required
2229
+ # })
2230
+ #
2231
+ # @example Response structure
2232
+ #
2233
+ # resp.component.arn #=> String
2234
+ # resp.component.created_at #=> Time
2235
+ # resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
2236
+ # resp.component.deployment_status_message #=> String
2237
+ # resp.component.description #=> String
2238
+ # resp.component.environment_name #=> String
2239
+ # resp.component.last_deployment_attempted_at #=> Time
2240
+ # resp.component.last_deployment_succeeded_at #=> Time
2241
+ # resp.component.last_modified_at #=> Time
2242
+ # resp.component.name #=> String
2243
+ # resp.component.service_instance_name #=> String
2244
+ # resp.component.service_name #=> String
2245
+ # resp.component.service_spec #=> String
2246
+ #
2247
+ #
2248
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2249
+ #
2250
+ # * component_deleted
2251
+ # * component_deployed
2252
+ #
2253
+ # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/GetComponent AWS API Documentation
2254
+ #
2255
+ # @overload get_component(params = {})
2256
+ # @param [Hash] params ({})
2257
+ def get_component(params = {}, options = {})
2258
+ req = build_request(:get_component, params)
2259
+ req.send_request(options)
2260
+ end
2261
+
2262
+ # Get detailed data for an environment.
1879
2263
  #
1880
2264
  # @option params [required, String] :name
1881
- # The name of the environment that you want to get the detail data for.
2265
+ # The name of the environment that you want to get the detailed data
2266
+ # for.
1882
2267
  #
1883
2268
  # @return [Types::GetEnvironmentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1884
2269
  #
@@ -1893,6 +2278,7 @@ module Aws::Proton
1893
2278
  # @example Response structure
1894
2279
  #
1895
2280
  # resp.environment.arn #=> String
2281
+ # resp.environment.component_role_arn #=> String
1896
2282
  # resp.environment.created_at #=> Time
1897
2283
  # resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
1898
2284
  # resp.environment.deployment_status_message #=> String
@@ -1927,7 +2313,7 @@ module Aws::Proton
1927
2313
  req.send_request(options)
1928
2314
  end
1929
2315
 
1930
- # In an environment account, view the detail data for an environment
2316
+ # In an environment account, get the detailed data for an environment
1931
2317
  # account connection.
1932
2318
  #
1933
2319
  # For more information, see [Environment account connections][1] in the
@@ -1938,7 +2324,8 @@ module Aws::Proton
1938
2324
  # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-env-account-connections.html
1939
2325
  #
1940
2326
  # @option params [required, String] :id
1941
- # The ID of the environment account connection.
2327
+ # The ID of the environment account connection that you want to get the
2328
+ # detailed data for.
1942
2329
  #
1943
2330
  # @return [Types::GetEnvironmentAccountConnectionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1944
2331
  #
@@ -1953,6 +2340,7 @@ module Aws::Proton
1953
2340
  # @example Response structure
1954
2341
  #
1955
2342
  # resp.environment_account_connection.arn #=> String
2343
+ # resp.environment_account_connection.component_role_arn #=> String
1956
2344
  # resp.environment_account_connection.environment_account_id #=> String
1957
2345
  # resp.environment_account_connection.environment_name #=> String
1958
2346
  # resp.environment_account_connection.id #=> String
@@ -1971,10 +2359,10 @@ module Aws::Proton
1971
2359
  req.send_request(options)
1972
2360
  end
1973
2361
 
1974
- # Get detail data for an environment template.
2362
+ # Get detailed data for an environment template.
1975
2363
  #
1976
2364
  # @option params [required, String] :name
1977
- # The name of the environment template that you want to get the detail
2365
+ # The name of the environment template that you want to get the detailed
1978
2366
  # data for.
1979
2367
  #
1980
2368
  # @return [Types::GetEnvironmentTemplateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2008,19 +2396,20 @@ module Aws::Proton
2008
2396
  req.send_request(options)
2009
2397
  end
2010
2398
 
2011
- # View detail data for a major or minor version of an environment
2399
+ # Get detailed data for a major or minor version of an environment
2012
2400
  # template.
2013
2401
  #
2014
2402
  # @option params [required, String] :major_version
2015
- # To view environment template major version detail data, include `major
2403
+ # To get environment template major version detail data, include `major
2016
2404
  # Version`.
2017
2405
  #
2018
2406
  # @option params [required, String] :minor_version
2019
- # To view environment template minor version detail data, include
2407
+ # To get environment template minor version detail data, include
2020
2408
  # `minorVersion`.
2021
2409
  #
2022
2410
  # @option params [required, String] :template_name
2023
- # The name of the environment template.
2411
+ # The name of the environment template a version of which you want to
2412
+ # get detailed data for..
2024
2413
  #
2025
2414
  # @return [Types::GetEnvironmentTemplateVersionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2026
2415
  #
@@ -2098,7 +2487,23 @@ module Aws::Proton
2098
2487
  req.send_request(options)
2099
2488
  end
2100
2489
 
2101
- # Get the repository sync status.
2490
+ # Get the sync status of a repository used for Proton template sync. For
2491
+ # more information about template sync, see .
2492
+ #
2493
+ # <note markdown="1"> A repository sync status isn't tied to the Proton Repository resource
2494
+ # (or any other Proton resource). Therefore, tags on an Proton
2495
+ # Repository resource have no effect on this action. Specifically, you
2496
+ # can't use these tags to control access to this action using
2497
+ # Attribute-based access control (ABAC).
2498
+ #
2499
+ # For more information about ABAC, see [ABAC][1] in the *Proton
2500
+ # Administrator Guide*.
2501
+ #
2502
+ # </note>
2503
+ #
2504
+ #
2505
+ #
2506
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/security_iam_service-with-iam.html#security_iam_service-with-iam-tags
2102
2507
  #
2103
2508
  # @option params [required, String] :branch
2104
2509
  # The repository branch.
@@ -2144,10 +2549,10 @@ module Aws::Proton
2144
2549
  req.send_request(options)
2145
2550
  end
2146
2551
 
2147
- # Get detail data for a service.
2552
+ # Get detailed data for a service.
2148
2553
  #
2149
2554
  # @option params [required, String] :name
2150
- # The name of the service that you want to get the detail data for.
2555
+ # The name of the service that you want to get the detailed data for.
2151
2556
  #
2152
2557
  # @return [Types::GetServiceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2153
2558
  #
@@ -2201,12 +2606,12 @@ module Aws::Proton
2201
2606
  req.send_request(options)
2202
2607
  end
2203
2608
 
2204
- # Get detail data for a service instance. A service instance is an
2205
- # instantiation of service template, which is running in a specific
2609
+ # Get detailed data for a service instance. A service instance is an
2610
+ # instantiation of service template and it runs in a specific
2206
2611
  # environment.
2207
2612
  #
2208
2613
  # @option params [required, String] :name
2209
- # The name of a service instance that you want to get the detail data
2614
+ # The name of a service instance that you want to get the detailed data
2210
2615
  # for.
2211
2616
  #
2212
2617
  # @option params [required, String] :service_name
@@ -2253,10 +2658,11 @@ module Aws::Proton
2253
2658
  req.send_request(options)
2254
2659
  end
2255
2660
 
2256
- # Get detail data for a service template.
2661
+ # Get detailed data for a service template.
2257
2662
  #
2258
2663
  # @option params [required, String] :name
2259
- # The name of the service template that you want to get detail data for.
2664
+ # The name of the service template that you want to get detailed data
2665
+ # for.
2260
2666
  #
2261
2667
  # @return [Types::GetServiceTemplateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2262
2668
  #
@@ -2289,18 +2695,19 @@ module Aws::Proton
2289
2695
  req.send_request(options)
2290
2696
  end
2291
2697
 
2292
- # View detail data for a major or minor version of a service template.
2698
+ # Get detailed data for a major or minor version of a service template.
2293
2699
  #
2294
2700
  # @option params [required, String] :major_version
2295
- # To view service template major version detail data, include `major
2701
+ # To get service template major version detail data, include `major
2296
2702
  # Version`.
2297
2703
  #
2298
2704
  # @option params [required, String] :minor_version
2299
- # To view service template minor version detail data, include
2705
+ # To get service template minor version detail data, include
2300
2706
  # `minorVersion`.
2301
2707
  #
2302
2708
  # @option params [required, String] :template_name
2303
- # The name of the service template.
2709
+ # The name of the service template a version of which you want to get
2710
+ # detailed data for.
2304
2711
  #
2305
2712
  # @return [Types::GetServiceTemplateVersionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2306
2713
  #
@@ -2329,6 +2736,8 @@ module Aws::Proton
2329
2736
  # resp.service_template_version.schema #=> String
2330
2737
  # resp.service_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
2331
2738
  # resp.service_template_version.status_message #=> String
2739
+ # resp.service_template_version.supported_component_sources #=> Array
2740
+ # resp.service_template_version.supported_component_sources[0] #=> String, one of "DIRECTLY_DEFINED"
2332
2741
  # resp.service_template_version.template_name #=> String
2333
2742
  #
2334
2743
  #
@@ -2391,7 +2800,7 @@ module Aws::Proton
2391
2800
  # The template type.
2392
2801
  #
2393
2802
  # @option params [required, String] :template_version
2394
- # The template version.
2803
+ # The template major version.
2395
2804
  #
2396
2805
  # @return [Types::GetTemplateSyncStatusOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2397
2806
  #
@@ -2460,6 +2869,173 @@ module Aws::Proton
2460
2869
  req.send_request(options)
2461
2870
  end
2462
2871
 
2872
+ # Get a list of component Infrastructure as Code (IaC) outputs.
2873
+ #
2874
+ # For more information about components, see [Proton components][1] in
2875
+ # the *Proton Administrator Guide*.
2876
+ #
2877
+ #
2878
+ #
2879
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
2880
+ #
2881
+ # @option params [required, String] :component_name
2882
+ # The name of the component whose outputs you want.
2883
+ #
2884
+ # @option params [String] :next_token
2885
+ # A token that indicates the location of the next output in the array of
2886
+ # outputs, after the list of outputs that was previously requested.
2887
+ #
2888
+ # @return [Types::ListComponentOutputsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2889
+ #
2890
+ # * {Types::ListComponentOutputsOutput#next_token #next_token} => String
2891
+ # * {Types::ListComponentOutputsOutput#outputs #outputs} => Array&lt;Types::Output&gt;
2892
+ #
2893
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2894
+ #
2895
+ # @example Request syntax with placeholder values
2896
+ #
2897
+ # resp = client.list_component_outputs({
2898
+ # component_name: "ResourceName", # required
2899
+ # next_token: "EmptyNextToken",
2900
+ # })
2901
+ #
2902
+ # @example Response structure
2903
+ #
2904
+ # resp.next_token #=> String
2905
+ # resp.outputs #=> Array
2906
+ # resp.outputs[0].key #=> String
2907
+ # resp.outputs[0].value_string #=> String
2908
+ #
2909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListComponentOutputs AWS API Documentation
2910
+ #
2911
+ # @overload list_component_outputs(params = {})
2912
+ # @param [Hash] params ({})
2913
+ def list_component_outputs(params = {}, options = {})
2914
+ req = build_request(:list_component_outputs, params)
2915
+ req.send_request(options)
2916
+ end
2917
+
2918
+ # List provisioned resources for a component with details.
2919
+ #
2920
+ # For more information about components, see [Proton components][1] in
2921
+ # the *Proton Administrator Guide*.
2922
+ #
2923
+ #
2924
+ #
2925
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
2926
+ #
2927
+ # @option params [required, String] :component_name
2928
+ # The name of the component whose provisioned resources you want.
2929
+ #
2930
+ # @option params [String] :next_token
2931
+ # A token that indicates the location of the next provisioned resource
2932
+ # in the array of provisioned resources, after the list of provisioned
2933
+ # resources that was previously requested.
2934
+ #
2935
+ # @return [Types::ListComponentProvisionedResourcesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2936
+ #
2937
+ # * {Types::ListComponentProvisionedResourcesOutput#next_token #next_token} => String
2938
+ # * {Types::ListComponentProvisionedResourcesOutput#provisioned_resources #provisioned_resources} => Array&lt;Types::ProvisionedResource&gt;
2939
+ #
2940
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2941
+ #
2942
+ # @example Request syntax with placeholder values
2943
+ #
2944
+ # resp = client.list_component_provisioned_resources({
2945
+ # component_name: "ResourceName", # required
2946
+ # next_token: "EmptyNextToken",
2947
+ # })
2948
+ #
2949
+ # @example Response structure
2950
+ #
2951
+ # resp.next_token #=> String
2952
+ # resp.provisioned_resources #=> Array
2953
+ # resp.provisioned_resources[0].identifier #=> String
2954
+ # resp.provisioned_resources[0].name #=> String
2955
+ # resp.provisioned_resources[0].provisioning_engine #=> String, one of "CLOUDFORMATION", "TERRAFORM"
2956
+ #
2957
+ # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListComponentProvisionedResources AWS API Documentation
2958
+ #
2959
+ # @overload list_component_provisioned_resources(params = {})
2960
+ # @param [Hash] params ({})
2961
+ def list_component_provisioned_resources(params = {}, options = {})
2962
+ req = build_request(:list_component_provisioned_resources, params)
2963
+ req.send_request(options)
2964
+ end
2965
+
2966
+ # List components with summary data. You can filter the result list by
2967
+ # environment, service, or a single service instance.
2968
+ #
2969
+ # For more information about components, see [Proton components][1] in
2970
+ # the *Proton Administrator Guide*.
2971
+ #
2972
+ #
2973
+ #
2974
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
2975
+ #
2976
+ # @option params [String] :environment_name
2977
+ # The name of an environment for result list filtering. Proton returns
2978
+ # components associated with the environment or attached to service
2979
+ # instances running in it.
2980
+ #
2981
+ # @option params [Integer] :max_results
2982
+ # The maximum number of components to list.
2983
+ #
2984
+ # @option params [String] :next_token
2985
+ # A token that indicates the location of the next component in the array
2986
+ # of components, after the list of components that was previously
2987
+ # requested.
2988
+ #
2989
+ # @option params [String] :service_instance_name
2990
+ # The name of a service instance for result list filtering. Proton
2991
+ # returns the component attached to the service instance, if any.
2992
+ #
2993
+ # @option params [String] :service_name
2994
+ # The name of a service for result list filtering. Proton returns
2995
+ # components attached to service instances of the service.
2996
+ #
2997
+ # @return [Types::ListComponentsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2998
+ #
2999
+ # * {Types::ListComponentsOutput#components #components} => Array&lt;Types::ComponentSummary&gt;
3000
+ # * {Types::ListComponentsOutput#next_token #next_token} => String
3001
+ #
3002
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3003
+ #
3004
+ # @example Request syntax with placeholder values
3005
+ #
3006
+ # resp = client.list_components({
3007
+ # environment_name: "ResourceName",
3008
+ # max_results: 1,
3009
+ # next_token: "NextToken",
3010
+ # service_instance_name: "ResourceName",
3011
+ # service_name: "ResourceName",
3012
+ # })
3013
+ #
3014
+ # @example Response structure
3015
+ #
3016
+ # resp.components #=> Array
3017
+ # resp.components[0].arn #=> String
3018
+ # resp.components[0].created_at #=> Time
3019
+ # resp.components[0].deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
3020
+ # resp.components[0].deployment_status_message #=> String
3021
+ # resp.components[0].environment_name #=> String
3022
+ # resp.components[0].last_deployment_attempted_at #=> Time
3023
+ # resp.components[0].last_deployment_succeeded_at #=> Time
3024
+ # resp.components[0].last_modified_at #=> Time
3025
+ # resp.components[0].name #=> String
3026
+ # resp.components[0].service_instance_name #=> String
3027
+ # resp.components[0].service_name #=> String
3028
+ # resp.next_token #=> String
3029
+ #
3030
+ # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/ListComponents AWS API Documentation
3031
+ #
3032
+ # @overload list_components(params = {})
3033
+ # @param [Hash] params ({})
3034
+ def list_components(params = {}, options = {})
3035
+ req = build_request(:list_components, params)
3036
+ req.send_request(options)
3037
+ end
3038
+
2463
3039
  # View a list of environment account connections.
2464
3040
  #
2465
3041
  # For more information, see [Environment account connections][1] in the
@@ -2477,7 +3053,7 @@ module Aws::Proton
2477
3053
  # The maximum number of environment account connections to list.
2478
3054
  #
2479
3055
  # @option params [String] :next_token
2480
- # A token to indicate the location of the next environment account
3056
+ # A token that indicates the location of the next environment account
2481
3057
  # connection in the array of environment account connections, after the
2482
3058
  # list of environment account connections that was previously requested.
2483
3059
  #
@@ -2509,6 +3085,7 @@ module Aws::Proton
2509
3085
  #
2510
3086
  # resp.environment_account_connections #=> Array
2511
3087
  # resp.environment_account_connections[0].arn #=> String
3088
+ # resp.environment_account_connections[0].component_role_arn #=> String
2512
3089
  # resp.environment_account_connections[0].environment_account_id #=> String
2513
3090
  # resp.environment_account_connections[0].environment_name #=> String
2514
3091
  # resp.environment_account_connections[0].id #=> String
@@ -2534,9 +3111,9 @@ module Aws::Proton
2534
3111
  # The environment name.
2535
3112
  #
2536
3113
  # @option params [String] :next_token
2537
- # A token to indicate the location of the next environment output in the
2538
- # array of environment outputs, after the list of environment outputs
2539
- # that was previously requested.
3114
+ # A token that indicates the location of the next environment output in
3115
+ # the array of environment outputs, after the list of environment
3116
+ # outputs that was previously requested.
2540
3117
  #
2541
3118
  # @return [Types::ListEnvironmentOutputsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2542
3119
  #
@@ -2574,10 +3151,10 @@ module Aws::Proton
2574
3151
  # The environment name.
2575
3152
  #
2576
3153
  # @option params [String] :next_token
2577
- # A token to indicate the location of the next environment provisioned
2578
- # resource in the array of environment provisioned resources, after the
2579
- # list of environment provisioned resources that was previously
2580
- # requested.
3154
+ # A token that indicates the location of the next environment
3155
+ # provisioned resource in the array of environment provisioned
3156
+ # resources, after the list of environment provisioned resources that
3157
+ # was previously requested.
2581
3158
  #
2582
3159
  # @return [Types::ListEnvironmentProvisionedResourcesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2583
3160
  #
@@ -2625,9 +3202,10 @@ module Aws::Proton
2625
3202
  # template to list.
2626
3203
  #
2627
3204
  # @option params [String] :next_token
2628
- # A token to indicate the location of the next major or minor version in
2629
- # the array of major or minor versions of an environment template, after
2630
- # the list of major or minor versions that was previously requested.
3205
+ # A token that indicates the location of the next major or minor version
3206
+ # in the array of major or minor versions of an environment template,
3207
+ # after the list of major or minor versions that was previously
3208
+ # requested.
2631
3209
  #
2632
3210
  # @option params [required, String] :template_name
2633
3211
  # The name of the environment template.
@@ -2678,8 +3256,8 @@ module Aws::Proton
2678
3256
  # The maximum number of environment templates to list.
2679
3257
  #
2680
3258
  # @option params [String] :next_token
2681
- # A token to indicate the location of the next environment template in
2682
- # the array of environment templates, after the list of environment
3259
+ # A token that indicates the location of the next environment template
3260
+ # in the array of environment templates, after the list of environment
2683
3261
  # templates that was previously requested.
2684
3262
  #
2685
3263
  # @return [Types::ListEnvironmentTemplatesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2727,9 +3305,9 @@ module Aws::Proton
2727
3305
  # The maximum number of environments to list.
2728
3306
  #
2729
3307
  # @option params [String] :next_token
2730
- # A token to indicate the location of the next environment in the array
2731
- # of environments, after the list of environments that was previously
2732
- # requested.
3308
+ # A token that indicates the location of the next environment in the
3309
+ # array of environments, after the list of environments that was
3310
+ # previously requested.
2733
3311
  #
2734
3312
  # @return [Types::ListEnvironmentsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2735
3313
  #
@@ -2755,6 +3333,7 @@ module Aws::Proton
2755
3333
  #
2756
3334
  # resp.environments #=> Array
2757
3335
  # resp.environments[0].arn #=> String
3336
+ # resp.environments[0].component_role_arn #=> String
2758
3337
  # resp.environments[0].created_at #=> Time
2759
3338
  # resp.environments[0].deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
2760
3339
  # resp.environments[0].deployment_status_message #=> String
@@ -2786,8 +3365,9 @@ module Aws::Proton
2786
3365
  # The maximum number of repositories to list.
2787
3366
  #
2788
3367
  # @option params [String] :next_token
2789
- # A token to indicate the location of the next repository in the array
2790
- # of repositories, after the list of repositories previously requested.
3368
+ # A token that indicates the location of the next repository in the
3369
+ # array of repositories, after the list of repositories previously
3370
+ # requested.
2791
3371
  #
2792
3372
  # @return [Types::ListRepositoriesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2793
3373
  #
@@ -2823,7 +3403,7 @@ module Aws::Proton
2823
3403
  # List repository sync definitions with detail data.
2824
3404
  #
2825
3405
  # @option params [String] :next_token
2826
- # A token to indicate the location of the next repository sync
3406
+ # A token that indicates the location of the next repository sync
2827
3407
  # definition in the array of repository sync definitions, after the list
2828
3408
  # of repository sync definitions previously requested.
2829
3409
  #
@@ -2870,18 +3450,17 @@ module Aws::Proton
2870
3450
  req.send_request(options)
2871
3451
  end
2872
3452
 
2873
- # View a list service instance infrastructure as code outputs with
2874
- # detail data.
3453
+ # Get a list service of instance Infrastructure as Code (IaC) outputs.
2875
3454
  #
2876
3455
  # @option params [String] :next_token
2877
- # A token to indicate the location of the next output in the array of
3456
+ # A token that indicates the location of the next output in the array of
2878
3457
  # outputs, after the list of outputs that was previously requested.
2879
3458
  #
2880
3459
  # @option params [required, String] :service_instance_name
2881
- # The service instance name.
3460
+ # The name of the service instance whose outputs you want.
2882
3461
  #
2883
3462
  # @option params [required, String] :service_name
2884
- # The service name.
3463
+ # The name of the service that `serviceInstanceName` is associated to.
2885
3464
  #
2886
3465
  # @return [Types::ListServiceInstanceOutputsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2887
3466
  #
@@ -2917,15 +3496,15 @@ module Aws::Proton
2917
3496
  # List provisioned resources for a service instance with details.
2918
3497
  #
2919
3498
  # @option params [String] :next_token
2920
- # A token to indicate the location of the next provisioned resource in
2921
- # the array of provisioned resources, after the list of provisioned
3499
+ # A token that indicates the location of the next provisioned resource
3500
+ # in the array of provisioned resources, after the list of provisioned
2922
3501
  # resources that was previously requested.
2923
3502
  #
2924
3503
  # @option params [required, String] :service_instance_name
2925
- # The service instance name.
3504
+ # The name of the service instance whose provisioned resources you want.
2926
3505
  #
2927
3506
  # @option params [required, String] :service_name
2928
- # The service name.
3507
+ # The name of the service that `serviceInstanceName` is associated to.
2929
3508
  #
2930
3509
  # @return [Types::ListServiceInstanceProvisionedResourcesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2931
3510
  #
@@ -2959,14 +3538,14 @@ module Aws::Proton
2959
3538
  req.send_request(options)
2960
3539
  end
2961
3540
 
2962
- # List service instances with summaries of detail data.
3541
+ # List service instances with summary data.
2963
3542
  #
2964
3543
  # @option params [Integer] :max_results
2965
3544
  # The maximum number of service instances to list.
2966
3545
  #
2967
3546
  # @option params [String] :next_token
2968
- # A token to indicate the location of the next service in the array of
2969
- # service instances, after the list of service instances that was
3547
+ # A token that indicates the location of the next service in the array
3548
+ # of service instances, after the list of service instances that was
2970
3549
  # previously requested.
2971
3550
  #
2972
3551
  # @option params [String] :service_name
@@ -3013,15 +3592,14 @@ module Aws::Proton
3013
3592
  req.send_request(options)
3014
3593
  end
3015
3594
 
3016
- # View a list service pipeline infrastructure as code outputs with
3017
- # detail.
3595
+ # Get a list of service pipeline Infrastructure as Code (IaC) outputs.
3018
3596
  #
3019
3597
  # @option params [String] :next_token
3020
- # A token to indicate the location of the next output in the array of
3598
+ # A token that indicates the location of the next output in the array of
3021
3599
  # outputs, after the list of outputs that was previously requested.
3022
3600
  #
3023
3601
  # @option params [required, String] :service_name
3024
- # The service name.
3602
+ # The name of the service whose pipeline's outputs you want.
3025
3603
  #
3026
3604
  # @return [Types::ListServicePipelineOutputsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3027
3605
  #
@@ -3056,12 +3634,13 @@ module Aws::Proton
3056
3634
  # List provisioned resources for a service and pipeline with details.
3057
3635
  #
3058
3636
  # @option params [String] :next_token
3059
- # A token to indicate the location of the next provisioned resource in
3060
- # the array of provisioned resources, after the list of provisioned
3637
+ # A token that indicates the location of the next provisioned resource
3638
+ # in the array of provisioned resources, after the list of provisioned
3061
3639
  # resources that was previously requested.
3062
3640
  #
3063
3641
  # @option params [required, String] :service_name
3064
- # The service name.
3642
+ # The name of the service whose pipeline's provisioned resources you
3643
+ # want.
3065
3644
  #
3066
3645
  # @return [Types::ListServicePipelineProvisionedResourcesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3067
3646
  #
@@ -3108,9 +3687,9 @@ module Aws::Proton
3108
3687
  # list.
3109
3688
  #
3110
3689
  # @option params [String] :next_token
3111
- # A token to indicate the location of the next major or minor version in
3112
- # the array of major or minor versions of a service template, after the
3113
- # list of major or minor versions that was previously requested.
3690
+ # A token that indicates the location of the next major or minor version
3691
+ # in the array of major or minor versions of a service template, after
3692
+ # the list of major or minor versions that was previously requested.
3114
3693
  #
3115
3694
  # @option params [required, String] :template_name
3116
3695
  # The name of the service template.
@@ -3161,8 +3740,8 @@ module Aws::Proton
3161
3740
  # The maximum number of service templates to list.
3162
3741
  #
3163
3742
  # @option params [String] :next_token
3164
- # A token to indicate the location of the next service template in the
3165
- # array of service templates, after the list of service templates
3743
+ # A token that indicates the location of the next service template in
3744
+ # the array of service templates, after the list of service templates
3166
3745
  # previously requested.
3167
3746
  #
3168
3747
  # @return [Types::ListServiceTemplatesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -3207,8 +3786,8 @@ module Aws::Proton
3207
3786
  # The maximum number of services to list.
3208
3787
  #
3209
3788
  # @option params [String] :next_token
3210
- # A token to indicate the location of the next service in the array of
3211
- # services, after the list of services that was previously requested.
3789
+ # A token that indicates the location of the next service in the array
3790
+ # of services, after the list of services that was previously requested.
3212
3791
  #
3213
3792
  # @return [Types::ListServicesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3214
3793
  #
@@ -3259,9 +3838,9 @@ module Aws::Proton
3259
3838
  # The maximum number of tags to list.
3260
3839
  #
3261
3840
  # @option params [String] :next_token
3262
- # A token to indicate the location of the next resource tag in the array
3263
- # of resource tags, after the list of resource tags that was previously
3264
- # requested.
3841
+ # A token that indicates the location of the next resource tag in the
3842
+ # array of resource tags, after the list of resource tags that was
3843
+ # previously requested.
3265
3844
  #
3266
3845
  # @option params [required, String] :resource_arn
3267
3846
  # The Amazon Resource Name (ARN) of the resource for the listed tags.
@@ -3298,18 +3877,14 @@ module Aws::Proton
3298
3877
  end
3299
3878
 
3300
3879
  # Notify Proton of status changes to a provisioned resource when you use
3301
- # pull request provisioning. For more information, see [Template
3302
- # bundles][1].
3880
+ # self-managed provisioning.
3303
3881
  #
3304
- # Provisioning by pull request is currently in feature preview and is
3305
- # only usable with Terraform based Proton Templates. To learn more about
3306
- # [Amazon Web Services Feature Preview terms][2], see section 2 on Beta
3307
- # and Previews.
3882
+ # For more information, see [Self-managed provisioning][1] in the
3883
+ # *Proton Administrator Guide*.
3308
3884
  #
3309
3885
  #
3310
3886
  #
3311
- # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-template-bundles.html
3312
- # [2]: https://aws.amazon.com/service-terms
3887
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-works-prov-methods.html#ag-works-prov-methods-self
3313
3888
  #
3314
3889
  # @option params [String] :deployment_id
3315
3890
  # The deployment ID for your provisioned resource.
@@ -3341,7 +3916,7 @@ module Aws::Proton
3341
3916
  # ],
3342
3917
  # resource_arn: "Arn", # required
3343
3918
  # status: "IN_PROGRESS", # required, accepts IN_PROGRESS, FAILED, SUCCEEDED
3344
- # status_message: "SyntheticNotifyResourceDeploymentStatusChangeInputString",
3919
+ # status_message: "NotifyResourceDeploymentStatusChangeInputStatusMessageString",
3345
3920
  # })
3346
3921
  #
3347
3922
  # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/NotifyResourceDeploymentStatusChange AWS API Documentation
@@ -3357,10 +3932,9 @@ module Aws::Proton
3357
3932
  # another environment account.
3358
3933
  #
3359
3934
  # After you reject an environment account connection request, you
3360
- # *won’t* be able to accept or use the rejected environment account
3361
- # connection.
3935
+ # *can't* accept or use the rejected environment account connection.
3362
3936
  #
3363
- # You *can’t* reject an environment account connection that is connected
3937
+ # You *can’t* reject an environment account connection that's connected
3364
3938
  # to an environment.
3365
3939
  #
3366
3940
  # For more information, see [Environment account connections][1] in the
@@ -3386,6 +3960,7 @@ module Aws::Proton
3386
3960
  # @example Response structure
3387
3961
  #
3388
3962
  # resp.environment_account_connection.arn #=> String
3963
+ # resp.environment_account_connection.component_role_arn #=> String
3389
3964
  # resp.environment_account_connection.environment_account_id #=> String
3390
3965
  # resp.environment_account_connection.environment_name #=> String
3391
3966
  # resp.environment_account_connection.id #=> String
@@ -3404,9 +3979,11 @@ module Aws::Proton
3404
3979
  req.send_request(options)
3405
3980
  end
3406
3981
 
3407
- # Tag a resource. For more information, see *Proton resources and
3408
- # tagging* in the [Proton Administrator Guide][1] or [Proton User
3409
- # Guide][2].
3982
+ # Tag a resource. A tag is a key-value pair of metadata that you
3983
+ # associate with an Proton resource.
3984
+ #
3985
+ # For more information, see *Proton resources and tagging* in the
3986
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
3410
3987
  #
3411
3988
  #
3412
3989
  #
@@ -3414,11 +3991,11 @@ module Aws::Proton
3414
3991
  # [2]: https://docs.aws.amazon.com/proton/latest/userguide/resources.html
3415
3992
  #
3416
3993
  # @option params [required, String] :resource_arn
3417
- # The Amazon Resource Name (ARN) of the resource that the resource tag
3418
- # is applied to.
3994
+ # The Amazon Resource Name (ARN) of the Proton resource to apply
3995
+ # customer tags to.
3419
3996
  #
3420
3997
  # @option params [required, Array<Types::Tag>] :tags
3421
- # An array of resource tags to apply to a resource.
3998
+ # A list of customer tags to apply to the Proton resource.
3422
3999
  #
3423
4000
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3424
4001
  #
@@ -3443,9 +4020,11 @@ module Aws::Proton
3443
4020
  req.send_request(options)
3444
4021
  end
3445
4022
 
3446
- # Remove a tag from a resource. For more information, see *Proton
3447
- # resources and tagging* in the [Proton Administrator Guide][1] or
3448
- # [Proton User Guide][2].
4023
+ # Remove a customer tag from a resource. A tag is a key-value pair of
4024
+ # metadata associated with an Proton resource.
4025
+ #
4026
+ # For more information, see *Proton resources and tagging* in the
4027
+ # [Proton Administrator Guide][1] or [Proton User Guide][2].
3449
4028
  #
3450
4029
  #
3451
4030
  #
@@ -3453,12 +4032,12 @@ module Aws::Proton
3453
4032
  # [2]: https://docs.aws.amazon.com/proton/latest/userguide/resources.html
3454
4033
  #
3455
4034
  # @option params [required, String] :resource_arn
3456
- # The Amazon Resource Name (ARN) of the resource that the tag is to be
3457
- # removed from.
4035
+ # The Amazon Resource Name (ARN) of the resource to remove customer tags
4036
+ # from.
3458
4037
  #
3459
4038
  # @option params [required, Array<String>] :tag_keys
3460
- # An array of tag keys indicating the resource tags to be removed from
3461
- # the resource.
4039
+ # A list of customer tag keys that indicate the customer tags to be
4040
+ # removed from the resource.
3462
4041
  #
3463
4042
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3464
4043
  #
@@ -3481,28 +4060,15 @@ module Aws::Proton
3481
4060
  # Update the Proton service pipeline role or repository settings.
3482
4061
  #
3483
4062
  # @option params [Types::RepositoryBranchInput] :pipeline_provisioning_repository
3484
- # The repository that you provide with pull request provisioning.
3485
- #
3486
- # Provisioning by pull request is currently in feature preview and is
3487
- # only usable with Terraform based Proton Templates. To learn more about
3488
- # [Amazon Web Services Feature Preview terms][1], see section 2 on Beta
3489
- # and Previews.
3490
- #
3491
- #
3492
- #
3493
- # [1]: https://aws.amazon.com/service-terms
4063
+ # A repository for pipeline provisioning. Specify it if you have
4064
+ # environments configured for self-managed provisioning with services
4065
+ # that include pipelines.
3494
4066
  #
3495
4067
  # @option params [String] :pipeline_service_role_arn
3496
- # The Amazon Resource Name (ARN) of the Proton pipeline service role.
3497
- #
3498
- # Provisioning by pull request is currently in feature preview and is
3499
- # only usable with Terraform based Proton Templates. To learn more about
3500
- # [Amazon Web Services Feature Preview terms][1], see section 2 on Beta
3501
- # and Previews.
3502
- #
3503
- #
3504
- #
3505
- # [1]: https://aws.amazon.com/service-terms
4068
+ # The Amazon Resource Name (ARN) of the service role you want to use for
4069
+ # provisioning pipelines. Assumed by Proton for Amazon Web
4070
+ # Services-managed provisioning, and by customer-owned automation for
4071
+ # self-managed provisioning.
3506
4072
  #
3507
4073
  # @return [Types::UpdateAccountSettingsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3508
4074
  #
@@ -3536,6 +4102,120 @@ module Aws::Proton
3536
4102
  req.send_request(options)
3537
4103
  end
3538
4104
 
4105
+ # Update a component.
4106
+ #
4107
+ # There are a few modes for updating a component. The `deploymentType`
4108
+ # field defines the mode.
4109
+ #
4110
+ # <note markdown="1"> You can't update a component while its deployment status, or the
4111
+ # deployment status of a service instance attached to it, is
4112
+ # `IN_PROGRESS`.
4113
+ #
4114
+ # </note>
4115
+ #
4116
+ # For more information about components, see [Proton components][1] in
4117
+ # the *Proton Administrator Guide*.
4118
+ #
4119
+ #
4120
+ #
4121
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
4122
+ #
4123
+ # @option params [required, String] :deployment_type
4124
+ # The deployment type. It defines the mode for updating a component, as
4125
+ # follows:
4126
+ #
4127
+ #
4128
+ #
4129
+ # : `NONE`
4130
+ #
4131
+ # In this mode, a deployment *doesn't* occur. Only the requested
4132
+ # metadata parameters are updated. You can only specify `description`
4133
+ # in this mode.
4134
+ #
4135
+ #
4136
+ #
4137
+ # : `CURRENT_VERSION`
4138
+ #
4139
+ # In this mode, the component is deployed and updated with the new
4140
+ # `serviceSpec`, `templateSource`, and/or `type` that you provide.
4141
+ # Only requested parameters are updated.
4142
+ #
4143
+ # @option params [String] :description
4144
+ # An optional customer-provided description of the component.
4145
+ #
4146
+ # @option params [required, String] :name
4147
+ # The name of the component to update.
4148
+ #
4149
+ # @option params [String] :service_instance_name
4150
+ # The name of the service instance that you want to attach this
4151
+ # component to. Don't specify to keep the component's current service
4152
+ # instance attachment. Specify an empty string to detach the component
4153
+ # from the service instance it's attached to. Specify non-empty values
4154
+ # for both `serviceInstanceName` and `serviceName` or for neither of
4155
+ # them.
4156
+ #
4157
+ # @option params [String] :service_name
4158
+ # The name of the service that `serviceInstanceName` is associated with.
4159
+ # Don't specify to keep the component's current service instance
4160
+ # attachment. Specify an empty string to detach the component from the
4161
+ # service instance it's attached to. Specify non-empty values for both
4162
+ # `serviceInstanceName` and `serviceName` or for neither of them.
4163
+ #
4164
+ # @option params [String] :service_spec
4165
+ # The service spec that you want the component to use to access service
4166
+ # inputs. Set this only when the component is attached to a service
4167
+ # instance.
4168
+ #
4169
+ # @option params [String] :template_file
4170
+ # A path to the Infrastructure as Code (IaC) file describing
4171
+ # infrastructure that a custom component provisions.
4172
+ #
4173
+ # <note markdown="1"> Components support a single IaC file, even if you use Terraform as
4174
+ # your template language.
4175
+ #
4176
+ # </note>
4177
+ #
4178
+ # @return [Types::UpdateComponentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4179
+ #
4180
+ # * {Types::UpdateComponentOutput#component #component} => Types::Component
4181
+ #
4182
+ # @example Request syntax with placeholder values
4183
+ #
4184
+ # resp = client.update_component({
4185
+ # deployment_type: "NONE", # required, accepts NONE, CURRENT_VERSION
4186
+ # description: "Description",
4187
+ # name: "ResourceName", # required
4188
+ # service_instance_name: "ResourceNameOrEmpty",
4189
+ # service_name: "ResourceNameOrEmpty",
4190
+ # service_spec: "SpecContents",
4191
+ # template_file: "TemplateFileContents",
4192
+ # })
4193
+ #
4194
+ # @example Response structure
4195
+ #
4196
+ # resp.component.arn #=> String
4197
+ # resp.component.created_at #=> Time
4198
+ # resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
4199
+ # resp.component.deployment_status_message #=> String
4200
+ # resp.component.description #=> String
4201
+ # resp.component.environment_name #=> String
4202
+ # resp.component.last_deployment_attempted_at #=> Time
4203
+ # resp.component.last_deployment_succeeded_at #=> Time
4204
+ # resp.component.last_modified_at #=> Time
4205
+ # resp.component.name #=> String
4206
+ # resp.component.service_instance_name #=> String
4207
+ # resp.component.service_name #=> String
4208
+ # resp.component.service_spec #=> String
4209
+ #
4210
+ # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateComponent AWS API Documentation
4211
+ #
4212
+ # @overload update_component(params = {})
4213
+ # @param [Hash] params ({})
4214
+ def update_component(params = {}, options = {})
4215
+ req = build_request(:update_component, params)
4216
+ req.send_request(options)
4217
+ end
4218
+
3539
4219
  # Update an environment.
3540
4220
  #
3541
4221
  # If the environment is associated with an environment account
@@ -3543,29 +4223,33 @@ module Aws::Proton
3543
4223
  # `provisioningRepository` parameter to update or connect to an
3544
4224
  # environment account connection.
3545
4225
  #
3546
- # You can only update to a new environment account connection if it was
3547
- # created in the same environment account that the current environment
3548
- # account connection was created in and is associated with the current
3549
- # environment.
4226
+ # You can only update to a new environment account connection if that
4227
+ # connection was created in the same environment account that the
4228
+ # current environment account connection was created in. The account
4229
+ # connection must also be associated with the current environment.
3550
4230
  #
3551
4231
  # If the environment *isn't* associated with an environment account
3552
4232
  # connection, *don't* update or include the
3553
- # `environmentAccountConnectionId` parameter to update or connect to an
3554
- # environment account connection.
4233
+ # `environmentAccountConnectionId` parameter. You *can't* update or
4234
+ # connect the environment to an environment account connection if it
4235
+ # *isn't* already associated with an environment connection.
3555
4236
  #
3556
4237
  # You can update either the `environmentAccountConnectionId` or
3557
4238
  # `protonServiceRoleArn` parameter and value. You can’t update both.
3558
4239
  #
3559
- # If the environment was provisioned with pull request provisioning,
3560
- # include the `provisioningRepository` parameter and omit the
4240
+ # If the environment was configured for Amazon Web Services-managed
4241
+ # provisioning, omit the `provisioningRepository` parameter.
4242
+ #
4243
+ # If the environment was configured for self-managed provisioning,
4244
+ # specify the `provisioningRepository` parameter and omit the
3561
4245
  # `protonServiceRoleArn` and `environmentAccountConnectionId`
3562
4246
  # parameters.
3563
4247
  #
3564
- # If the environment wasn't provisioned with pull request provisioning,
3565
- # omit the `provisioningRepository` parameter.
4248
+ # For more information, see [Environments][1] and [Provisioning
4249
+ # methods][2] in the *Proton Administrator Guide*.
3566
4250
  #
3567
- # There are four modes for updating an environment as described in the
3568
- # following. The `deploymentType` field defines the mode.
4251
+ # There are four modes for updating an environment. The `deploymentType`
4252
+ # field defines the mode.
3569
4253
  #
3570
4254
  #
3571
4255
  #
@@ -3600,11 +4284,32 @@ module Aws::Proton
3600
4284
  # published, recommended (latest) major and minor version of the
3601
4285
  # current template, by default. You can also specify a different major
3602
4286
  # version that's higher than the major version in use and a minor
3603
- # version (optional).
4287
+ # version.
4288
+ #
4289
+ #
4290
+ #
4291
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-environments.html
4292
+ # [2]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-works-prov-methods.html
4293
+ #
4294
+ # @option params [String] :component_role_arn
4295
+ # The Amazon Resource Name (ARN) of the IAM service role that Proton
4296
+ # uses when provisioning directly defined components in this
4297
+ # environment. It determines the scope of infrastructure that a
4298
+ # component can provision.
4299
+ #
4300
+ # The environment must have a `componentRoleArn` to allow directly
4301
+ # defined components to be associated with the environment.
4302
+ #
4303
+ # For more information about components, see [Proton components][1] in
4304
+ # the *Proton Administrator Guide*.
4305
+ #
4306
+ #
4307
+ #
4308
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
3604
4309
  #
3605
4310
  # @option params [required, String] :deployment_type
3606
- # There are four modes for updating an environment as described in the
3607
- # following. The `deploymentType` field defines the mode.
4311
+ # There are four modes for updating an environment. The `deploymentType`
4312
+ # field defines the mode.
3608
4313
  #
3609
4314
  #
3610
4315
  #
@@ -3619,7 +4324,7 @@ module Aws::Proton
3619
4324
  #
3620
4325
  # In this mode, the environment is deployed and updated with the new
3621
4326
  # spec that you provide. Only requested parameters are updated.
3622
- # *Don’t* include minor or major version parameters when you use this
4327
+ # *Don’t* include major or minor version parameters when you use this
3623
4328
  # `deployment-type`.
3624
4329
  #
3625
4330
  #
@@ -3660,16 +4365,8 @@ module Aws::Proton
3660
4365
  # Proton to make API calls to other services your behalf.
3661
4366
  #
3662
4367
  # @option params [Types::RepositoryBranchInput] :provisioning_repository
3663
- # The repository that you provide with pull request provisioning.
3664
- #
3665
- # Provisioning by pull request is currently in feature preview and is
3666
- # only usable with Terraform based Proton Templates. To learn more about
3667
- # [Amazon Web Services Feature Preview terms][1], see section 2 on Beta
3668
- # and Previews.
3669
- #
3670
- #
3671
- #
3672
- # [1]: https://aws.amazon.com/service-terms
4368
+ # The infrastructure repository that you use to host your rendered
4369
+ # infrastructure templates for self-managed provisioning.
3673
4370
  #
3674
4371
  # @option params [String] :spec
3675
4372
  # The formatted specification that defines the update.
@@ -3687,6 +4384,7 @@ module Aws::Proton
3687
4384
  # @example Request syntax with placeholder values
3688
4385
  #
3689
4386
  # resp = client.update_environment({
4387
+ # component_role_arn: "Arn",
3690
4388
  # deployment_type: "NONE", # required, accepts NONE, CURRENT_VERSION, MINOR_VERSION, MAJOR_VERSION
3691
4389
  # description: "Description",
3692
4390
  # environment_account_connection_id: "EnvironmentAccountConnectionId",
@@ -3705,6 +4403,7 @@ module Aws::Proton
3705
4403
  # @example Response structure
3706
4404
  #
3707
4405
  # resp.environment.arn #=> String
4406
+ # resp.environment.component_role_arn #=> String
3708
4407
  # resp.environment.created_at #=> Time
3709
4408
  # resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
3710
4409
  # resp.environment.deployment_status_message #=> String
@@ -3744,11 +4443,28 @@ module Aws::Proton
3744
4443
  #
3745
4444
  # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-env-account-connections.html
3746
4445
  #
4446
+ # @option params [String] :component_role_arn
4447
+ # The Amazon Resource Name (ARN) of the IAM service role that Proton
4448
+ # uses when provisioning directly defined components in the associated
4449
+ # environment account. It determines the scope of infrastructure that a
4450
+ # component can provision in the account.
4451
+ #
4452
+ # The environment account connection must have a `componentRoleArn` to
4453
+ # allow directly defined components to be associated with any
4454
+ # environments running in the account.
4455
+ #
4456
+ # For more information about components, see [Proton components][1] in
4457
+ # the *Proton Administrator Guide*.
4458
+ #
4459
+ #
4460
+ #
4461
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
4462
+ #
3747
4463
  # @option params [required, String] :id
3748
4464
  # The ID of the environment account connection to update.
3749
4465
  #
3750
- # @option params [required, String] :role_arn
3751
- # The Amazon Resource Name (ARN) of the IAM service role that is
4466
+ # @option params [String] :role_arn
4467
+ # The Amazon Resource Name (ARN) of the IAM service role that's
3752
4468
  # associated with the environment account connection to update.
3753
4469
  #
3754
4470
  # @return [Types::UpdateEnvironmentAccountConnectionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -3758,13 +4474,15 @@ module Aws::Proton
3758
4474
  # @example Request syntax with placeholder values
3759
4475
  #
3760
4476
  # resp = client.update_environment_account_connection({
4477
+ # component_role_arn: "Arn",
3761
4478
  # id: "EnvironmentAccountConnectionId", # required
3762
- # role_arn: "Arn", # required
4479
+ # role_arn: "Arn",
3763
4480
  # })
3764
4481
  #
3765
4482
  # @example Response structure
3766
4483
  #
3767
4484
  # resp.environment_account_connection.arn #=> String
4485
+ # resp.environment_account_connection.component_role_arn #=> String
3768
4486
  # resp.environment_account_connection.environment_account_id #=> String
3769
4487
  # resp.environment_account_connection.environment_name #=> String
3770
4488
  # resp.environment_account_connection.id #=> String
@@ -3896,6 +4614,18 @@ module Aws::Proton
3896
4614
  #
3897
4615
  # Edit the `spec` parameter to add or delete instances.
3898
4616
  #
4617
+ # <note markdown="1"> You can't delete a service instance (remove it from the spec) if it
4618
+ # has an attached component.
4619
+ #
4620
+ # For more information about components, see [Proton components][1] in
4621
+ # the *Proton Administrator Guide*.
4622
+ #
4623
+ # </note>
4624
+ #
4625
+ #
4626
+ #
4627
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
4628
+ #
3899
4629
  # @option params [String] :description
3900
4630
  # The edited service description.
3901
4631
  #
@@ -3962,49 +4692,24 @@ module Aws::Proton
3962
4692
 
3963
4693
  # Update a service instance.
3964
4694
  #
3965
- # There are four modes for updating a service instance as described in
3966
- # the following. The `deploymentType` field defines the mode.
3967
- #
3968
- #
3969
- #
3970
- # : `NONE`
3971
- #
3972
- # In this mode, a deployment *doesn't* occur. Only the requested
3973
- # metadata parameters are updated.
3974
- #
3975
- #
3976
- #
3977
- # : `CURRENT_VERSION`
3978
- #
3979
- # In this mode, the service instance is deployed and updated with the
3980
- # new spec that you provide. Only requested parameters are updated.
3981
- # *Don’t* include minor or major version parameters when you use this
3982
- # `deployment-type`.
4695
+ # There are a few modes for updating a service instance. The
4696
+ # `deploymentType` field defines the mode.
3983
4697
  #
4698
+ # <note markdown="1"> You can't update a service instance while its deployment status, or
4699
+ # the deployment status of a component attached to it, is `IN_PROGRESS`.
3984
4700
  #
4701
+ # For more information about components, see [Proton components][1] in
4702
+ # the *Proton Administrator Guide*.
3985
4703
  #
3986
- # : `MINOR_VERSION`
3987
- #
3988
- # In this mode, the service instance is deployed and updated with the
3989
- # published, recommended (latest) minor version of the current major
3990
- # version in use, by default. You can also specify a different minor
3991
- # version of the current major version in use.
4704
+ # </note>
3992
4705
  #
3993
4706
  #
3994
4707
  #
3995
- # : `MAJOR_VERSION`
3996
- #
3997
- # In this mode, the service instance is deployed and updated with the
3998
- # published, recommended (latest) major and minor version of the
3999
- # current template, by default. You can also specify a different major
4000
- # version that is higher than the major version in use and a minor
4001
- # version (optional).
4708
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
4002
4709
  #
4003
4710
  # @option params [required, String] :deployment_type
4004
- # The deployment type.
4005
- #
4006
- # There are four modes for updating a service instance as described in
4007
- # the following. The `deploymentType` field defines the mode.
4711
+ # The deployment type. It defines the mode for updating a service
4712
+ # instance, as follows:
4008
4713
  #
4009
4714
  #
4010
4715
  #
@@ -4019,8 +4724,8 @@ module Aws::Proton
4019
4724
  #
4020
4725
  # In this mode, the service instance is deployed and updated with the
4021
4726
  # new spec that you provide. Only requested parameters are updated.
4022
- # *Don’t* include minor or major version parameters when you use this
4023
- # `deployment-type`.
4727
+ # *Don’t* include major or minor version parameters when you use this
4728
+ # deployment type.
4024
4729
  #
4025
4730
  #
4026
4731
  #
@@ -4037,9 +4742,9 @@ module Aws::Proton
4037
4742
  #
4038
4743
  # In this mode, the service instance is deployed and updated with the
4039
4744
  # published, recommended (latest) major and minor version of the
4040
- # current template, by default. You can also specify a different major
4041
- # version that is higher than the major version in use and a minor
4042
- # version (optional).
4745
+ # current template, by default. You can specify a different major
4746
+ # version that's higher than the major version in use and a minor
4747
+ # version.
4043
4748
  #
4044
4749
  # @option params [required, String] :name
4045
4750
  # The name of the service instance to update.
@@ -4098,8 +4803,8 @@ module Aws::Proton
4098
4803
 
4099
4804
  # Update the service pipeline.
4100
4805
  #
4101
- # There are four modes for updating a service pipeline as described in
4102
- # the following. The `deploymentType` field defines the mode.
4806
+ # There are four modes for updating a service pipeline. The
4807
+ # `deploymentType` field defines the mode.
4103
4808
  #
4104
4809
  #
4105
4810
  #
@@ -4114,7 +4819,7 @@ module Aws::Proton
4114
4819
  #
4115
4820
  # In this mode, the service pipeline is deployed and updated with the
4116
4821
  # new spec that you provide. Only requested parameters are updated.
4117
- # *Don’t* include minor or major version parameters when you use this
4822
+ # *Don’t* include major or minor version parameters when you use this
4118
4823
  # `deployment-type`.
4119
4824
  #
4120
4825
  #
@@ -4123,7 +4828,7 @@ module Aws::Proton
4123
4828
  #
4124
4829
  # In this mode, the service pipeline is deployed and updated with the
4125
4830
  # published, recommended (latest) minor version of the current major
4126
- # version in use, by default. You can also specify a different minor
4831
+ # version in use, by default. You can specify a different minor
4127
4832
  # version of the current major version in use.
4128
4833
  #
4129
4834
  #
@@ -4132,15 +4837,15 @@ module Aws::Proton
4132
4837
  #
4133
4838
  # In this mode, the service pipeline is deployed and updated with the
4134
4839
  # published, recommended (latest) major and minor version of the
4135
- # current template by default. You can also specify a different major
4136
- # version that is higher than the major version in use and a minor
4137
- # version (optional).
4840
+ # current template by default. You can specify a different major
4841
+ # version that's higher than the major version in use and a minor
4842
+ # version.
4138
4843
  #
4139
4844
  # @option params [required, String] :deployment_type
4140
4845
  # The deployment type.
4141
4846
  #
4142
- # There are four modes for updating a service pipeline as described in
4143
- # the following. The `deploymentType` field defines the mode.
4847
+ # There are four modes for updating a service pipeline. The
4848
+ # `deploymentType` field defines the mode.
4144
4849
  #
4145
4850
  #
4146
4851
  #
@@ -4155,7 +4860,7 @@ module Aws::Proton
4155
4860
  #
4156
4861
  # In this mode, the service pipeline is deployed and updated with the
4157
4862
  # new spec that you provide. Only requested parameters are updated.
4158
- # *Don’t* include minor or major version parameters when you use this
4863
+ # *Don’t* include major or minor version parameters when you use this
4159
4864
  # `deployment-type`.
4160
4865
  #
4161
4866
  #
@@ -4164,7 +4869,7 @@ module Aws::Proton
4164
4869
  #
4165
4870
  # In this mode, the service pipeline is deployed and updated with the
4166
4871
  # published, recommended (latest) minor version of the current major
4167
- # version in use, by default. You can also specify a different minor
4872
+ # version in use, by default. You can specify a different minor
4168
4873
  # version of the current major version in use.
4169
4874
  #
4170
4875
  #
@@ -4173,9 +4878,9 @@ module Aws::Proton
4173
4878
  #
4174
4879
  # In this mode, the service pipeline is deployed and updated with the
4175
4880
  # published, recommended (latest) major and minor version of the
4176
- # current template, by default. You can also specify a different major
4177
- # version that is higher than the major version in use and a minor
4178
- # version (optional).
4881
+ # current template, by default. You can specify a different major
4882
+ # version that's higher than the major version in use and a minor
4883
+ # version.
4179
4884
  #
4180
4885
  # @option params [required, String] :service_name
4181
4886
  # The name of the service to that the pipeline is associated with.
@@ -4233,7 +4938,7 @@ module Aws::Proton
4233
4938
  # A description of the service template update.
4234
4939
  #
4235
4940
  # @option params [String] :display_name
4236
- # The name of the service template to update as displayed in the
4941
+ # The name of the service template to update that's displayed in the
4237
4942
  # developer interface.
4238
4943
  #
4239
4944
  # @option params [required, String] :name
@@ -4275,8 +4980,10 @@ module Aws::Proton
4275
4980
  # Update a major or minor version of a service template.
4276
4981
  #
4277
4982
  # @option params [Array<Types::CompatibleEnvironmentTemplateInput>] :compatible_environment_templates
4278
- # An array of compatible environment names for a service template major
4279
- # or minor version to update.
4983
+ # An array of environment template objects that are compatible with this
4984
+ # service template version. A service instance based on this service
4985
+ # template version can run in environments based on compatible
4986
+ # templates.
4280
4987
  #
4281
4988
  # @option params [String] :description
4282
4989
  # A description of a service template version to update.
@@ -4292,6 +4999,24 @@ module Aws::Proton
4292
4999
  # @option params [String] :status
4293
5000
  # The status of the service template minor version to update.
4294
5001
  #
5002
+ # @option params [Array<String>] :supported_component_sources
5003
+ # An array of supported component sources. Components with supported
5004
+ # sources can be attached to service instances based on this service
5005
+ # template version.
5006
+ #
5007
+ # <note markdown="1"> A change to `supportedComponentSources` doesn't impact existing
5008
+ # component attachments to instances based on this template version. A
5009
+ # change only affects later associations.
5010
+ #
5011
+ # </note>
5012
+ #
5013
+ # For more information about components, see [Proton components][1] in
5014
+ # the *Proton Administrator Guide*.
5015
+ #
5016
+ #
5017
+ #
5018
+ # [1]: https://docs.aws.amazon.com/proton/latest/adminguide/ag-components.html
5019
+ #
4295
5020
  # @option params [required, String] :template_name
4296
5021
  # The name of the service template.
4297
5022
  #
@@ -4312,6 +5037,7 @@ module Aws::Proton
4312
5037
  # major_version: "TemplateVersionPart", # required
4313
5038
  # minor_version: "TemplateVersionPart", # required
4314
5039
  # status: "REGISTRATION_IN_PROGRESS", # accepts REGISTRATION_IN_PROGRESS, REGISTRATION_FAILED, DRAFT, PUBLISHED
5040
+ # supported_component_sources: ["DIRECTLY_DEFINED"], # accepts DIRECTLY_DEFINED
4315
5041
  # template_name: "ResourceName", # required
4316
5042
  # })
4317
5043
  #
@@ -4330,6 +5056,8 @@ module Aws::Proton
4330
5056
  # resp.service_template_version.schema #=> String
4331
5057
  # resp.service_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
4332
5058
  # resp.service_template_version.status_message #=> String
5059
+ # resp.service_template_version.supported_component_sources #=> Array
5060
+ # resp.service_template_version.supported_component_sources[0] #=> String, one of "DIRECTLY_DEFINED"
4333
5061
  # resp.service_template_version.template_name #=> String
4334
5062
  #
4335
5063
  # @see http://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/UpdateServiceTemplateVersion AWS API Documentation
@@ -4348,7 +5076,7 @@ module Aws::Proton
4348
5076
  # The repository branch.
4349
5077
  #
4350
5078
  # @option params [required, String] :repository_name
4351
- # The name of the repository, for example `myrepos/myrepo`.
5079
+ # The name of the repository (for example, `myrepos/myrepo`).
4352
5080
  #
4353
5081
  # @option params [required, String] :repository_provider
4354
5082
  # The repository provider.
@@ -4409,7 +5137,7 @@ module Aws::Proton
4409
5137
  params: params,
4410
5138
  config: config)
4411
5139
  context[:gem_name] = 'aws-sdk-proton'
4412
- context[:gem_version] = '1.13.0'
5140
+ context[:gem_version] = '1.16.0'
4413
5141
  Seahorse::Client::Request.new(handlers, context)
4414
5142
  end
4415
5143
 
@@ -4477,6 +5205,8 @@ module Aws::Proton
4477
5205
  #
4478
5206
  # | waiter_name | params | :delay | :max_attempts |
4479
5207
  # | --------------------------------------- | ----------------------------------------- | -------- | ------------- |
5208
+ # | component_deleted | {Client#get_component} | 5 | 999 |
5209
+ # | component_deployed | {Client#get_component} | 5 | 999 |
4480
5210
  # | environment_deployed | {Client#get_environment} | 5 | 999 |
4481
5211
  # | environment_template_version_registered | {Client#get_environment_template_version} | 2 | 150 |
4482
5212
  # | service_created | {Client#get_service} | 5 | 999 |
@@ -4535,6 +5265,8 @@ module Aws::Proton
4535
5265
 
4536
5266
  def waiters
4537
5267
  {
5268
+ component_deleted: Waiters::ComponentDeleted,
5269
+ component_deployed: Waiters::ComponentDeployed,
4538
5270
  environment_deployed: Waiters::EnvironmentDeployed,
4539
5271
  environment_template_version_registered: Waiters::EnvironmentTemplateVersionRegistered,
4540
5272
  service_created: Waiters::ServiceCreated,