aws-sdk-eks 1.150.0 → 1.152.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -519,6 +519,211 @@ module Aws::EKS
519
519
  include Aws::Structure
520
520
  end
521
521
 
522
+ # Configuration for integrating Argo CD with IAM Identity CenterIAM;
523
+ # Identity Center. This allows you to use your organization's identity
524
+ # provider for authentication to Argo CD.
525
+ #
526
+ # @!attribute [rw] idc_instance_arn
527
+ # The Amazon Resource Name (ARN) of the IAM Identity CenterIAM;
528
+ # Identity Center instance to use for authentication.
529
+ # @return [String]
530
+ #
531
+ # @!attribute [rw] idc_region
532
+ # The Region where your IAM Identity CenterIAM; Identity Center
533
+ # instance is located.
534
+ # @return [String]
535
+ #
536
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ArgoCdAwsIdcConfigRequest AWS API Documentation
537
+ #
538
+ class ArgoCdAwsIdcConfigRequest < Struct.new(
539
+ :idc_instance_arn,
540
+ :idc_region)
541
+ SENSITIVE = []
542
+ include Aws::Structure
543
+ end
544
+
545
+ # The response object containing IAM Identity CenterIAM; Identity Center
546
+ # configuration details for an Argo CD capability.
547
+ #
548
+ # @!attribute [rw] idc_instance_arn
549
+ # The Amazon Resource Name (ARN) of the IAM Identity CenterIAM;
550
+ # Identity Center instance used for authentication.
551
+ # @return [String]
552
+ #
553
+ # @!attribute [rw] idc_region
554
+ # The Region where the IAM Identity CenterIAM; Identity Center
555
+ # instance is located.
556
+ # @return [String]
557
+ #
558
+ # @!attribute [rw] idc_managed_application_arn
559
+ # The Amazon Resource Name (ARN) of the managed application created in
560
+ # IAM Identity CenterIAM; Identity Center for this Argo CD capability.
561
+ # This application is automatically created and managed by Amazon EKS.
562
+ # @return [String]
563
+ #
564
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ArgoCdAwsIdcConfigResponse AWS API Documentation
565
+ #
566
+ class ArgoCdAwsIdcConfigResponse < Struct.new(
567
+ :idc_instance_arn,
568
+ :idc_region,
569
+ :idc_managed_application_arn)
570
+ SENSITIVE = []
571
+ include Aws::Structure
572
+ end
573
+
574
+ # Configuration settings for an Argo CD capability. This includes the
575
+ # Kubernetes namespace, IAM Identity CenterIAM; Identity Center
576
+ # integration, RBAC role mappings, and network access configuration.
577
+ #
578
+ # @!attribute [rw] namespace
579
+ # The Kubernetes namespace where Argo CD resources will be created. If
580
+ # not specified, the default namespace is used.
581
+ # @return [String]
582
+ #
583
+ # @!attribute [rw] aws_idc
584
+ # Configuration for IAM Identity CenterIAM; Identity Center
585
+ # integration. When configured, users can authenticate to Argo CD
586
+ # using their IAM Identity CenterIAM; Identity Center credentials.
587
+ # @return [Types::ArgoCdAwsIdcConfigRequest]
588
+ #
589
+ # @!attribute [rw] rbac_role_mappings
590
+ # A list of role mappings that define which IAM Identity CenterIAM;
591
+ # Identity Center users or groups have which Argo CD roles. Each
592
+ # mapping associates an Argo CD role (`ADMIN`, `EDITOR`, or `VIEWER`)
593
+ # with one or more IAM Identity CenterIAM; Identity Center identities.
594
+ # @return [Array<Types::ArgoCdRoleMapping>]
595
+ #
596
+ # @!attribute [rw] network_access
597
+ # Configuration for network access to the Argo CD capability's
598
+ # managed API server endpoint. By default, the Argo CD server is
599
+ # accessible via a public endpoint. You can optionally specify one or
600
+ # more VPC endpoint IDs to enable private connectivity from your VPCs.
601
+ # When VPC endpoints are configured, public access is blocked and the
602
+ # Argo CD server is only accessible through the specified VPC
603
+ # endpoints.
604
+ # @return [Types::ArgoCdNetworkAccessConfigRequest]
605
+ #
606
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ArgoCdConfigRequest AWS API Documentation
607
+ #
608
+ class ArgoCdConfigRequest < Struct.new(
609
+ :namespace,
610
+ :aws_idc,
611
+ :rbac_role_mappings,
612
+ :network_access)
613
+ SENSITIVE = []
614
+ include Aws::Structure
615
+ end
616
+
617
+ # The response object containing Argo CD configuration details,
618
+ # including the server URL that you use to access the Argo CD web
619
+ # interface and API.
620
+ #
621
+ # @!attribute [rw] namespace
622
+ # The Kubernetes namespace where Argo CD resources are monitored by
623
+ # your Argo CD Capability.
624
+ # @return [String]
625
+ #
626
+ # @!attribute [rw] aws_idc
627
+ # The IAM Identity CenterIAM; Identity Center integration
628
+ # configuration.
629
+ # @return [Types::ArgoCdAwsIdcConfigResponse]
630
+ #
631
+ # @!attribute [rw] rbac_role_mappings
632
+ # The list of role mappings that define which IAM Identity CenterIAM;
633
+ # Identity Center users or groups have which Argo CD roles.
634
+ # @return [Array<Types::ArgoCdRoleMapping>]
635
+ #
636
+ # @!attribute [rw] network_access
637
+ # The network access configuration for the Argo CD capability's
638
+ # managed API server endpoint. If VPC endpoint IDs are specified,
639
+ # public access is blocked and the Argo CD server is only accessible
640
+ # through the specified VPC endpoints.
641
+ # @return [Types::ArgoCdNetworkAccessConfigResponse]
642
+ #
643
+ # @!attribute [rw] server_url
644
+ # The URL of the Argo CD server. Use this URL to access the Argo CD
645
+ # web interface and API.
646
+ # @return [String]
647
+ #
648
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ArgoCdConfigResponse AWS API Documentation
649
+ #
650
+ class ArgoCdConfigResponse < Struct.new(
651
+ :namespace,
652
+ :aws_idc,
653
+ :rbac_role_mappings,
654
+ :network_access,
655
+ :server_url)
656
+ SENSITIVE = []
657
+ include Aws::Structure
658
+ end
659
+
660
+ # Configuration for network access to the Argo CD capability's managed
661
+ # API server endpoint. When VPC endpoint IDs are specified, public
662
+ # access is blocked and the Argo CD server is only accessible through
663
+ # the specified VPC endpoints.
664
+ #
665
+ # @!attribute [rw] vpce_ids
666
+ # A list of VPC endpoint IDs to associate with the managed Argo CD API
667
+ # server endpoint. Each VPC endpoint provides private connectivity
668
+ # from a specific VPC to the Argo CD server. You can specify multiple
669
+ # VPC endpoint IDs to enable access from multiple VPCs.
670
+ # @return [Array<String>]
671
+ #
672
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ArgoCdNetworkAccessConfigRequest AWS API Documentation
673
+ #
674
+ class ArgoCdNetworkAccessConfigRequest < Struct.new(
675
+ :vpce_ids)
676
+ SENSITIVE = []
677
+ include Aws::Structure
678
+ end
679
+
680
+ # The response object containing network access configuration for the
681
+ # Argo CD capability's managed API server endpoint. If VPC endpoint IDs
682
+ # are present, public access is blocked and the Argo CD server is only
683
+ # accessible through the specified VPC endpoints.
684
+ #
685
+ # @!attribute [rw] vpce_ids
686
+ # The list of VPC endpoint IDs associated with the managed Argo CD API
687
+ # server endpoint. Each VPC endpoint provides private connectivity
688
+ # from a specific VPC to the Argo CD server.
689
+ # @return [Array<String>]
690
+ #
691
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ArgoCdNetworkAccessConfigResponse AWS API Documentation
692
+ #
693
+ class ArgoCdNetworkAccessConfigResponse < Struct.new(
694
+ :vpce_ids)
695
+ SENSITIVE = []
696
+ include Aws::Structure
697
+ end
698
+
699
+ # A mapping between an Argo CD role and IAM Identity CenterIAM; Identity
700
+ # Center identities. This defines which users or groups have specific
701
+ # permissions in Argo CD.
702
+ #
703
+ # @!attribute [rw] role
704
+ # The Argo CD role to assign. Valid values are:
705
+ #
706
+ # * `ADMIN` – Full administrative access to Argo CD.
707
+ #
708
+ # * `EDITOR` – Edit access to Argo CD resources.
709
+ #
710
+ # * `VIEWER` – Read-only access to Argo CD resources.
711
+ # @return [String]
712
+ #
713
+ # @!attribute [rw] identities
714
+ # A list of IAM Identity CenterIAM; Identity Center identities (users
715
+ # or groups) that should be assigned this Argo CD role.
716
+ # @return [Array<Types::SsoIdentity>]
717
+ #
718
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ArgoCdRoleMapping AWS API Documentation
719
+ #
720
+ class ArgoCdRoleMapping < Struct.new(
721
+ :role,
722
+ :identities)
723
+ SENSITIVE = []
724
+ include Aws::Structure
725
+ end
726
+
522
727
  # @!attribute [rw] cluster_name
