aws-sdk-eks 1.28.0 → 1.29.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1a8179eeb4541ce7e9577f8681c275f91c91e086
4
- data.tar.gz: '0837f4f1e1b7f3693d15589695abc1b491855d8d'
3
+ metadata.gz: ab062e754d7103f2d652aed8623a8e4f515c18ba
4
+ data.tar.gz: 810a2937ad71c13a9b44ae7d6807561b6baf30ef
5
5
  SHA512:
6
- metadata.gz: 7d82562a24efeb2507cb99f8677fc90236604bc5bf50dd91290c7f946177ae47ac1767c51895650fa2703a0c0ad811442053718ad0db3317a0f6b7fec01a26ec
7
- data.tar.gz: 67abfb1cd0904e90d5ad026679ecef9012e7b964363c3a7fcf78e777374d6e76dfb6e8115af2051fb0b71f707d7be1a36895d95a4f5abb034d331b0429253027
6
+ metadata.gz: de9c790f59a099f704e09688675473e479b8b94705ab9eaddfc577d774cce30942f39762b0a6f21b082caf17567f4f1c6181e0503a7097e1148473cfaef9678f
7
+ data.tar.gz: 3d5042176dba4f4600ac81bfad3dead010a78742ce6fb53fccec8a037db981c2df344ec1e3e3e6b4f96ad2fd78dc8d7c1dad566b69f5df47246c54e19730535b
@@ -43,6 +43,6 @@ require_relative 'aws-sdk-eks/customizations'
43
43
  # @service
44
44
  module Aws::EKS
45
45
 
46
- GEM_VERSION = '1.28.0'
46
+ GEM_VERSION = '1.29.0'
47
47
 
48
48
  end
@@ -461,6 +461,143 @@ module Aws::EKS
461
461
  req.send_request(options)
462
462
  end
463
463
 
464
+ # Creates an AWS Fargate profile for your Amazon EKS cluster. You must
465
+ # have at least one Fargate profile in a cluster to be able to schedule
466
+ # pods on Fargate infrastructure.
467
+ #
468
+ # The Fargate profile allows an administrator to declare which pods run
469
+ # on Fargate infrastructure and specify which pods run on which Fargate
470
+ # profile. This declaration is done through the profile’s selectors.
471
+ # Each profile can have up to five selectors that contain a namespace
472
+ # and labels. A namespace is required for every selector. The label
473
+ # field consists of multiple optional key-value pairs. Pods that match
474
+ # the selectors are scheduled on Fargate infrastructure. If a
475
+ # to-be-scheduled pod matches any of the selectors in the Fargate
476
+ # profile, then that pod is scheduled on Fargate infrastructure.
477
+ #
478
+ # When you create a Fargate profile, you must specify a pod execution
479
+ # role to use with the pods that are scheduled with the profile. This
480
+ # role is added to the cluster's Kubernetes [Role Based Access
481
+ # Control][1] (RBAC) for authorization so that the `kubelet` that is
482
+ # running on the Fargate infrastructure can register with your Amazon
483
+ # EKS cluster. This role is what allows Fargate infrastructure to appear
484
+ # in your cluster as nodes. The pod execution role also provides IAM
485
+ # permissions to the Fargate infrastructure to allow read access to
486
+ # Amazon ECR image repositories. For more information, see [Pod
487
+ # Execution Role][2] in the *Amazon EKS User Guide*.
488
+ #
489
+ # Fargate profiles are immutable. However, you can create a new updated
490
+ # profile to replace an existing profile and then delete the original
491
+ # after the updated profile has finished creating.
492
+ #
493
+ # If any Fargate profiles in a cluster are in the `DELETING` status, you
494
+ # must wait for that Fargate profile to finish deleting before you can
495
+ # create any other profiles in that cluster.
496
+ #
497
+ # For more information, see [AWS Fargate Profile][3] in the *Amazon EKS
498
+ # User Guide*.
499
+ #
500
+ #
501
+ #
502
+ # [1]: https://kubernetes.io/docs/admin/authorization/rbac/
503
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html
504
+ # [3]: https://docs.aws.amazon.com/eks/latest/userguide/fargate-profile.html
505
+ #
506
+ # @option params [required, String] :fargate_profile_name
507
+ # The name of the Fargate profile.
508
+ #
509
+ # @option params [required, String] :cluster_name
510
+ # The name of the Amazon EKS cluster to apply the Fargate profile to.
511
+ #
512
+ # @option params [required, String] :pod_execution_role_arn
513
+ # The Amazon Resource Name (ARN) of the pod execution role to use for
514
+ # pods that match the selectors in the Fargate profile. The pod
515
+ # execution role allows Fargate infrastructure to register with your
516
+ # cluster as a node, and it provides read access to Amazon ECR image
517
+ # repositories. For more information, see [Pod Execution Role][1] in the
518
+ # *Amazon EKS User Guide*.
519
+ #
520
+ #
521
+ #
522
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html
523
+ #
524
+ # @option params [Array<String>] :subnets
525
+ # The IDs of subnets to launch Fargate pods into. At this time, Fargate
526
+ # pods are not assigned public IP addresses, so only private subnets
527
+ # (with no direct route to an Internet Gateway) are accepted for this
528
+ # parameter.
529
+ #
530
+ # @option params [Array<Types::FargateProfileSelector>] :selectors
531
+ # The selectors to match for pods to use this Fargate profile. Each
532
+ # selector must have an associated namespace. Optionally, you can also
533
+ # specify labels for a namespace. You may specify up to five selectors
534
+ # in a Fargate profile.
535
+ #
536
+ # @option params [String] :client_request_token
537
+ # Unique, case-sensitive identifier that you provide to ensure the
538
+ # idempotency of the request.
539
+ #
540
+ # **A suitable default value is auto-generated.** You should normally
541
+ # not need to pass this option.**
542
+ #
543
+ # @option params [Hash<String,String>] :tags
544
+ # The metadata to apply to the Fargate profile to assist with
545
+ # categorization and organization. Each tag consists of a key and an
546
+ # optional value, both of which you define. Fargate profile tags do not
547
+ # propagate to any other resources associated with the Fargate profile,
548
+ # such as the pods that are scheduled with it.
549
+ #
550
+ # @return [Types::CreateFargateProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
551
+ #
552
+ # * {Types::CreateFargateProfileResponse#fargate_profile #fargate_profile} => Types::FargateProfile
553
+ #
554
+ # @example Request syntax with placeholder values
555
+ #
556
+ # resp = client.create_fargate_profile({
557
+ # fargate_profile_name: "String", # required
558
+ # cluster_name: "String", # required
559
+ # pod_execution_role_arn: "String", # required
560
+ # subnets: ["String"],
561
+ # selectors: [
562
+ # {
563
+ # namespace: "String",
564
+ # labels: {
565
+ # "String" => "String",
566
+ # },
567
+ # },
568
+ # ],
569
+ # client_request_token: "String",
570
+ # tags: {
571
+ # "TagKey" => "TagValue",
572
+ # },
573
+ # })
574
+ #
575
+ # @example Response structure
576
+ #
577
+ # resp.fargate_profile.fargate_profile_name #=> String
578
+ # resp.fargate_profile.fargate_profile_arn #=> String
579
+ # resp.fargate_profile.cluster_name #=> String
580
+ # resp.fargate_profile.created_at #=> Time
581
+ # resp.fargate_profile.pod_execution_role_arn #=> String
582
+ # resp.fargate_profile.subnets #=> Array
583
+ # resp.fargate_profile.subnets[0] #=> String
584
+ # resp.fargate_profile.selectors #=> Array
585
+ # resp.fargate_profile.selectors[0].namespace #=> String
586
+ # resp.fargate_profile.selectors[0].labels #=> Hash
587
+ # resp.fargate_profile.selectors[0].labels["String"] #=> String
588
+ # resp.fargate_profile.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "CREATE_FAILED", "DELETE_FAILED"
589
+ # resp.fargate_profile.tags #=> Hash
590
+ # resp.fargate_profile.tags["TagKey"] #=> String
591
+ #
592
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateFargateProfile AWS API Documentation
593
+ #
594
+ # @overload create_fargate_profile(params = {})
595
+ # @param [Hash] params ({})
596
+ def create_fargate_profile(params = {}, options = {})
597
+ req = build_request(:create_fargate_profile, params)
598
+ req.send_request(options)
599
+ end
600
+
464
601
  # Creates a managed worker node group for an Amazon EKS cluster. You can