523
728
  # The name of your cluster.
524
729
  # @return [String]
@@ -691,12 +896,12 @@ module Aws::EKS
691
896
  include Aws::Structure
692
897
  end
693
898
 
694
- # An Auto Scaling group that is associated with an Amazon EKS managed
695
- # node group.
899
+ # An Amazon EC2 Auto Scaling group that is associated with an Amazon EKS
900
+ # managed node group.
696
901
  #
697
902
  # @!attribute [rw] name
698
- # The name of the Auto Scaling group associated with an Amazon EKS
699
- # managed node group.
903
+ # The name of the Amazon EC2 Auto Scaling group associated with an
904
+ # Amazon EKS managed node group.
700
905
  # @return [String]
701
906
  #
702
907
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AutoScalingGroup AWS API Documentation
@@ -747,6 +952,246 @@ module Aws::EKS
747
952
  include Aws::Structure
748
953
  end
749
954
 
955
+ # An object representing a managed capability in an Amazon EKS cluster.
956
+ # This includes all configuration, status, and health information for
957
+ # the capability.
958
+ #
959
+ # @!attribute [rw] capability_name
960
+ # The unique name of the capability within the cluster.
961
+ # @return [String]
962
+ #
963
+ # @!attribute [rw] arn
964
+ # The Amazon Resource Name (ARN) of the capability.
965
+ # @return [String]
966
+ #
967
+ # @!attribute [rw] cluster_name
968
+ # The name of the Amazon EKS cluster that contains this capability.
969
+ # @return [String]
970
+ #
971
+ # @!attribute [rw] type
972
+ # The type of capability. Valid values are `ACK`, `ARGOCD`, or `KRO`.
973
+ # @return [String]
974
+ #
975
+ # @!attribute [rw] role_arn
976
+ # The Amazon Resource Name (ARN) of the IAM role that the capability
977
+ # uses to interact with Amazon Web Services services.
978
+ # @return [String]
979
+ #
980
+ # @!attribute [rw] status
981
+ # The current status of the capability. Valid values include:
982
+ #
983
+ # * `CREATING` – The capability is being created.
984
+ #
985
+ # * `ACTIVE` – The capability is running and available.
986
+ #
987
+ # * `UPDATING` – The capability is being updated.
988
+ #
989
+ # * `DELETING` – The capability is being deleted.
990
+ #
991
+ # * `CREATE_FAILED` – The capability creation failed.
992
+ #
993
+ # * `UPDATE_FAILED` – The capability update failed.
994
+ #
995
+ # * `DELETE_FAILED` – The capability deletion failed.
996
+ # @return [String]
997
+ #
998
+ # @!attribute [rw] version
999
+ # The version of the capability software that is currently running.
1000
+ # @return [String]
1001
+ #
1002
+ # @!attribute [rw] configuration
1003
+ # The configuration settings for the capability. The structure varies
1004
+ # depending on the capability type.
1005
+ # @return [Types::CapabilityConfigurationResponse]
1006
+ #
1007
+ # @!attribute [rw] tags
1008
+ # The metadata that you apply to a resource to help you categorize and
1009
+ # organize them. Each tag consists of a key and an optional value. You
1010
+ # define them.
1011
+ #
1012
+ # The following basic restrictions apply to tags:
1013
+ #
1014
+ # * Maximum number of tags per resource – 50
1015
+ #
1016
+ # * For each resource, each tag key must be unique, and each tag key
1017
+ # can have only one value.
1018
+ #
1019
+ # * Maximum key length – 128 Unicode characters in UTF-8
1020
+ #
1021
+ # * Maximum value length – 256 Unicode characters in UTF-8
1022
+ #
1023
+ # * If your tagging schema is used across multiple services and
1024
+ # resources, remember that other services may have restrictions on
1025
+ # allowed characters. Generally allowed characters are: letters,
1026
+ # numbers, and spaces representable in UTF-8, and the following
1027
+ # characters: + - = . \_ : / @.
1028
+ #
1029
+ # * Tag keys and values are case-sensitive.
1030
+ #
1031
+ # * Do not use `aws:`, `AWS:`, or any upper or lowercase combination
1032
+ # of such as a prefix for either keys or values as it is reserved
1033
+ # for Amazon Web Services use. You cannot edit or delete tag keys or
1034
+ # values with this prefix. Tags with this prefix do not count
1035
+ # against your tags per resource limit.
1036
+ # @return [Hash<String,String>]
1037
+ #
1038
+ # @!attribute [rw] health
1039
+ # Health information for the capability, including any issues that may
1040
+ # be affecting its operation.
1041
+ # @return [Types::CapabilityHealth]
1042
+ #
1043
+ # @!attribute [rw] created_at
1044
+ # The Unix epoch timestamp in seconds for when the capability was
1045
+ # created.
1046
+ # @return [Time]
1047
+ #
1048
+ # @!attribute [rw] modified_at
1049
+ # The Unix epoch timestamp in seconds for when the capability was last
1050
+ # modified.
1051
+ # @return [Time]
1052
+ #
1053
+ # @!attribute [rw] delete_propagation_policy
1054
+ # The delete propagation policy for the capability. Currently, the
1055
+ # only supported value is `RETAIN`, which keeps all resources managed
1056
+ # by the capability when the capability is deleted.
1057
+ # @return [String]
1058
+ #
1059
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Capability AWS API Documentation
1060
+ #
1061
+ class Capability < Struct.new(
1062
+ :capability_name,
1063
+ :arn,
1064
+ :cluster_name,
1065
+ :type,
1066
+ :role_arn,
1067
+ :status,
1068
+ :version,
1069
+ :configuration,
1070
+ :tags,
1071
+ :health,
1072
+ :created_at,
1073
+ :modified_at,
1074
+ :delete_propagation_policy)
1075
+ SENSITIVE = []
1076
+ include Aws::Structure
1077
+ end
1078
+
1079
+ # Configuration settings for a capability. The structure of this object
1080
+ # varies depending on the capability type.
1081
+ #
1082
+ # @!attribute [rw] argo_cd
1083
+ # Configuration settings specific to Argo CD capabilities. This field
1084
+ # is only used when creating or updating an Argo CD capability.
1085
+ # @return [Types::ArgoCdConfigRequest]
1086
+ #
1087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CapabilityConfigurationRequest AWS API Documentation
1088
+ #
1089
+ class CapabilityConfigurationRequest < Struct.new(
1090
+ :argo_cd)
1091
+ SENSITIVE = []
1092
+ include Aws::Structure
1093
+ end
1094
+
1095
+ # The response object containing capability configuration details.
1096
+ #
1097
+ # @!attribute [rw] argo_cd
1098
+ # Configuration settings for an Argo CD capability, including the
1099
+ # server URL and other Argo CD-specific settings.
1100
+ # @return [Types::ArgoCdConfigResponse]
1101
+ #
1102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CapabilityConfigurationResponse AWS API Documentation
1103
+ #
1104
+ class CapabilityConfigurationResponse < Struct.new(
1105
+ :argo_cd)
1106
+ SENSITIVE = []
1107
+ include Aws::Structure
1108
+ end
1109
+
1110
+ # Health information for a capability, including any issues that may be
1111
+ # affecting its operation.
1112
+ #
1113
+ # @!attribute [rw] issues
1114
+ # A list of issues affecting the capability. If this list is empty,
1115
+ # the capability is healthy.
1116
+ # @return [Array<Types::CapabilityIssue>]
1117
+ #
1118
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CapabilityHealth AWS API Documentation
1119
+ #
1120
+ class CapabilityHealth < Struct.new(
1121
+ :issues)
1122
+ SENSITIVE = []
1123
+ include Aws::Structure
1124
+ end
1125
+
1126
+ # An issue affecting a capability's health or operation.
1127
+ #
1128
+ # @!attribute [rw] code
1129
+ # A code identifying the type of issue. This can be used to
1130
+ # programmatically handle specific issue types.
1131
+ # @return [String]
1132
+ #
1133
+ # @!attribute [rw] message
1134
+ # A human-readable message describing the issue and potential
1135
+ # remediation steps.
1136
+ # @return [String]
1137
+ #
1138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CapabilityIssue AWS API Documentation
1139
+ #
1140
+ class CapabilityIssue < Struct.new(
1141
+ :code,
1142
+ :message)
1143
+ SENSITIVE = []
1144
+ include Aws::Structure
1145
+ end
1146
+
1147
+ # A summary of a capability, containing basic information without the
1148
+ # full configuration details. This is returned by the `ListCapabilities`
1149
+ # operation.
1150
+ #
1151
+ # @!attribute [rw] capability_name
1152
+ # The unique name of the capability within the cluster.
1153
+ # @return [String]
1154
+ #
1155
+ # @!attribute [rw] arn
1156
+ # The Amazon Resource Name (ARN) of the capability.
1157
+ # @return [String]
1158
+ #
1159
+ # @!attribute [rw] type
1160
+ # The type of capability. Valid values are `ACK`, `ARGOCD`, or `KRO`.
1161
+ # @return [String]
1162
+ #
1163
+ # @!attribute [rw] status
1164
+ # The current status of the capability.
1165
+ # @return [String]
1166
+ #
1167
+ # @!attribute [rw] version
1168
+ # The version of the capability software that is currently running.
1169
+ # @return [String]
1170
+ #
1171
+ # @!attribute [rw] created_at
1172
+ # The Unix epoch timestamp in seconds for when the capability was
1173
+ # created.
1174
+ # @return [Time]
1175
+ #
1176
+ # @!attribute [rw] modified_at
1177
+ # The Unix epoch timestamp in seconds for when the capability was last
1178
+ # modified.
1179
+ # @return [Time]
1180
+ #
1181
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CapabilitySummary AWS API Documentation
1182
+ #
1183
+ class CapabilitySummary < Struct.new(
1184
+ :capability_name,
1185
+ :arn,
1186
+ :type,
1187
+ :status,
1188
+ :version,
1189
+ :created_at,
1190
+ :modified_at)
1191
+ SENSITIVE = []
1192
+ include Aws::Structure
1193
+ end
1194
+
750
1195
  # An object representing the `certificate-authority-data` for your
751
1196
  # cluster.
752
1197
  #
@@ -1000,6 +1445,11 @@ module Aws::EKS
1000
1445
  # active state.
1001
1446
  # @return [Boolean]
1002
1447
  #
1448
+ # @!attribute [rw] control_plane_scaling_config
1449
+ # The control plane scaling tier configuration. For more information,
1450
+ # see EKS Provisioned Control Plane in the Amazon EKS User Guide.
1451
+ # @return [Types::ControlPlaneScalingConfig]
1452
+ #
1003
1453
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Cluster AWS API Documentation
1004
1454
  #
1005
1455
  class Cluster < Struct.new(
@@ -1029,7 +1479,8 @@ module Aws::EKS
1029
1479
  :remote_network_config,
1030
1480
  :compute_config,
1031
1481
  :storage_config,
1032
- :deletion_protection)
1482
+ :deletion_protection,
1483
+ :control_plane_scaling_config)
1033
1484
  SENSITIVE = []
1034
1485
  include Aws::Structure
1035
1486
  end
@@ -1324,6 +1775,24 @@ module Aws::EKS
1324
1775
  include Aws::Structure
1325
1776
  end
1326
1777
 
1778
+ # The control plane scaling tier configuration. For more information,
1779
+ # see EKS Provisioned Control Plane in the Amazon EKS User Guide.
1780
+ #
1781
+ # @!attribute [rw] tier
1782
+ # The control plane scaling tier configuration. Available options are
1783
+ # `standard`, `tier-xl`, `tier-2xl`, or `tier-4xl`. For more
1784
+ # information, see EKS Provisioned Control Plane in the Amazon EKS
1785
+ # User Guide.
1786
+ # @return [String]
1787
+ #
1788
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ControlPlaneScalingConfig AWS API Documentation
1789
+ #
1790
+ class ControlPlaneScalingConfig < Struct.new(
1791
+ :tier)
1792
+ SENSITIVE = []
1793
+ include Aws::Structure
1794
+ end
1795
+
1327
1796
  # The access configuration information for the cluster.