465
602
  # only create a node group for your cluster that is equal to the current
466
603
  # Kubernetes version for the cluster. All node groups are created with
@@ -484,7 +621,7 @@ module Aws::EKS
484
621
  # The unique name to give your node group.
485
622
  #
486
623
  # @option params [Types::NodegroupScalingConfig] :scaling_config
487
- # The scaling configuration details for the AutoScaling group that is
624
+ # The scaling configuration details for the Auto Scaling group that is
488
625
  # created for your node group.
489
626
  #
490
627
  # @option params [Integer] :disk_size
@@ -492,7 +629,7 @@ module Aws::EKS
492
629
  # default disk size is 20 GiB.
493
630
  #
494
631
  # @option params [required, Array<String>] :subnets
495
- # The subnets to use for the AutoScaling group that is created for your
632
+ # The subnets to use for the Auto Scaling group that is created for your
496
633
  # node group. These subnets must have the tag key
497
634
  # `kubernetes.io/cluster/CLUSTER_NAME` with a value of `shared`, where
498
635
  # `CLUSTER_NAME` is replaced with the name of your cluster.
@@ -506,7 +643,7 @@ module Aws::EKS
506
643
  # @option params [String] :ami_type
507
644
  # The AMI type for your node group. GPU instance types should use the
508
645
  # `AL2_x86_64_GPU` AMI type, which uses the Amazon EKS-optimized Linux
509
- # AMI with GPU support; non-GPU instances should use the `AL2_x86_64`
646
+ # AMI with GPU support. Non-GPU instances should use the `AL2_x86_64`
510
647
  # AMI type, which uses the Amazon EKS-optimized Linux AMI.
511
648
  #
512
649
  # @option params [Types::RemoteAccessConfig] :remote_access
@@ -648,8 +785,9 @@ module Aws::EKS
648
785
  # being able to delete the VPC. For more information, see [Deleting a
649
786
  # Cluster][1] in the *Amazon EKS User Guide*.
650
787
  #
651
- # If you have managed node groups attached to the cluster, you must
652
- # delete them first. For more information, see DeleteNodegroup.
788
+ # If you have managed node groups or Fargate profiles attached to the
789
+ # cluster, you must delete them first. For more information, see
790
+ # DeleteNodegroup andDeleteFargateProfile.
653
791
  #
654
792
  #
655
793
  #
@@ -718,6 +856,62 @@ module Aws::EKS
718
856
  req.send_request(options)
719
857
  end
720
858
 
859
+ # Deletes an AWS Fargate profile.
860
+ #
861
+ # When you delete a Fargate profile, any pods that were scheduled onto
862
+ # Fargate infrastructure with the profile are deleted. If those pods
863
+ # match another Fargate profile, then they are scheduled on Fargate
864
+ # infrastructure with that profile. If they no longer match any Fargate
865
+ # profiles, then they are not scheduled on Fargate infrastructure.
866
+ #
867
+ # Only one Fargate profile in a cluster can be in the `DELETING` status
868
+ # at a time. You must wait for a Fargate profile to finish deleting
869
+ # before you can delete any other profiles in that cluster.
870
+ #
871
+ # @option params [required, String] :cluster_name
872
+ # The name of the Amazon EKS cluster associated with the Fargate profile
873
+ # to delete.
874
+ #
875
+ # @option params [required, String] :fargate_profile_name
876
+ # The name of the Fargate profile to delete.
877
+ #
878
+ # @return [Types::DeleteFargateProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
879
+ #
880
+ # * {Types::DeleteFargateProfileResponse#fargate_profile #fargate_profile} => Types::FargateProfile
881
+ #
882
+ # @example Request syntax with placeholder values
883
+ #
884
+ # resp = client.delete_fargate_profile({
885
+ # cluster_name: "String", # required
886
+ # fargate_profile_name: "String", # required
887
+ # })
888
+ #
889
+ # @example Response structure
890
+ #
891
+ # resp.fargate_profile.fargate_profile_name #=> String
892
+ # resp.fargate_profile.fargate_profile_arn #=> String
893
+ # resp.fargate_profile.cluster_name #=> String
894
+ # resp.fargate_profile.created_at #=> Time
895
+ # resp.fargate_profile.pod_execution_role_arn #=> String
896
+ # resp.fargate_profile.subnets #=> Array
897
+ # resp.fargate_profile.subnets[0] #=> String
898
+ # resp.fargate_profile.selectors #=> Array
899
+ # resp.fargate_profile.selectors[0].namespace #=> String
900
+ # resp.fargate_profile.selectors[0].labels #=> Hash
901
+ # resp.fargate_profile.selectors[0].labels["String"] #=> String
902
+ # resp.fargate_profile.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "CREATE_FAILED", "DELETE_FAILED"
903
+ # resp.fargate_profile.tags #=> Hash
904
+ # resp.fargate_profile.tags["TagKey"] #=> String
905
+ #
906
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteFargateProfile AWS API Documentation
907
+ #
908
+ # @overload delete_fargate_profile(params = {})
909
+ # @param [Hash] params ({})
910
+ def delete_fargate_profile(params = {}, options = {})
911
+ req = build_request(:delete_fargate_profile, params)
912
+ req.send_request(options)
913
+ end
914
+
721
915
  # Deletes an Amazon EKS node group for a cluster.
722
916
  #
723
917
  # @option params [required, String] :cluster_name
@@ -884,6 +1078,52 @@ module Aws::EKS
884
1078
  req.send_request(options)
885
1079
  end
886
1080
 
1081
+ # Returns descriptive information about an AWS Fargate profile.
1082
+ #
1083
+ # @option params [required, String] :cluster_name
1084
+ # The name of the Amazon EKS cluster associated with the Fargate
1085
+ # profile.
1086
+ #
1087
+ # @option params [required, String] :fargate_profile_name
1088
+ # The name of the Fargate profile to describe.
1089
+ #
1090
+ # @return [Types::DescribeFargateProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1091
+ #
1092
+ # * {Types::DescribeFargateProfileResponse#fargate_profile #fargate_profile} => Types::FargateProfile
1093
+ #
1094
+ # @example Request syntax with placeholder values
1095
+ #
1096
+ # resp = client.describe_fargate_profile({
1097
+ # cluster_name: "String", # required
1098
+ # fargate_profile_name: "String", # required
1099
+ # })
1100
+ #
1101
+ # @example Response structure
1102
+ #
1103
+ # resp.fargate_profile.fargate_profile_name #=> String
1104
+ # resp.fargate_profile.fargate_profile_arn #=> String
1105
+ # resp.fargate_profile.cluster_name #=> String
1106
+ # resp.fargate_profile.created_at #=> Time
1107
+ # resp.fargate_profile.pod_execution_role_arn #=> String
1108
+ # resp.fargate_profile.subnets #=> Array
1109
+ # resp.fargate_profile.subnets[0] #=> String
1110
+ # resp.fargate_profile.selectors #=> Array
1111
+ # resp.fargate_profile.selectors[0].namespace #=> String
1112
+ # resp.fargate_profile.selectors[0].labels #=> Hash
1113
+ # resp.fargate_profile.selectors[0].labels["String"] #=> String
1114
+ # resp.fargate_profile.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "CREATE_FAILED", "DELETE_FAILED"
1115
+ # resp.fargate_profile.tags #=> Hash
1116
+ # resp.fargate_profile.tags["TagKey"] #=> String
1117
+ #
1118
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfile AWS API Documentation
1119
+ #
1120
+ # @overload describe_fargate_profile(params = {})
1121
+ # @param [Hash] params ({})
1122
+ def describe_fargate_profile(params = {}, options = {})
1123
+ req = build_request(:describe_fargate_profile, params)
1124
+ req.send_request(options)
1125
+ end
1126
+
887
1127
  # Returns descriptive information about an Amazon EKS node group.
888
1128
  #
889
1129
  # @option params [required, String] :cluster_name
@@ -1068,6 +1308,59 @@ module Aws::EKS
1068
1308
  req.send_request(options)
1069
1309
  end
1070
1310
 