1328
1797
  #
1329
1798
  # @!attribute [rw] bootstrap_cluster_creator_admin_permissions
@@ -1627,6 +2096,133 @@ module Aws::EKS
1627
2096
  include Aws::Structure
1628
2097
  end
1629
2098
 
2099
+ # @!attribute [rw] capability_name
2100
+ # A unique name for the capability. The name must be unique within
2101
+ # your cluster and can contain alphanumeric characters, hyphens, and
2102
+ # underscores.
2103
+ # @return [String]
2104
+ #
2105
+ # @!attribute [rw] cluster_name
2106
+ # The name of the Amazon EKS cluster where you want to create the
2107
+ # capability.
2108
+ # @return [String]
2109
+ #
2110
+ # @!attribute [rw] client_request_token
2111
+ # A unique, case-sensitive identifier that you provide to ensure the
2112
+ # idempotency of the request. This token is valid for 24 hours after
2113
+ # creation. If you retry a request with the same client request token
2114
+ # and the same parameters after the original request has completed
2115
+ # successfully, the result of the original request is returned.
2116
+ #
2117
+ # **A suitable default value is auto-generated.** You should normally
2118
+ # not need to pass this option.
2119
+ # @return [String]
2120
+ #
2121
+ # @!attribute [rw] type
2122
+ # The type of capability to create. Valid values are:
2123
+ #
2124
+ # * `ACK` – Amazon Web Services Controllers for Kubernetes (ACK),
2125
+ # which lets you manage resources directly from Kubernetes.
2126
+ #
2127
+ # * `ARGOCD` – Argo CD for GitOps-based continuous delivery.
2128
+ #
2129
+ # * `KRO` – Kube Resource Orchestrator (KRO) for composing and
2130
+ # managing custom Kubernetes resources.
2131
+ # @return [String]
2132
+ #
2133
+ # @!attribute [rw] role_arn
2134
+ # The Amazon Resource Name (ARN) of the IAM role that the capability
2135
+ # uses to interact with Amazon Web Services services. This role must
2136
+ # have a trust policy that allows the EKS service principal to assume
2137
+ # it, and it must have the necessary permissions for the capability
2138
+ # type you're creating.
2139
+ #
2140
+ # For ACK capabilities, the role needs permissions to manage the
2141
+ # resources you want to control through Kubernetes. For Argo CD
2142
+ # capabilities, the role needs permissions to access Git repositories
2143
+ # and Secrets Manager. For KRO capabilities, the role needs
2144
+ # permissions based on the resources you'll be orchestrating.
2145
+ # @return [String]
2146
+ #
2147
+ # @!attribute [rw] configuration
2148
+ # The configuration settings for the capability. The structure of this
2149
+ # object varies depending on the capability type. For Argo CD
2150
+ # capabilities, you can configure IAM Identity CenterIAM; Identity
2151
+ # Center integration, RBAC role mappings, and network access settings.
2152
+ # @return [Types::CapabilityConfigurationRequest]
2153
+ #
2154
+ # @!attribute [rw] tags
2155
+ # The metadata that you apply to a resource to help you categorize and
2156
+ # organize them. Each tag consists of a key and an optional value. You
2157
+ # define them.
2158
+ #
2159
+ # The following basic restrictions apply to tags:
2160
+ #
2161
+ # * Maximum number of tags per resource – 50
2162
+ #
2163
+ # * For each resource, each tag key must be unique, and each tag key
2164
+ # can have only one value.
2165
+ #
2166
+ # * Maximum key length – 128 Unicode characters in UTF-8
2167
+ #
2168
+ # * Maximum value length – 256 Unicode characters in UTF-8
2169
+ #
2170
+ # * If your tagging schema is used across multiple services and
2171
+ # resources, remember that other services may have restrictions on
2172
+ # allowed characters. Generally allowed characters are: letters,
2173
+ # numbers, and spaces representable in UTF-8, and the following
2174
+ # characters: + - = . \_ : / @.
2175
+ #
2176
+ # * Tag keys and values are case-sensitive.
2177
+ #
2178
+ # * Do not use `aws:`, `AWS:`, or any upper or lowercase combination
2179
+ # of such as a prefix for either keys or values as it is reserved
2180
+ # for Amazon Web Services use. You cannot edit or delete tag keys or
2181
+ # values with this prefix. Tags with this prefix do not count
2182
+ # against your tags per resource limit.
2183
+ # @return [Hash<String,String>]
2184
+ #
2185
+ # @!attribute [rw] delete_propagation_policy
2186
+ # Specifies how Kubernetes resources managed by the capability should
2187
+ # be handled when the capability is deleted. Currently, the only
2188
+ # supported value is `RETAIN` which retains all Kubernetes resources
2189
+ # managed by the capability when the capability is deleted.
2190
+ #
2191
+ # Because resources are retained, all Kubernetes resources created by
2192
+ # the capability should be deleted from the cluster before deleting
2193
+ # the capability itself. After the capability is deleted, these
2194
+ # resources become difficult to manage because the controller is no
2195
+ # longer available.
2196
+ # @return [String]
2197
+ #
2198
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateCapabilityRequest AWS API Documentation
2199
+ #
2200
+ class CreateCapabilityRequest < Struct.new(
2201
+ :capability_name,
2202
+ :cluster_name,
2203
+ :client_request_token,
2204
+ :type,
2205
+ :role_arn,
2206
+ :configuration,
2207
+ :tags,
2208
+ :delete_propagation_policy)
2209
+ SENSITIVE = []
2210
+ include Aws::Structure
2211
+ end
2212
+
2213
+ # @!attribute [rw] capability
2214
+ # An object containing information about the newly created capability,
2215
+ # including its name, ARN, status, and configuration.
2216
+ # @return [Types::Capability]
2217
+ #
2218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateCapabilityResponse AWS API Documentation
2219
+ #
2220
+ class CreateCapabilityResponse < Struct.new(
2221
+ :capability)
2222
+ SENSITIVE = []
2223
+ include Aws::Structure
2224
+ end
2225
+
1630
2226
  # @!attribute [rw] name
1631
2227
  # The unique name to give to your cluster. The name can contain only
1632
2228
  # alphanumeric characters (case-sensitive), hyphens, and underscores.
@@ -1803,6 +2399,11 @@ module Aws::EKS
1803
2399
  # deletion. Default value is `false`.
1804
2400
  # @return [Boolean]
1805
2401
  #
2402
+ # @!attribute [rw] control_plane_scaling_config
2403
+ # The control plane scaling tier configuration. For more information,
2404
+ # see EKS Provisioned Control Plane in the Amazon EKS User Guide.
2405
+ # @return [Types::ControlPlaneScalingConfig]
2406
+ #
1806
2407
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateClusterRequest AWS API Documentation
1807
2408
  #
1808
2409
  class CreateClusterRequest < Struct.new(
@@ -1823,7 +2424,8 @@ module Aws::EKS
1823
2424
  :remote_network_config,
1824
2425
  :compute_config,
1825
2426
  :storage_config,
1826
- :deletion_protection)
2427
+ :deletion_protection,
2428
+ :control_plane_scaling_config)
1827
2429
  SENSITIVE = []
1828
2430
  include Aws::Structure
1829
2431
  end
@@ -2440,6 +3042,37 @@ module Aws::EKS
2440
3042
  include Aws::Structure
2441
3043
  end
2442
3044
 
3045
+ # @!attribute [rw] cluster_name
3046
+ # The name of the Amazon EKS cluster that contains the capability you
3047
+ # want to delete.
3048
+ # @return [String]
3049
+ #
3050
+ # @!attribute [rw] capability_name
3051
+ # The name of the capability to delete.
3052
+ # @return [String]
3053
+ #
3054
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteCapabilityRequest AWS API Documentation
3055
+ #
3056
+ class DeleteCapabilityRequest < Struct.new(
3057
+ :cluster_name,
3058
+ :capability_name)
3059
+ SENSITIVE = []
3060
+ include Aws::Structure
3061
+ end
3062
+
3063
+ # @!attribute [rw] capability
3064
+ # An object containing information about the deleted capability,
3065
+ # including its final status and configuration.
3066
+ # @return [Types::Capability]
3067
+ #
3068
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteCapabilityResponse AWS API Documentation
3069
+ #
3070
+ class DeleteCapabilityResponse < Struct.new(
3071
+ :capability)
3072
+ SENSITIVE = []
3073
+ include Aws::Structure
3074
+ end
3075
+
2443
3076
  # @!attribute [rw] name