1311
+ # Lists the AWS Fargate profiles associated with the specified cluster
1312
+ # in your AWS account in the specified Region.
1313
+ #
1314
+ # @option params [required, String] :cluster_name
1315
+ # The name of the Amazon EKS cluster that you would like to listFargate
1316
+ # profiles in.
1317
+ #
1318
+ # @option params [Integer] :max_results
1319
+ # The maximum number of Fargate profile results returned by
1320
+ # `ListFargateProfiles` in paginated output. When you use this
1321
+ # parameter, `ListFargateProfiles` returns only `maxResults` results in
1322
+ # a single page along with a `nextToken` response element. You can see
1323
+ # the remaining results of the initial request by sending another
1324
+ # `ListFargateProfiles` request with the returned `nextToken` value.
1325
+ # This value can be between 1 and 100. If you don't use this parameter,
1326
+ # `ListFargateProfiles` returns up to 100 results and a `nextToken`
1327
+ # value if applicable.
1328
+ #
1329
+ # @option params [String] :next_token
1330
+ # The `nextToken` value returned from a previous paginated
1331
+ # `ListFargateProfiles` request where `maxResults` was used and the
1332
+ # results exceeded the value of that parameter. Pagination continues
1333
+ # from the end of the previous results that returned the `nextToken`
1334
+ # value.
1335
+ #
1336
+ # @return [Types::ListFargateProfilesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1337
+ #
1338
+ # * {Types::ListFargateProfilesResponse#fargate_profile_names #fargate_profile_names} => Array&lt;String&gt;
1339
+ # * {Types::ListFargateProfilesResponse#next_token #next_token} => String
1340
+ #
1341
+ # @example Request syntax with placeholder values
1342
+ #
1343
+ # resp = client.list_fargate_profiles({
1344
+ # cluster_name: "String", # required
1345
+ # max_results: 1,
1346
+ # next_token: "String",
1347
+ # })
1348
+ #
1349
+ # @example Response structure
1350
+ #
1351
+ # resp.fargate_profile_names #=> Array
1352
+ # resp.fargate_profile_names[0] #=> String
1353
+ # resp.next_token #=> String
1354
+ #
1355
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListFargateProfiles AWS API Documentation
1356
+ #
1357
+ # @overload list_fargate_profiles(params = {})
1358
+ # @param [Hash] params ({})
1359
+ def list_fargate_profiles(params = {}, options = {})
1360
+ req = build_request(:list_fargate_profiles, params)
1361
+ req.send_request(options)
1362
+ end
1363
+
1071
1364
  # Lists the Amazon EKS node groups associated with the specified cluster
1072
1365
  # in your AWS account in the specified Region.
1073
1366
  #
@@ -1487,7 +1780,7 @@ module Aws::EKS
1487
1780
  # after the update.
1488
1781
  #
1489
1782
  # @option params [Types::NodegroupScalingConfig] :scaling_config
1490
- # The scaling configuration details for the AutoScaling group after the
1783
+ # The scaling configuration details for the Auto Scaling group after the
1491
1784
  # update.
1492
1785
  #
1493
1786
  # @option params [String] :client_request_token
@@ -1592,10 +1885,10 @@ module Aws::EKS
1592
1885
  #
1593
1886
  # @option params [Boolean] :force
1594
1887
  # Force the update if the existing node group's pods are unable to be
1595
- # drained due to a pod disruption budget issue. If a previous update
1596
- # fails because pods could not be drained, you can force the update
1597
- # after it fails to terminate the old node regardless of whether or not
1598
- # any pods are running on the node.
1888
+ # drained due to a pod disruption budget issue. If an update fails
1889
+ # because pods could not be drained, you can force the update after it
1890
+ # fails to terminate the old node whether or not any pods are running on
1891
+ # the node.
1599
1892
  #
1600
1893
  # @option params [String] :client_request_token
1601
1894
  # Unique, case-sensitive identifier that you provide to ensure the
@@ -1656,7 +1949,7 @@ module Aws::EKS
1656
1949
  params: params,
1657
1950
  config: config)
1658
1951
  context[:gem_name] = 'aws-sdk-eks'
1659
- context[:gem_version] = '1.28.0'
1952
+ context[:gem_version] = '1.29.0'
1660
1953
  Seahorse::Client::Request.new(handlers, context)
1661
1954
  end
1662
1955
 
@@ -26,14 +26,20 @@ module Aws::EKS
26
26
  ClusterStatus = Shapes::StringShape.new(name: 'ClusterStatus')
27
27
  CreateClusterRequest = Shapes::StructureShape.new(name: 'CreateClusterRequest')
28
28
  CreateClusterResponse = Shapes::StructureShape.new(name: 'CreateClusterResponse')
29
+ CreateFargateProfileRequest = Shapes::StructureShape.new(name: 'CreateFargateProfileRequest')
30
+ CreateFargateProfileResponse = Shapes::StructureShape.new(name: 'CreateFargateProfileResponse')
29
31
  CreateNodegroupRequest = Shapes::StructureShape.new(name: 'CreateNodegroupRequest')
30
32
  CreateNodegroupResponse = Shapes::StructureShape.new(name: 'CreateNodegroupResponse')
31
33
  DeleteClusterRequest = Shapes::StructureShape.new(name: 'DeleteClusterRequest')
32
34
  DeleteClusterResponse = Shapes::StructureShape.new(name: 'DeleteClusterResponse')
35
+ DeleteFargateProfileRequest = Shapes::StructureShape.new(name: 'DeleteFargateProfileRequest')
36
+ DeleteFargateProfileResponse = Shapes::StructureShape.new(name: 'DeleteFargateProfileResponse')
33
37
  DeleteNodegroupRequest = Shapes::StructureShape.new(name: 'DeleteNodegroupRequest')
34
38
  DeleteNodegroupResponse = Shapes::StructureShape.new(name: 'DeleteNodegroupResponse')
35
39
  DescribeClusterRequest = Shapes::StructureShape.new(name: 'DescribeClusterRequest')
36
40
  DescribeClusterResponse = Shapes::StructureShape.new(name: 'DescribeClusterResponse')
41
+ DescribeFargateProfileRequest = Shapes::StructureShape.new(name: 'DescribeFargateProfileRequest')
42
+ DescribeFargateProfileResponse = Shapes::StructureShape.new(name: 'DescribeFargateProfileResponse')
37
43
  DescribeNodegroupRequest = Shapes::StructureShape.new(name: 'DescribeNodegroupRequest')
38
44
  DescribeNodegroupResponse = Shapes::StructureShape.new(name: 'DescribeNodegroupResponse')
39
45
  DescribeUpdateRequest = Shapes::StructureShape.new(name: 'DescribeUpdateRequest')
@@ -41,6 +47,12 @@ module Aws::EKS
41
47
  ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
42
48
  ErrorDetail = Shapes::StructureShape.new(name: 'ErrorDetail')
43
49
  ErrorDetails = Shapes::ListShape.new(name: 'ErrorDetails')
50
+ FargateProfile = Shapes::StructureShape.new(name: 'FargateProfile')
51
+ FargateProfileLabel = Shapes::MapShape.new(name: 'FargateProfileLabel')
52
+ FargateProfileSelector = Shapes::StructureShape.new(name: 'FargateProfileSelector')
53
+ FargateProfileSelectors = Shapes::ListShape.new(name: 'FargateProfileSelectors')
54
+ FargateProfileStatus = Shapes::StringShape.new(name: 'FargateProfileStatus')
55
+ FargateProfilesRequestMaxResults = Shapes::IntegerShape.new(name: 'FargateProfilesRequestMaxResults')
44
56
  Identity = Shapes::StructureShape.new(name: 'Identity')
45
57
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
46
58
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
@@ -49,6 +61,8 @@ module Aws::EKS
49
61
  ListClustersRequest = Shapes::StructureShape.new(name: 'ListClustersRequest')
50
62
  ListClustersRequestMaxResults = Shapes::IntegerShape.new(name: 'ListClustersRequestMaxResults')
51
63
  ListClustersResponse = Shapes::StructureShape.new(name: 'ListClustersResponse')