2444
3077
  # The name of the cluster to delete.
2445
3078
  # @return [String]
@@ -2857,6 +3490,39 @@ module Aws::EKS
2857
3490
  include Aws::Structure
2858
3491
  end
2859
3492
 
3493
+ # @!attribute [rw] cluster_name
3494
+ # The name of the Amazon EKS cluster that contains the capability you
3495
+ # want to describe.
3496
+ # @return [String]
3497
+ #
3498
+ # @!attribute [rw] capability_name
3499
+ # The name of the capability to describe.
3500
+ # @return [String]
3501
+ #
3502
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCapabilityRequest AWS API Documentation
3503
+ #
3504
+ class DescribeCapabilityRequest < Struct.new(
3505
+ :cluster_name,
3506
+ :capability_name)
3507
+ SENSITIVE = []
3508
+ include Aws::Structure
3509
+ end
3510
+
3511
+ # @!attribute [rw] capability
3512
+ # An object containing detailed information about the capability,
3513
+ # including its name, ARN, type, status, version, configuration,
3514
+ # health status, and timestamps for when it was created and last
3515
+ # modified.
3516
+ # @return [Types::Capability]
3517
+ #
3518
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCapabilityResponse AWS API Documentation
3519
+ #
3520
+ class DescribeCapabilityResponse < Struct.new(
3521
+ :capability)
3522
+ SENSITIVE = []
3523
+ include Aws::Structure
3524
+ end
3525
+
2860
3526
  # @!attribute [rw] name
2861
3527
  # The name of your cluster.
2862
3528
  # @return [String]
@@ -3183,13 +3849,18 @@ module Aws::EKS
3183
3849
  # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html
3184
3850
  # @return [String]
3185
3851
  #
3852
+ # @!attribute [rw] capability_name
3853
+ # The name of the capability for which you want to describe updates.
3854
+ # @return [String]
3855
+ #
3186
3856
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeUpdateRequest AWS API Documentation
3187
3857
  #
3188
3858
  class DescribeUpdateRequest < Struct.new(
3189
3859
  :name,
3190
3860
  :update_id,
3191
3861
  :nodegroup_name,
3192
- :addon_name)
3862
+ :addon_name,
3863
+ :capability_name)
3193
3864
  SENSITIVE = []
3194
3865
  include Aws::Structure
3195
3866
  end
@@ -3997,12 +4668,13 @@ module Aws::EKS
3997
4668
  # is failing to authenticate or authorize with your Kubernetes
3998
4669
  # cluster API server.
3999
4670
  #
4000
- # * **AsgInstanceLaunchFailures**: Your Auto Scaling group is
4001
- # experiencing failures while attempting to launch instances.
4671
+ # * **AsgInstanceLaunchFailures**: Your Amazon EC2 Auto Scaling group
4672
+ # is experiencing failures while attempting to launch instances.
4002
4673
  #
4003
- # * **AutoScalingGroupNotFound**: We couldn't find the Auto Scaling
4004
- # group associated with the managed node group. You may be able to
4005
- # recreate an Auto Scaling group with the same settings to recover.
4674
+ # * **AutoScalingGroupNotFound**: We couldn't find the Amazon EC2
4675
+ # Auto Scaling group associated with the managed node group. You may
4676
+ # be able to recreate an Amazon EC2 Auto Scaling group with the same
4677
+ # settings to recover.
4006
4678
  #
4007
4679
  # * **ClusterUnreachable**: Amazon EKS or one or more of your managed
4008
4680
  # nodes is unable to to communicate with your Kubernetes cluster API
@@ -4556,6 +5228,59 @@ module Aws::EKS
4556
5228
  include Aws::Structure
4557
5229
  end
4558
5230
 
5231
+ # @!attribute [rw] cluster_name
5232
+ # The name of the Amazon EKS cluster for which you want to list
5233
+ # capabilities.
5234
+ # @return [String]
5235
+ #
5236
+ # @!attribute [rw] next_token
5237
+ # The `nextToken` value returned from a previous paginated request,
5238
+ # where `maxResults` was used and the results exceeded the value of
5239
+ # that parameter. Pagination continues from the end of the previous
5240
+ # results that returned the `nextToken` value. This value is null when
5241
+ # there are no more results to return.
5242
+ # @return [String]
5243
+ #
5244
+ # @!attribute [rw] max_results
5245
+ # The maximum number of results to return in a single call. To
5246
+ # retrieve the remaining results, make another call with the returned
5247
+ # `nextToken` value. If you don't specify a value, the default is 100
5248
+ # results.
5249
+ # @return [Integer]
5250
+ #
5251
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListCapabilitiesRequest AWS API Documentation
5252
+ #
5253
+ class ListCapabilitiesRequest < Struct.new(
5254
+ :cluster_name,
5255
+ :next_token,
5256
+ :max_results)
5257
+ SENSITIVE = []
5258
+ include Aws::Structure
5259
+ end
5260
+
5261
+ # @!attribute [rw] capabilities
5262
+ # A list of capability summary objects, each containing basic
5263
+ # information about a capability including its name, ARN, type,
5264
+ # status, version, and timestamps.
5265
+ # @return [Array<Types::CapabilitySummary>]
5266
+ #
5267
+ # @!attribute [rw] next_token
5268
+ # The `nextToken` value to include in a future `ListCapabilities`
5269
+ # request. When the results of a `ListCapabilities` request exceed
5270
+ # `maxResults`, you can use this value to retrieve the next page of
5271
+ # results. This value is null when there are no more results to
5272
+ # return.
5273
+ # @return [String]
5274
+ #
5275
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListCapabilitiesResponse AWS API Documentation
5276
+ #
5277
+ class ListCapabilitiesResponse < Struct.new(
5278
+ :capabilities,
5279
+ :next_token)
5280
+ SENSITIVE = []
5281
+ include Aws::Structure
5282
+ end
5283
+
4559
5284
  # @!attribute [rw] max_results