64
+ ListFargateProfilesRequest = Shapes::StructureShape.new(name: 'ListFargateProfilesRequest')
65
+ ListFargateProfilesResponse = Shapes::StructureShape.new(name: 'ListFargateProfilesResponse')
52
66
  ListNodegroupsRequest = Shapes::StructureShape.new(name: 'ListNodegroupsRequest')
53
67
  ListNodegroupsRequestMaxResults = Shapes::IntegerShape.new(name: 'ListNodegroupsRequestMaxResults')
54
68
  ListNodegroupsResponse = Shapes::StructureShape.new(name: 'ListNodegroupsResponse')
@@ -154,6 +168,18 @@ module Aws::EKS
154
168
  CreateClusterResponse.add_member(:cluster, Shapes::ShapeRef.new(shape: Cluster, location_name: "cluster"))
155
169
  CreateClusterResponse.struct_class = Types::CreateClusterResponse
156
170
 
171
+ CreateFargateProfileRequest.add_member(:fargate_profile_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "fargateProfileName"))
172
+ CreateFargateProfileRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
173
+ CreateFargateProfileRequest.add_member(:pod_execution_role_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "podExecutionRoleArn"))
174
+ CreateFargateProfileRequest.add_member(:subnets, Shapes::ShapeRef.new(shape: StringList, location_name: "subnets"))
175
+ CreateFargateProfileRequest.add_member(:selectors, Shapes::ShapeRef.new(shape: FargateProfileSelectors, location_name: "selectors"))
176
+ CreateFargateProfileRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: String, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
177
+ CreateFargateProfileRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
178
+ CreateFargateProfileRequest.struct_class = Types::CreateFargateProfileRequest
179
+
180
+ CreateFargateProfileResponse.add_member(:fargate_profile, Shapes::ShapeRef.new(shape: FargateProfile, location_name: "fargateProfile"))
181
+ CreateFargateProfileResponse.struct_class = Types::CreateFargateProfileResponse
182
+
157
183
  CreateNodegroupRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
158
184
  CreateNodegroupRequest.add_member(:nodegroup_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "nodegroupName"))
159
185
  CreateNodegroupRequest.add_member(:scaling_config, Shapes::ShapeRef.new(shape: NodegroupScalingConfig, location_name: "scalingConfig"))
@@ -179,6 +205,13 @@ module Aws::EKS
179
205
  DeleteClusterResponse.add_member(:cluster, Shapes::ShapeRef.new(shape: Cluster, location_name: "cluster"))
180
206
  DeleteClusterResponse.struct_class = Types::DeleteClusterResponse
181
207
 
208
+ DeleteFargateProfileRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
209
+ DeleteFargateProfileRequest.add_member(:fargate_profile_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "fargateProfileName"))
210
+ DeleteFargateProfileRequest.struct_class = Types::DeleteFargateProfileRequest
211
+
212
+ DeleteFargateProfileResponse.add_member(:fargate_profile, Shapes::ShapeRef.new(shape: FargateProfile, location_name: "fargateProfile"))
213
+ DeleteFargateProfileResponse.struct_class = Types::DeleteFargateProfileResponse
214
+
182
215
  DeleteNodegroupRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
183
216
  DeleteNodegroupRequest.add_member(:nodegroup_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "nodegroupName"))
184
217
  DeleteNodegroupRequest.struct_class = Types::DeleteNodegroupRequest
@@ -192,6 +225,13 @@ module Aws::EKS
192
225
  DescribeClusterResponse.add_member(:cluster, Shapes::ShapeRef.new(shape: Cluster, location_name: "cluster"))
193
226
  DescribeClusterResponse.struct_class = Types::DescribeClusterResponse
194
227
 
228
+ DescribeFargateProfileRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
229
+ DescribeFargateProfileRequest.add_member(:fargate_profile_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "fargateProfileName"))
230
+ DescribeFargateProfileRequest.struct_class = Types::DescribeFargateProfileRequest
231
+
232
+ DescribeFargateProfileResponse.add_member(:fargate_profile, Shapes::ShapeRef.new(shape: FargateProfile, location_name: "fargateProfile"))
233
+ DescribeFargateProfileResponse.struct_class = Types::DescribeFargateProfileResponse
234
+
195
235
  DescribeNodegroupRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
196
236
  DescribeNodegroupRequest.add_member(:nodegroup_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "nodegroupName"))
197
237
  DescribeNodegroupRequest.struct_class = Types::DescribeNodegroupRequest
@@ -214,11 +254,32 @@ module Aws::EKS
214
254
 
215
255
  ErrorDetails.member = Shapes::ShapeRef.new(shape: ErrorDetail)
216
256
 
257
+ FargateProfile.add_member(:fargate_profile_name, Shapes::ShapeRef.new(shape: String, location_name: "fargateProfileName"))
258
+ FargateProfile.add_member(:fargate_profile_arn, Shapes::ShapeRef.new(shape: String, location_name: "fargateProfileArn"))
259
+ FargateProfile.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, location_name: "clusterName"))
260
+ FargateProfile.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdAt"))
261
+ FargateProfile.add_member(:pod_execution_role_arn, Shapes::ShapeRef.new(shape: String, location_name: "podExecutionRoleArn"))
262
+ FargateProfile.add_member(:subnets, Shapes::ShapeRef.new(shape: StringList, location_name: "subnets"))
263
+ FargateProfile.add_member(:selectors, Shapes::ShapeRef.new(shape: FargateProfileSelectors, location_name: "selectors"))
264
+ FargateProfile.add_member(:status, Shapes::ShapeRef.new(shape: FargateProfileStatus, location_name: "status"))
265
+ FargateProfile.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
266
+ FargateProfile.struct_class = Types::FargateProfile
267
+
268
+ FargateProfileLabel.key = Shapes::ShapeRef.new(shape: String)
269
+ FargateProfileLabel.value = Shapes::ShapeRef.new(shape: String)
270
+
271
+ FargateProfileSelector.add_member(:namespace, Shapes::ShapeRef.new(shape: String, location_name: "namespace"))
272
+ FargateProfileSelector.add_member(:labels, Shapes::ShapeRef.new(shape: FargateProfileLabel, location_name: "labels"))
273
+ FargateProfileSelector.struct_class = Types::FargateProfileSelector
274
+
275
+ FargateProfileSelectors.member = Shapes::ShapeRef.new(shape: FargateProfileSelector)
276
+
217
277
  Identity.add_member(:oidc, Shapes::ShapeRef.new(shape: OIDC, location_name: "oidc"))
218
278
  Identity.struct_class = Types::Identity
219
279
 
220
280
  InvalidParameterException.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, location_name: "clusterName"))
221
281
  InvalidParameterException.add_member(:nodegroup_name, Shapes::ShapeRef.new(shape: String, location_name: "nodegroupName"))
282
+ InvalidParameterException.add_member(:fargate_profile_name, Shapes::ShapeRef.new(shape: String, location_name: "fargateProfileName"))
222
283
  InvalidParameterException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
223
284
  InvalidParameterException.struct_class = Types::InvalidParameterException
224
285
 
@@ -242,6 +303,15 @@ module Aws::EKS
242
303
  ListClustersResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
243
304
  ListClustersResponse.struct_class = Types::ListClustersResponse
244
305
 
306
+ ListFargateProfilesRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
307
+ ListFargateProfilesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: FargateProfilesRequestMaxResults, location: "querystring", location_name: "maxResults"))
308
+ ListFargateProfilesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "nextToken"))
309
+ ListFargateProfilesRequest.struct_class = Types::ListFargateProfilesRequest
310
+
311
+ ListFargateProfilesResponse.add_member(:fargate_profile_names, Shapes::ShapeRef.new(shape: StringList, location_name: "fargateProfileNames"))
312
+ ListFargateProfilesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
313
+ ListFargateProfilesResponse.struct_class = Types::ListFargateProfilesResponse
314
+
245
315
  ListNodegroupsRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "name"))
246
316
  ListNodegroupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListNodegroupsRequestMaxResults, location: "querystring", location_name: "maxResults"))
247
317
  ListNodegroupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "nextToken"))
@@ -333,6 +403,7 @@ module Aws::EKS
333
403
 
334
404
  ResourceNotFoundException.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, location_name: "clusterName"))
335
405
  ResourceNotFoundException.add_member(:nodegroup_name, Shapes::ShapeRef.new(shape: String, location_name: "nodegroupName"))