4560
5285
  # The maximum number of results, returned in paginated output. You
4561
5286
  # receive `maxResults` in a single page, along with a `nextToken`
@@ -5075,6 +5800,10 @@ module Aws::EKS
5075
5800
  # The names of the installed add-ons that have available updates.
5076
5801
  # @return [String]
5077
5802
  #
5803
+ # @!attribute [rw] capability_name
5804
+ # The name of the capability for which you want to list updates.
5805
+ # @return [String]
5806
+ #
5078
5807
  # @!attribute [rw] next_token
5079
5808
  # The `nextToken` value returned from a previous paginated request,
5080
5809
  # where `maxResults` was used and the results exceeded the value of
@@ -5105,6 +5834,7 @@ module Aws::EKS
5105
5834
  :name,
5106
5835
  :nodegroup_name,
5107
5836
  :addon_name,
5837
+ :capability_name,
5108
5838
  :next_token,
5109
5839
  :max_results)
5110
5840
  SENSITIVE = []
@@ -5493,10 +6223,11 @@ module Aws::EKS
5493
6223
  include Aws::Structure
5494
6224
  end
5495
6225
 
5496
- # An object representing the scaling configuration details for the Auto
5497
- # Scaling group that is associated with your node group. When creating a
5498
- # node group, you must specify all or none of the properties. When
5499
- # updating a node group, you can specify any or none of the properties.
6226
+ # An object representing the scaling configuration details for the
6227
+ # Amazon EC2 Auto Scaling group that is associated with your node group.
6228
+ # When creating a node group, you must specify all or none of the
6229
+ # properties. When updating a node group, you can specify any or none of
6230
+ # the properties.
5500
6231
  #
5501
6232
  # @!attribute [rw] min_size
5502
6233
  # The minimum number of nodes that the managed node group can scale in
@@ -6590,6 +7321,27 @@ module Aws::EKS
6590
7321
  include Aws::Structure
6591
7322
  end
6592
7323
 
7324
+ # An IAM Identity CenterIAM; Identity Center identity (user or group)
7325
+ # that can be assigned permissions in a capability.
7326
+ #
7327
+ # @!attribute [rw] id
7328
+ # The unique identifier of the IAM Identity CenterIAM; Identity Center
7329
+ # user or group.
7330
+ # @return [String]
7331
+ #
7332
+ # @!attribute [rw] type
7333
+ # The type of identity. Valid values are `SSO_USER` or `SSO_GROUP`.
7334
+ # @return [String]
7335
+ #
7336
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/SsoIdentity AWS API Documentation
7337
+ #
7338
+ class SsoIdentity < Struct.new(
7339
+ :id,
7340
+ :type)
7341
+ SENSITIVE = []
7342
+ include Aws::Structure
7343
+ end
7344
+
6593
7345
  # @!attribute [rw] cluster_name
6594
7346
  # The name of the cluster for the refresh insights operation.
6595
7347
  # @return [String]
@@ -7032,6 +7784,107 @@ module Aws::EKS
7032
7784
  include Aws::Structure
7033
7785
  end
7034
7786
 
7787
+ # Configuration updates for an Argo CD capability. You only need to
7788
+ # specify the fields you want to update.
7789
+ #
7790
+ # @!attribute [rw] rbac_role_mappings
7791
+ # Updated RBAC role mappings for the Argo CD capability. You can add,
7792
+ # update, or remove role mappings.
7793
+ # @return [Types::UpdateRoleMappings]
7794
+ #
7795
+ # @!attribute [rw] network_access
7796
+ # Updated network access configuration for the Argo CD capability's
7797
+ # managed API server endpoint. You can add or remove VPC endpoint
7798
+ # associations to control which VPCs have private access to the Argo
7799
+ # CD server.
7800
+ # @return [Types::ArgoCdNetworkAccessConfigRequest]
7801
+ #
7802
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateArgoCdConfig AWS API Documentation
7803
+ #
7804
+ class UpdateArgoCdConfig < Struct.new(
7805
+ :rbac_role_mappings,
7806
+ :network_access)
7807
+ SENSITIVE = []
7808
+ include Aws::Structure
7809
+ end
7810
+
7811
+ # Configuration updates for a capability. The structure varies depending
7812
+ # on the capability type.
7813
+ #
7814
+ # @!attribute [rw] argo_cd
7815
+ # Configuration updates specific to Argo CD capabilities.
7816
+ # @return [Types::UpdateArgoCdConfig]
7817
+ #
7818
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateCapabilityConfiguration AWS API Documentation
7819
+ #
7820
+ class UpdateCapabilityConfiguration < Struct.new(
7821
+ :argo_cd)
7822
+ SENSITIVE = []
7823
+ include Aws::Structure
7824
+ end
7825
+
7826
+ # @!attribute [rw] cluster_name
7827
+ # The name of the Amazon EKS cluster that contains the capability you
7828
+ # want to update configuration for.
7829
+ # @return [String]
7830
+ #
7831
+ # @!attribute [rw] capability_name
7832
+ # The name of the capability to update configuration for.
7833
+ # @return [String]
7834
+ #
7835
+ # @!attribute [rw] role_arn
7836
+ # The Amazon Resource Name (ARN) of the IAM role that the capability
7837
+ # uses to interact with Amazon Web Services services. If you specify a
7838
+ # new role ARN, the capability will start using the new role for all
7839
+ # subsequent operations.
7840
+ # @return [String]
7841
+ #
7842
+ # @!attribute [rw] configuration
7843
+ # The updated configuration settings for the capability. You only need
7844
+ # to specify the configuration parameters you want to change. For Argo
7845
+ # CD capabilities, you can update RBAC role mappings and network
7846
+ # access settings.
7847
+ # @return [Types::UpdateCapabilityConfiguration]
7848
+ #
7849
+ # @!attribute [rw] client_request_token
7850
+ # A unique, case-sensitive identifier that you provide to ensure the
7851
+ # idempotency of the request. This token is valid for 24 hours after
7852
+ # creation.
7853
+ #
7854
+ # **A suitable default value is auto-generated.** You should normally
7855
+ # not need to pass this option.
7856
+ # @return [String]
7857
+ #
7858
+ # @!attribute [rw] delete_propagation_policy
7859
+ # The updated delete propagation policy for the capability. Currently,
7860
+ # the only supported value is `RETAIN`.
7861
+ # @return [String]
7862
+ #
7863
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateCapabilityRequest AWS API Documentation
7864
+ #
7865
+ class UpdateCapabilityRequest < Struct.new(
7866
+ :cluster_name,
7867
+ :capability_name,
7868
+ :role_arn,
7869
+ :configuration,
7870
+ :client_request_token,
7871
+ :delete_propagation_policy)
7872
+ SENSITIVE = []
7873
+ include Aws::Structure
7874
+ end
7875
+
7876
+ # @!attribute [rw] update
7877
+ # An object representing an asynchronous update.
7878
+ # @return [Types::Update]
7879
+ #
7880
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateCapabilityResponse AWS API Documentation
7881
+ #
7882
+ class UpdateCapabilityResponse < Struct.new(
7883
+ :update)
7884
+ SENSITIVE = []
7885
+ include Aws::Structure
7886
+ end
7887
+
7035
7888
  # @!attribute [rw] name