406
+ ResourceNotFoundException.add_member(:fargate_profile_name, Shapes::ShapeRef.new(shape: String, location_name: "fargateProfileName"))
336
407
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
337
408
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
338
409
 
@@ -478,6 +549,20 @@ module Aws::EKS
478
549
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedAvailabilityZoneException)
479
550
  end)
480
551
 
552
+ api.add_operation(:create_fargate_profile, Seahorse::Model::Operation.new.tap do |o|
553
+ o.name = "CreateFargateProfile"
554
+ o.http_method = "POST"
555
+ o.http_request_uri = "/clusters/{name}/fargate-profiles"
556
+ o.input = Shapes::ShapeRef.new(shape: CreateFargateProfileRequest)
557
+ o.output = Shapes::ShapeRef.new(shape: CreateFargateProfileResponse)
558
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
559
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
560
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
561
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
562
+ o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceededException)
563
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedAvailabilityZoneException)
564
+ end)
565
+
481
566
  api.add_operation(:create_nodegroup, Seahorse::Model::Operation.new.tap do |o|
482
567
  o.name = "CreateNodegroup"
483
568
  o.http_method = "POST"
@@ -506,6 +591,18 @@ module Aws::EKS
506
591
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
507
592
  end)
508
593
 
594
+ api.add_operation(:delete_fargate_profile, Seahorse::Model::Operation.new.tap do |o|
595
+ o.name = "DeleteFargateProfile"
596
+ o.http_method = "DELETE"
597
+ o.http_request_uri = "/clusters/{name}/fargate-profiles/{fargateProfileName}"
598
+ o.input = Shapes::ShapeRef.new(shape: DeleteFargateProfileRequest)
599
+ o.output = Shapes::ShapeRef.new(shape: DeleteFargateProfileResponse)
600
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
601
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
602
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
603
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
604
+ end)
605
+
509
606
  api.add_operation(:delete_nodegroup, Seahorse::Model::Operation.new.tap do |o|
510
607
  o.name = "DeleteNodegroup"
511
608
  o.http_method = "DELETE"
@@ -532,6 +629,18 @@ module Aws::EKS
532
629
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
533
630
  end)
534
631
 
632
+ api.add_operation(:describe_fargate_profile, Seahorse::Model::Operation.new.tap do |o|
633
+ o.name = "DescribeFargateProfile"
634
+ o.http_method = "GET"
635
+ o.http_request_uri = "/clusters/{name}/fargate-profiles/{fargateProfileName}"
636
+ o.input = Shapes::ShapeRef.new(shape: DescribeFargateProfileRequest)
637
+ o.output = Shapes::ShapeRef.new(shape: DescribeFargateProfileResponse)
638
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
639
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
640
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
641
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
642
+ end)
643
+
535
644
  api.add_operation(:describe_nodegroup, Seahorse::Model::Operation.new.tap do |o|
536
645
  o.name = "DescribeNodegroup"
537
646
  o.http_method = "GET"
@@ -575,6 +684,24 @@ module Aws::EKS
575
684
  )
576
685
  end)
577
686
 
687
+ api.add_operation(:list_fargate_profiles, Seahorse::Model::Operation.new.tap do |o|
688
+ o.name = "ListFargateProfiles"
689
+ o.http_method = "GET"
690
+ o.http_request_uri = "/clusters/{name}/fargate-profiles"
691
+ o.input = Shapes::ShapeRef.new(shape: ListFargateProfilesRequest)
692
+ o.output = Shapes::ShapeRef.new(shape: ListFargateProfilesResponse)
693
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
694
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
695
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
696
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
697
+ o[:pager] = Aws::Pager.new(
698
+ limit_key: "max_results",
699
+ tokens: {
700
+ "next_token" => "next_token"
701
+ }
702
+ )
703
+ end)
704
+
578
705
  api.add_operation(:list_nodegroups, Seahorse::Model::Operation.new.tap do |o|
579
706
  o.name = "ListNodegroups"
580
707
  o.http_method = "GET"
@@ -71,6 +71,11 @@ module Aws::EKS
71
71
  @data[:nodegroup_name]
72
72
  end
73
73
 
74
+ # @return [String]
75
+ def fargate_profile_name
76
+ @data[:fargate_profile_name]
77
+ end
78
+
74
79
  # @return [String]
75
80
  def message
76
81
  @message || @data[:message]
@@ -191,6 +196,11 @@ module Aws::EKS
191
196
  @data[:nodegroup_name]
192
197
  end
193
198
 
199
+ # @return [String]
200
+ def fargate_profile_name
201
+ @data[:fargate_profile_name]
202
+ end
203
+
194
204
  # @return [String]
195
205
  def message
196
206
  @message || @data[:message]
@@ -8,11 +8,11 @@
8
8
  module Aws::EKS
9
9
  module Types
10
10
 
11
- # An AutoScaling group that is associated with an Amazon EKS managed
11
+ # An Auto Scaling group that is associated with an Amazon EKS managed
12
12
  # node group.
13
13
  #
14
14
  # @!attribute [rw] name
15
- # The name of the AutoScaling group associated with an Amazon EKS
15
+ # The name of the Auto Scaling group associated with an Amazon EKS
16
16
  # managed node group.
17
17
  # @return [String]
18
18
  #
@@ -63,6 +63,7 @@ module Aws::EKS
63
63
  # @return [String]
64
64
  #
65
65
  # @!attribute [rw] nodegroup_name
66
+ # The Amazon EKS managed node group associated with the exception.
66
67
  # @return [String]
67
68
  #
68
69
  # @!attribute [rw] message
@@ -297,6 +298,103 @@ module Aws::EKS
297
298
  include Aws::Structure
298
299
  end
299
300
 
301
+ # @note When making an API call, you may pass CreateFargateProfileRequest
302
+ # data as a hash:
303
+ #
304
+ # {
305
+ # fargate_profile_name: "String", # required
306
+ # cluster_name: "String", # required
307
+ # pod_execution_role_arn: "String", # required
308
+ # subnets: ["String"],
309
+ # selectors: [
310
+ # {
311
+ # namespace: "String",
312
+ # labels: {
313
+ # "String" => "String",
314
+ # },
315
+ # },
316
+ # ],
317
+ # client_request_token: "String",
318
+ # tags: {
319
+ # "TagKey" => "TagValue",
320
+ # },
321
+ # }
322
+ #
323
+ # @!attribute [rw] fargate_profile_name
324
+ # The name of the Fargate profile.
325
+ # @return [String]
326
+ #
327
+ # @!attribute [rw] cluster_name
328
+ # The name of the Amazon EKS cluster to apply the Fargate profile to.
329
+ # @return [String]
330
+ #
331
+ # @!attribute [rw] pod_execution_role_arn
332
+ # The Amazon Resource Name (ARN) of the pod execution role to use for
333
+ # pods that match the selectors in the Fargate profile. The pod
334
+ # execution role allows Fargate infrastructure to register with your
335
+ # cluster as a node, and it provides read access to Amazon ECR image
336
+ # repositories. For more information, see [Pod Execution Role][1] in
337
+ # the *Amazon EKS User Guide*.
338
+ #
339
+ #
340
+ #
341
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html
342
+ # @return [String]
343
+ #
344
+ # @!attribute [rw] subnets
345
+ # The IDs of subnets to launch Fargate pods into. At this time,
346
+ # Fargate pods are not assigned public IP addresses, so only private
347
+ # subnets (with no direct route to an Internet Gateway) are accepted
348
+ # for this parameter.
349
+ # @return [Array<String>]
350
+ #
351
+ # @!attribute [rw] selectors
352
+ # The selectors to match for pods to use this Fargate profile. Each
353
+ # selector must have an associated namespace. Optionally, you can also
354
+ # specify labels for a namespace. You may specify up to five selectors
355
+ # in a Fargate profile.
356
+ # @return [Array<Types::FargateProfileSelector>]
357
+ #
358
+ # @!attribute [rw] client_request_token
359
+ # Unique, case-sensitive identifier that you provide to ensure the
360
+ # idempotency of the request.
361
+ #
362
+ # **A suitable default value is auto-generated.** You should normally
363
+ # not need to pass this option.
364
+ # @return [String]
365
+ #
366
+ # @!attribute [rw] tags
367
+ # The metadata to apply to the Fargate profile to assist with
368
+ # categorization and organization. Each tag consists of a key and an
369
+ # optional value, both of which you define. Fargate profile tags do
370
+ # not propagate to any other resources associated with the Fargate
371
+ # profile, such as the pods that are scheduled with it.
372
+ # @return [Hash<String,String>]
373
+ #
374
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateFargateProfileRequest AWS API Documentation
375
+ #
376
+ class CreateFargateProfileRequest < Struct.new(
377
+ :fargate_profile_name,
378
+ :cluster_name,
379
+ :pod_execution_role_arn,
380
+ :subnets,
381
+ :selectors,
382
+ :client_request_token,
383
+ :tags)
384
+ include Aws::Structure
385
+ end
386
+
387
+ # @!attribute [rw] fargate_profile
388
+ # The full description of your new Fargate profile.
389
+ # @return [Types::FargateProfile]
390
+ #
391
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateFargateProfileResponse AWS API Documentation
392
+ #
393
+ class CreateFargateProfileResponse < Struct.new(
394
+ :fargate_profile)
395
+ include Aws::Structure
396
+ end
397
+
300
398
  # @note When making an API call, you may pass CreateNodegroupRequest
301
399
  # data as a hash:
302
400
  #
@@ -337,7 +435,7 @@ module Aws::EKS
337
435
  # @return [String]
338
436
  #
339
437
  # @!attribute [rw] scaling_config
340
- # The scaling configuration details for the AutoScaling group that is
438
+ # The scaling configuration details for the Auto Scaling group that is
341
439
  # created for your node group.
342
440
  # @return [Types::NodegroupScalingConfig]
343
441
  #
@@ -347,7 +445,7 @@ module Aws::EKS
347
445
  # @return [Integer]
348
446
  #
349
447
  # @!attribute [rw] subnets
350
- # The subnets to use for the AutoScaling group that is created for
448
+ # The subnets to use for the Auto Scaling group that is created for
351
449
  # your node group. These subnets must have the tag key
352
450
  # `kubernetes.io/cluster/CLUSTER_NAME` with a value of `shared`, where
353
451
  # `CLUSTER_NAME` is replaced with the name of your cluster.
@@ -364,7 +462,7 @@ module Aws::EKS
364
462
  # @!attribute [rw] ami_type
365
463
  # The AMI type for your node group. GPU instance types should use the
366
464
  # `AL2_x86_64_GPU` AMI type, which uses the Amazon EKS-optimized Linux
367
- # AMI with GPU support; non-GPU instances should use the `AL2_x86_64`
465
+ # AMI with GPU support. Non-GPU instances should use the `AL2_x86_64`
368
466
  # AMI type, which uses the Amazon EKS-optimized Linux AMI.
369
467
  # @return [String]
370
468
  #
@@ -486,6 +584,42 @@ module Aws::EKS
486
584
  include Aws::Structure
487
585
  end
488
586
 
587
+ # @note When making an API call, you may pass DeleteFargateProfileRequest
588
+ # data as a hash:
589
+ #
590
+ # {
591
+ # cluster_name: "String", # required
592
+ # fargate_profile_name: "String", # required
593
+ # }
594
+ #
595
+ # @!attribute [rw] cluster_name
596
+ # The name of the Amazon EKS cluster associated with the Fargate
597
+ # profile to delete.
598
+ # @return [String]
599
+ #
600
+ # @!attribute [rw] fargate_profile_name
601
+ # The name of the Fargate profile to delete.
602
+ # @return [String]
603
+ #
604
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteFargateProfileRequest AWS API Documentation
605
+ #
606
+ class DeleteFargateProfileRequest < Struct.new(
607
+ :cluster_name,
608
+ :fargate_profile_name)
609
+ include Aws::Structure
610
+ end
611
+
612
+ # @!attribute [rw] fargate_profile
613
+ # The deleted Fargate profile.
614
+ # @return [Types::FargateProfile]
615
+ #
616
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteFargateProfileResponse AWS API Documentation
617
+ #
618
+ class DeleteFargateProfileResponse < Struct.new(
619
+ :fargate_profile)
620
+ include Aws::Structure
621
+ end
622
+
489
623
  # @note When making an API call, you may pass DeleteNodegroupRequest
490
624
  # data as a hash:
491
625
  #
@@ -551,6 +685,42 @@ module Aws::EKS
551
685
  include Aws::Structure
552
686
  end
553
687
 
688
+ # @note When making an API call, you may pass DescribeFargateProfileRequest
689
+ # data as a hash:
690
+ #
691
+ # {
692
+ # cluster_name: "String", # required
693
+ # fargate_profile_name: "String", # required
694
+ # }
695
+ #
696
+ # @!attribute [rw] cluster_name
697
+ # The name of the Amazon EKS cluster associated with the Fargate
698
+ # profile.
699
+ # @return [String]
700
+ #
701
+ # @!attribute [rw] fargate_profile_name
702
+ # The name of the Fargate profile to describe.
703
+ # @return [String]
704
+ #
705
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfileRequest AWS API Documentation
706
+ #
707
+ class DescribeFargateProfileRequest < Struct.new(
708
+ :cluster_name,
709
+ :fargate_profile_name)
710
+ include Aws::Structure
711
+ end
712
+
713
+ # @!attribute [rw] fargate_profile
714
+ # The full description of your Fargate profile.
715
+ # @return [Types::FargateProfile]
716
+ #
717
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfileResponse AWS API Documentation
718
+ #
719
+ class DescribeFargateProfileResponse < Struct.new(
720
+ :fargate_profile)
721
+ include Aws::Structure
722
+ end
723
+
554
724
  # @note When making an API call, you may pass DescribeNodegroupRequest
555
725
  # data as a hash:
556
726
  #
@@ -673,6 +843,99 @@ module Aws::EKS
673
843
  include Aws::Structure
674
844
  end
675
845
 
846
+ # An object representing an AWS Fargate profile.
847
+ #
848
+ # @!attribute [rw] fargate_profile_name
849
+ # The name of the Fargate profile.
850
+ # @return [String]
851
+ #
852
+ # @!attribute [rw] fargate_profile_arn
853
+ # The full Amazon Resource Name (ARN) of the Fargate profile.
854
+ # @return [String]
855
+ #
856
+ # @!attribute [rw] cluster_name
857
+ # The name of the Amazon EKS cluster that the Fargate profile belongs
858
+ # to.
859
+ # @return [String]
860
+ #
861
+ # @!attribute [rw] created_at
862
+ # The Unix epoch timestamp in seconds for when the Fargate profile was
863
+ # created.
864
+ # @return [Time]
865
+ #
866
+ # @!attribute [rw] pod_execution_role_arn
867
+ # The Amazon Resource Name (ARN) of the pod execution role to use for
868
+ # pods that match the selectors in the Fargate profile. For more
869
+ # information, see [Pod Execution
870
+ # Role](eks/latest/userguide/pod-execution-role.html) in the *Amazon
871
+ # EKS User Guide*.
872
+ # @return [String]
873
+ #
874
+ # @!attribute [rw] subnets
875
+ # The IDs of subnets to launch Fargate pods into.
876
+ # @return [Array<String>]
877
+ #
878
+ # @!attribute [rw] selectors
879
+ # The selectors to match for pods to use this Fargate profile.
880
+ # @return [Array<Types::FargateProfileSelector>]
881
+ #
882
+ # @!attribute [rw] status
883
+ # The current status of the Fargate profile.
884
+ # @return [String]
885
+ #
886
+ # @!attribute [rw] tags
887
+ # The metadata applied to the Fargate profile to assist with
888
+ # categorization and organization. Each tag consists of a key and an
889
+ # optional value, both of which you define. Fargate profile tags do
890
+ # not propagate to any other resources associated with the Fargate
891
+ # profile, such as the pods that are scheduled with it.
892
+ # @return [Hash<String,String>]
893
+ #
894
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/FargateProfile AWS API Documentation
895
+ #
896
+ class FargateProfile < Struct.new(
897
+ :fargate_profile_name,
898
+ :fargate_profile_arn,
899
+ :cluster_name,
900
+ :created_at,
901
+ :pod_execution_role_arn,
902
+ :subnets,
903
+ :selectors,
904
+ :status,
905
+ :tags)
906
+ include Aws::Structure
907
+ end
908
+
909
+ # An object representing an AWS Fargate profile selector.
910
+ #
911
+ # @note When making an API call, you may pass FargateProfileSelector
912
+ # data as a hash:
913
+ #
914
+ # {
915
+ # namespace: "String",
916
+ # labels: {
917
+ # "String" => "String",
918
+ # },
919
+ # }
920
+ #
921
+ # @!attribute [rw] namespace
922
+ # The Kubernetes namespace that the selector should match.
923
+ # @return [String]
924
+ #
925
+ # @!attribute [rw] labels
926
+ # The Kubernetes labels that the selector should match. A pod must
927
+ # contain all of the labels that are specified in the selector for it
928
+ # to be considered a match.
929
+ # @return [Hash<String,String>]
930
+ #
931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/FargateProfileSelector AWS API Documentation
932
+ #
933
+ class FargateProfileSelector < Struct.new(
934
+ :namespace,
935
+ :labels)
936
+ include Aws::Structure
937
+ end
938
+
676
939
  # An object representing an identity provider for authentication
677
940
  # credentials.
678
941
  #
@@ -700,6 +963,11 @@ module Aws::EKS
700
963
  # @return [String]
701
964
  #
702
965
  # @!attribute [rw] nodegroup_name
966
+ # The Amazon EKS managed node group associated with the exception.
967
+ # @return [String]
968
+ #
969
+ # @!attribute [rw] fargate_profile_name
970
+ # The Fargate profile associated with the exception.
703
971
  # @return [String]
704
972
  #
705
973
  # @!attribute [rw] message
@@ -710,6 +978,7 @@ module Aws::EKS
710
978
  class InvalidParameterException < Struct.new(
711
979
  :cluster_name,
712
980
  :nodegroup_name,
981
+ :fargate_profile_name,
713
982
  :message)
714
983
  include Aws::Structure
715
984
  end
@@ -722,6 +991,7 @@ module Aws::EKS
722
991
  # @return [String]
723
992
  #
724
993
  # @!attribute [rw] nodegroup_name
994
+ # The Amazon EKS managed node group associated with the exception.
725
995
  # @return [String]
726
996
  #
727
997
  # @!attribute [rw] message
@@ -759,7 +1029,7 @@ module Aws::EKS
759
1029
  # * **Ec2LaunchTemplateVersionMismatch**\: The Amazon EC2 launch
760
1030
  # template version for your managed node group does not match the
761
1031
  # version that Amazon EKS created. You may be able to revert to the
762
- # Amazon EKS-created version to recover.
1032
+ # version that Amazon EKS created to recover.
763
1033
  #
764
1034
  # * **IamInstanceProfileNotFound**\: We couldn't find the IAM
765
1035
  # instance profile for your managed node group. You may be able to
@@ -772,6 +1042,11 @@ module Aws::EKS
772
1042
  # * **AsgInstanceLaunchFailures**\: Your Auto Scaling group is
773
1043
  # experiencing failures while attempting to launch instances.
774
1044
  #
1045
+ # * **NodeCreationFailure**\: Your launched instances are unable to
1046
+ # register with your Amazon EKS cluster. Common causes of this
1047
+ # failure are insufficient [worker node IAM role][1] permissions or
1048
+ # lack of outbound internet access for the nodes.
1049
+ #
775
1050
  # * **InstanceLimitExceeded**\: Your AWS account is unable to launch
776
1051
  # any more instances of the specified instance type. You may be able
777
1052
  # to request an Amazon EC2 instance limit increase to recover.
@@ -780,11 +1055,15 @@ module Aws::EKS
780
1055
  # associated with your managed node group does not have enough
781
1056
  # available IP addresses for new nodes.
782
1057
  #
783
- # * **AccessDenied**\: Amazon EKS and or one or more of your managed
784
- # nodes is unable to communicate with your cluster API server.
1058
+ # * **AccessDenied**\: Amazon EKS or one or more of your managed nodes
1059
+ # is unable to communicate with your cluster API server.
785
1060
  #
786
1061
  # * **InternalFailure**\: These errors are usually caused by an Amazon
787
1062
  # EKS server-side issue.
1063
+ #
1064
+ #
1065
+ #
1066
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html
788
1067
  # @return [String]
789
1068
  #
790
1069
  # @!attribute [rw] message
@@ -864,6 +1143,70 @@ module Aws::EKS
864
1143
  include Aws::Structure
865
1144
  end
866
1145
 
1146
+ # @note When making an API call, you may pass ListFargateProfilesRequest
1147
+ # data as a hash:
1148
+ #
1149
+ # {
1150
+ # cluster_name: "String", # required
1151
+ # max_results: 1,
1152
+ # next_token: "String",
1153
+ # }
1154
+ #
1155
+ # @!attribute [rw] cluster_name
1156
+ # The name of the Amazon EKS cluster that you would like to
1157
+ # listFargate profiles in.
1158
+ # @return [String]
1159
+ #
1160
+ # @!attribute [rw] max_results
1161
+ # The maximum number of Fargate profile results returned by
1162
+ # `ListFargateProfiles` in paginated output. When you use this
1163
+ # parameter, `ListFargateProfiles` returns only `maxResults` results
1164
+ # in a single page along with a `nextToken` response element. You can
1165
+ # see the remaining results of the initial request by sending another
1166
+ # `ListFargateProfiles` request with the returned `nextToken` value.
1167
+ # This value can be between 1 and 100. If you don't use this
1168
+ # parameter, `ListFargateProfiles` returns up to 100 results and a
1169
+ # `nextToken` value if applicable.
1170
+ # @return [Integer]
1171
+ #
1172
+ # @!attribute [rw] next_token
1173
+ # The `nextToken` value returned from a previous paginated
1174
+ # `ListFargateProfiles` request where `maxResults` was used and the
1175
+ # results exceeded the value of that parameter. Pagination continues
1176
+ # from the end of the previous results that returned the `nextToken`
1177
+ # value.
1178
+ # @return [String]
1179
+ #
1180
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListFargateProfilesRequest AWS API Documentation
1181
+ #
1182
+ class ListFargateProfilesRequest < Struct.new(
1183
+ :cluster_name,
1184
+ :max_results,
1185
+ :next_token)
1186
+ include Aws::Structure
1187
+ end
1188
+
1189
+ # @!attribute [rw] fargate_profile_names
1190
+ # A list of all of the Fargate profiles associated with the specified
1191
+ # cluster.
1192
+ # @return [Array<String>]
1193
+ #
1194
+ # @!attribute [rw] next_token
1195
+ # The `nextToken` value to include in a future `ListFargateProfiles`
1196
+ # request. When the results of a `ListFargateProfiles` request exceed
1197
+ # `maxResults`, you can use this value to retrieve the next page of
1198
+ # results. This value is `null` when there are no more results to
1199
+ # return.
1200
+ # @return [String]
1201
+ #
1202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListFargateProfilesResponse AWS API Documentation
1203
+ #
1204
+ class ListFargateProfilesResponse < Struct.new(
1205
+ :fargate_profile_names,
1206
+ :next_token)
1207
+ include Aws::Structure
1208
+ end
1209
+
867
1210
  # @note When making an API call, you may pass ListNodegroupsRequest
868
1211
  # data as a hash:
869
1212
  #
@@ -1123,7 +1466,7 @@ module Aws::EKS
1123
1466
  # @return [String]
1124
1467
  #
1125
1468
  # @!attribute [rw] scaling_config
1126
- # The scaling configuration details for the AutoScaling group that is
1469
+ # The scaling configuration details for the Auto Scaling group that is
1127
1470
  # associated with your node group.
1128
1471
  # @return [Types::NodegroupScalingConfig]
1129
1472
  #
@@ -1132,7 +1475,7 @@ module Aws::EKS
1132
1475
  # @return [Array<String>]
1133
1476
  #
1134
1477
  # @!attribute [rw] subnets
1135
- # The subnets allowed for the AutoScaling group that is associated
1478
+ # The subnets allowed for the Auto Scaling group that is associated
1136
1479
  # with your node group. These subnets must have the following tag:
1137
1480
  # `kubernetes.io/cluster/CLUSTER_NAME`, where `CLUSTER_NAME` is
1138
1481
  # replaced with the name of your cluster.
@@ -1146,7 +1489,7 @@ module Aws::EKS
1146
1489
  # @!attribute [rw] ami_type
1147
1490
  # The AMI type associated with your node group. GPU instance types
1148
1491
  # should use the `AL2_x86_64_GPU` AMI type, which uses the Amazon
1149
- # EKS-optimized Linux AMI with GPU support; non-GPU instances should
1492
+ # EKS-optimized Linux AMI with GPU support. Non-GPU instances should
1150
1493
  # use the `AL2_x86_64` AMI type, which uses the Amazon EKS-optimized
1151
1494
  # Linux AMI.
1152
1495
  # @return [String]
@@ -1177,7 +1520,7 @@ module Aws::EKS
1177
1520
  # @return [Hash<String,String>]
1178
1521
  #
1179
1522
  # @!attribute [rw] resources
1180
- # The resources associated with the nodegroup, such as AutoScaling
1523
+ # The resources associated with the node group, such as Auto Scaling
1181
1524
  # groups and security groups for remote access.
1182
1525
  # @return [Types::NodegroupResources]
1183
1526
  #
@@ -1192,7 +1535,7 @@ module Aws::EKS
1192
1535
  # @return [Types::NodegroupHealth]
1193
1536
  #
1194
1537
  # @!attribute [rw] tags
1195
- # The metadata applied the node group to assist with categorization
1538
+ # The metadata applied to the node group to assist with categorization
1196
1539
  # and organization. Each tag consists of a key and an optional value,
1197
1540
  # both of which you define. Node group tags do not propagate to any
1198
1541
  # other resources associated with the node group, such as the Amazon
@@ -1237,11 +1580,11 @@ module Aws::EKS
1237
1580
  include Aws::Structure
1238
1581
  end
1239
1582
 
1240
- # An object representing the resources associated with the nodegroup,
1241
- # such as AutoScaling groups and security groups for remote access.
1583
+ # An object representing the resources associated with the node group,
1584
+ # such as Auto Scaling groups and security groups for remote access.
1242
1585
  #
1243
1586
  # @!attribute [rw] auto_scaling_groups
1244
- # The autoscaling groups associated with the node group.
1587
+ # The Auto Scaling groups associated with the node group.
1245
1588
  # @return [Array<Types::AutoScalingGroup>]
1246
1589
  #
1247
1590
  # @!attribute [rw] remote_access_security_group
@@ -1257,8 +1600,8 @@ module Aws::EKS
1257
1600
  include Aws::Structure
1258
1601
  end
1259
1602
 
1260
- # An object representing the scaling configuration details for the
1261
- # AutoScaling group that is associated with your node group.
1603
+ # An object representing the scaling configuration details for the Auto
1604
+ # Scaling group that is associated with your node group.
1262
1605
  #
1263
1606
  # @note When making an API call, you may pass NodegroupScalingConfig
1264
1607
  # data as a hash:
@@ -1348,12 +1691,12 @@ module Aws::EKS
1348
1691
  # @return [String]
1349
1692
  #
1350
1693
  # @!attribute [rw] source_security_groups
1351
- # The security groups to allow SSH access (port 22) from on the worker
1352
- # nodes. If you specify an Amazon EC2 SSH key, but you do not specify
1353
- # a source security group when you create a managed node group, port
1354
- # 22 on the worker nodes is opened to the internet (0.0.0.0/0). For
1355
- # more information, see [Security Groups for Your VPC][1] in the
1356
- # *Amazon Virtual Private Cloud User Guide*.
1694
+ # The security groups that are allowed SSH access (port 22) to the
1695
+ # worker nodes. If you specify an Amazon EC2 SSH key but do not
1696
+ # specify a source security group when you create a managed node
1697
+ # group, then port 22 on the worker nodes is opened to the internet
1698
+ # (0.0.0.0/0). For more information, see [Security Groups for Your
1699
+ # VPC][1] in the *Amazon Virtual Private Cloud User Guide*.
1357
1700
  #
1358
1701
  #
1359
1702
  #
@@ -1375,6 +1718,7 @@ module Aws::EKS
1375
1718
  # @return [String]
1376
1719
  #
1377
1720
  # @!attribute [rw] nodegroup_name
1721
+ # The Amazon EKS managed node group associated with the exception.
1378
1722
  # @return [String]
1379
1723
  #
1380
1724
  # @!attribute [rw] message
@@ -1396,6 +1740,7 @@ module Aws::EKS
1396
1740
  # @return [String]
1397
1741
  #
1398
1742
  # @!attribute [rw] nodegroup_name
1743
+ # The Amazon EKS managed node group associated with the exception.
1399
1744
  # @return [String]
1400
1745
  #
1401
1746
  # @!attribute [rw] message
@@ -1420,6 +1765,11 @@ module Aws::EKS
1420
1765
  # @return [String]
1421
1766
  #
1422
1767
  # @!attribute [rw] nodegroup_name
1768
+ # The Amazon EKS managed node group associated with the exception.
1769
+ # @return [String]
1770
+ #
1771
+ # @!attribute [rw] fargate_profile_name
1772
+ # The Fargate profile associated with the exception.
1423
1773
  # @return [String]
1424
1774
  #
1425
1775
  # @!attribute [rw] message
@@ -1430,6 +1780,7 @@ module Aws::EKS
1430
1780
  class ResourceNotFoundException < Struct.new(
1431
1781
  :cluster_name,
1432
1782
  :nodegroup_name,
1783
+ :fargate_profile_name,
1433
1784
  :message)
1434
1785
  include Aws::Structure
1435
1786
  end
@@ -1441,6 +1792,7 @@ module Aws::EKS
1441
1792
  # @return [String]
1442
1793
  #
1443
1794
  # @!attribute [rw] nodegroup_name
1795
+ # The Amazon EKS managed node group associated with the exception.
1444
1796
  # @return [String]
1445
1797
  #
1446
1798
  # @!attribute [rw] message
@@ -1513,6 +1865,7 @@ module Aws::EKS
1513
1865
  # @return [String]
1514
1866
  #
1515
1867
  # @!attribute [rw] nodegroup_name
1868
+ # The Amazon EKS managed node group associated with the exception.
1516
1869
  # @return [String]
1517
1870
  #
1518
1871
  # @!attribute [rw] valid_zones
@@ -1787,7 +2140,7 @@ module Aws::EKS
1787
2140
  # @return [Types::UpdateLabelsPayload]
1788
2141
  #
1789
2142
  # @!attribute [rw] scaling_config
1790
- # The scaling configuration details for the AutoScaling group after
2143
+ # The scaling configuration details for the Auto Scaling group after
1791
2144
  # the update.
1792
2145
  # @return [Types::NodegroupScalingConfig]
1793
2146
  #
@@ -1864,10 +2217,10 @@ module Aws::EKS
1864
2217
  #
1865
2218
  # @!attribute [rw] force
1866
2219
  # Force the update if the existing node group's pods are unable to be
1867
- # drained due to a pod disruption budget issue. If a previous update
1868
- # fails because pods could not be drained, you can force the update
1869
- # after it fails to terminate the old node regardless of whether or
1870
- # not any pods are running on the node.
2220
+ # drained due to a pod disruption budget issue. If an update fails
2221
+ # because pods could not be drained, you can force the update after it
2222
+ # fails to terminate the old node whether or not any pods are running
2223
+ # on the node.
1871
2224
  # @return [Boolean]
1872
2225
  #
1873
2226
  # @!attribute [rw] client_request_token
@@ -2000,8 +2353,8 @@ module Aws::EKS
2000
2353
  #
2001
2354
  # @!attribute [rw] cluster_security_group_id
2002
2355
  # The cluster security group that was created by Amazon EKS for the
2003
- # cluster. Managed node groups use this security group for control
2004
- # plane to data plane communication.
2356
+ # cluster. Managed node groups use this security group for
2357
+ # control-plane-to-data-plane communication.
2005
2358
  # @return [String]
2006
2359
  #
2007
2360
  # @!attribute [rw] vpc_id
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-eks
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.28.0
4
+ version: 1.29.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-11-15 00:00:00.000000000 Z
11
+ date: 2019-12-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core