7036
7889
  # The name of the Amazon EKS cluster to update.
7037
7890
  # @return [String]
@@ -7132,6 +7985,11 @@ module Aws::EKS
7132
7985
  # the cluster can be deleted normally.
7133
7986
  # @return [Boolean]
7134
7987
  #
7988
+ # @!attribute [rw] control_plane_scaling_config
7989
+ # The control plane scaling tier configuration. For more information,
7990
+ # see EKS Provisioned Control Plane in the Amazon EKS User Guide.
7991
+ # @return [Types::ControlPlaneScalingConfig]
7992
+ #
7135
7993
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterConfigRequest AWS API Documentation
7136
7994
  #
7137
7995
  class UpdateClusterConfigRequest < Struct.new(
@@ -7146,7 +8004,8 @@ module Aws::EKS
7146
8004
  :kubernetes_network_config,
7147
8005
  :storage_config,
7148
8006
  :remote_network_config,
7149
- :deletion_protection)
8007
+ :deletion_protection,
8008
+ :control_plane_scaling_config)
7150
8009
  SENSITIVE = []
7151
8010
  include Aws::Structure
7152
8011
  end
@@ -7347,14 +8206,16 @@ module Aws::EKS
7347
8206
  #
7348
8207
  # @!attribute [rw] version
7349
8208
  # The Kubernetes version to update to. If no version is specified,
7350
- # then the Kubernetes version of the node group does not change. You
7351
- # can specify the Kubernetes version of the cluster to update the node
7352
- # group to the latest AMI version of the cluster's Kubernetes
7353
- # version. If you specify `launchTemplate`, and your launch template
7354
- # uses a custom AMI, then don't specify `version`, or the node group
7355
- # update will fail. For more information about using launch templates
7356
- # with Amazon EKS, see [Customizing managed nodes with launch
7357
- # templates][1] in the *Amazon EKS User Guide*.
8209
+ # then the node group will be updated to match the cluster's current
8210
+ # Kubernetes version, and the latest available AMI for that version
8211
+ # will be used. You can also specify the Kubernetes version of the
8212
+ # cluster to update the node group to the latest AMI version of the
8213
+ # cluster's Kubernetes version. If you specify `launchTemplate`, and
8214
+ # your launch template uses a custom AMI, then don't specify
8215
+ # `version`, or the node group update will fail. For more information
8216
+ # about using launch templates with Amazon EKS, see [Customizing
8217
+ # managed nodes with launch templates][1] in the *Amazon EKS User
8218
+ # Guide*.
7358
8219
  #
7359
8220
  #
7360
8221
  #
@@ -7545,6 +8406,30 @@ module Aws::EKS
7545
8406
  include Aws::Structure
7546
8407
  end
7547
8408
 
8409
+ # Updates to RBAC role mappings for an Argo CD capability. You can add,
8410
+ # update, or remove role mappings in a single operation.
8411
+ #
8412
+ # @!attribute [rw] add_or_update_role_mappings
8413
+ # A list of role mappings to add or update. If a mapping for the
8414
+ # specified role already exists, it will be updated with the new
8415
+ # identities. If it doesn't exist, a new mapping will be created.
8416
+ # @return [Array<Types::ArgoCdRoleMapping>]
8417
+ #
8418
+ # @!attribute [rw] remove_role_mappings
8419
+ # A list of role mappings to remove from the RBAC configuration. Each
8420
+ # mapping specifies an Argo CD role (`ADMIN`, `EDITOR`, or `VIEWER`)
8421
+ # and the identities to remove from that role.
8422
+ # @return [Array<Types::ArgoCdRoleMapping>]
8423
+ #
8424
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateRoleMappings AWS API Documentation
8425
+ #
8426
+ class UpdateRoleMappings < Struct.new(
8427
+ :add_or_update_role_mappings,
8428
+ :remove_role_mappings)
8429
+ SENSITIVE = []
8430
+ include Aws::Structure
8431
+ end
8432
+
7548
8433
  # An object representing the details of an update to a taints payload.
7549
8434
  # For more information, see [Node taints on managed node groups][1] in
7550
8435
  # the *Amazon EKS User Guide*.