aws-sdk-eks 1.27.0 → 1.28.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.
- checksums.yaml +4 -4
- data/lib/aws-sdk-eks.rb +1 -1
- data/lib/aws-sdk-eks/client.rb +603 -28
- data/lib/aws-sdk-eks/client_api.rb +253 -0
- data/lib/aws-sdk-eks/errors.rb +40 -0
- data/lib/aws-sdk-eks/types.rb +876 -7
- data/lib/aws-sdk-eks/waiters.rb +87 -0
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 1a8179eeb4541ce7e9577f8681c275f91c91e086
         | 
| 4 | 
            +
              data.tar.gz: '0837f4f1e1b7f3693d15589695abc1b491855d8d'
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 7d82562a24efeb2507cb99f8677fc90236604bc5bf50dd91290c7f946177ae47ac1767c51895650fa2703a0c0ad811442053718ad0db3317a0f6b7fec01a26ec
         | 
| 7 | 
            +
              data.tar.gz: 67abfb1cd0904e90d5ad026679ecef9012e7b964363c3a7fcf78e777374d6e76dfb6e8115af2051fb0b71f707d7be1a36895d95a4f5abb034d331b0429253027
         | 
    
        data/lib/aws-sdk-eks.rb
    CHANGED
    
    
    
        data/lib/aws-sdk-eks/client.rb
    CHANGED
    
    | @@ -436,6 +436,7 @@ module Aws::EKS | |
| 436 436 | 
             
                #   resp.cluster.resources_vpc_config.subnet_ids[0] #=> String
         | 
| 437 437 | 
             
                #   resp.cluster.resources_vpc_config.security_group_ids #=> Array
         | 
| 438 438 | 
             
                #   resp.cluster.resources_vpc_config.security_group_ids[0] #=> String
         | 
| 439 | 
            +
                #   resp.cluster.resources_vpc_config.cluster_security_group_id #=> String
         | 
| 439 440 | 
             
                #   resp.cluster.resources_vpc_config.vpc_id #=> String
         | 
| 440 441 | 
             
                #   resp.cluster.resources_vpc_config.endpoint_public_access #=> Boolean
         | 
| 441 442 | 
             
                #   resp.cluster.resources_vpc_config.endpoint_private_access #=> Boolean
         | 
| @@ -444,7 +445,7 @@ module Aws::EKS | |
| 444 445 | 
             
                #   resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
         | 
| 445 446 | 
             
                #   resp.cluster.logging.cluster_logging[0].enabled #=> Boolean
         | 
| 446 447 | 
             
                #   resp.cluster.identity.oidc.issuer #=> String
         | 
| 447 | 
            -
                #   resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
         | 
| 448 | 
            +
                #   resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
         | 
| 448 449 | 
             
                #   resp.cluster.certificate_authority.data #=> String
         | 
| 449 450 | 
             
                #   resp.cluster.client_request_token #=> String
         | 
| 450 451 | 
             
                #   resp.cluster.platform_version #=> String
         | 
| @@ -460,16 +461,195 @@ module Aws::EKS | |
| 460 461 | 
             
                  req.send_request(options)
         | 
| 461 462 | 
             
                end
         | 
| 462 463 |  | 
| 464 | 
            +
                # Creates a managed worker node group for an Amazon EKS cluster. You can
         | 
| 465 | 
            +
                # only create a node group for your cluster that is equal to the current
         | 
| 466 | 
            +
                # Kubernetes version for the cluster. All node groups are created with
         | 
| 467 | 
            +
                # the latest AMI release version for the respective minor Kubernetes
         | 
| 468 | 
            +
                # version of the cluster.
         | 
| 469 | 
            +
                #
         | 
| 470 | 
            +
                # An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group
         | 
| 471 | 
            +
                # and associated Amazon EC2 instances that are managed by AWS for an
         | 
| 472 | 
            +
                # Amazon EKS cluster. Each node group uses a version of the Amazon
         | 
| 473 | 
            +
                # EKS-optimized Amazon Linux 2 AMI. For more information, see [Managed
         | 
| 474 | 
            +
                # Node Groups][1] in the *Amazon EKS User Guide*.
         | 
| 475 | 
            +
                #
         | 
| 476 | 
            +
                #
         | 
| 477 | 
            +
                #
         | 
| 478 | 
            +
                # [1]: https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html
         | 
| 479 | 
            +
                #
         | 
| 480 | 
            +
                # @option params [required, String] :cluster_name
         | 
| 481 | 
            +
                #   The name of the cluster to create the node group in.
         | 
| 482 | 
            +
                #
         | 
| 483 | 
            +
                # @option params [required, String] :nodegroup_name
         | 
| 484 | 
            +
                #   The unique name to give your node group.
         | 
| 485 | 
            +
                #
         | 
| 486 | 
            +
                # @option params [Types::NodegroupScalingConfig] :scaling_config
         | 
| 487 | 
            +
                #   The scaling configuration details for the AutoScaling group that is
         | 
| 488 | 
            +
                #   created for your node group.
         | 
| 489 | 
            +
                #
         | 
| 490 | 
            +
                # @option params [Integer] :disk_size
         | 
| 491 | 
            +
                #   The root device disk size (in GiB) for your node group instances. The
         | 
| 492 | 
            +
                #   default disk size is 20 GiB.
         | 
| 493 | 
            +
                #
         | 
| 494 | 
            +
                # @option params [required, Array<String>] :subnets
         | 
| 495 | 
            +
                #   The subnets to use for the AutoScaling group that is created for your
         | 
| 496 | 
            +
                #   node group. These subnets must have the tag key
         | 
| 497 | 
            +
                #   `kubernetes.io/cluster/CLUSTER_NAME` with a value of `shared`, where
         | 
| 498 | 
            +
                #   `CLUSTER_NAME` is replaced with the name of your cluster.
         | 
| 499 | 
            +
                #
         | 
| 500 | 
            +
                # @option params [Array<String>] :instance_types
         | 
| 501 | 
            +
                #   The instance type to use for your node group. Currently, you can
         | 
| 502 | 
            +
                #   specify a single instance type for a node group. The default value for
         | 
| 503 | 
            +
                #   this parameter is `t3.medium`. If you choose a GPU instance type, be
         | 
| 504 | 
            +
                #   sure to specify the `AL2_x86_64_GPU` with the `amiType` parameter.
         | 
| 505 | 
            +
                #
         | 
| 506 | 
            +
                # @option params [String] :ami_type
         | 
| 507 | 
            +
                #   The AMI type for your node group. GPU instance types should use the
         | 
| 508 | 
            +
                #   `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`
         | 
| 510 | 
            +
                #   AMI type, which uses the Amazon EKS-optimized Linux AMI.
         | 
| 511 | 
            +
                #
         | 
| 512 | 
            +
                # @option params [Types::RemoteAccessConfig] :remote_access
         | 
| 513 | 
            +
                #   The remote access (SSH) configuration to use with your node group.
         | 
| 514 | 
            +
                #
         | 
| 515 | 
            +
                # @option params [required, String] :node_role
         | 
| 516 | 
            +
                #   The IAM role associated with your node group. The Amazon EKS worker
         | 
| 517 | 
            +
                #   node `kubelet` daemon makes calls to AWS APIs on your behalf. Worker
         | 
| 518 | 
            +
                #   nodes receive permissions for these API calls through an IAM instance
         | 
| 519 | 
            +
                #   profile and associated policies. Before you can launch worker nodes
         | 
| 520 | 
            +
                #   and register them into a cluster, you must create an IAM role for
         | 
| 521 | 
            +
                #   those worker nodes to use when they are launched. For more
         | 
| 522 | 
            +
                #   information, see [Amazon EKS Worker Node IAM Role][1] in the <i>
         | 
| 523 | 
            +
                #   <i>Amazon EKS User Guide</i> </i>.
         | 
| 524 | 
            +
                #
         | 
| 525 | 
            +
                #
         | 
| 526 | 
            +
                #
         | 
| 527 | 
            +
                #   [1]: https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html
         | 
| 528 | 
            +
                #
         | 
| 529 | 
            +
                # @option params [Hash<String,String>] :labels
         | 
| 530 | 
            +
                #   The Kubernetes labels to be applied to the nodes in the node group
         | 
| 531 | 
            +
                #   when they are created.
         | 
| 532 | 
            +
                #
         | 
| 533 | 
            +
                # @option params [Hash<String,String>] :tags
         | 
| 534 | 
            +
                #   The metadata to apply to the node group to assist with categorization
         | 
| 535 | 
            +
                #   and organization. Each tag consists of a key and an optional value,
         | 
| 536 | 
            +
                #   both of which you define. Node group tags do not propagate to any
         | 
| 537 | 
            +
                #   other resources associated with the node group, such as the Amazon EC2
         | 
| 538 | 
            +
                #   instances or subnets.
         | 
| 539 | 
            +
                #
         | 
| 540 | 
            +
                # @option params [String] :client_request_token
         | 
| 541 | 
            +
                #   Unique, case-sensitive identifier that you provide to ensure the
         | 
| 542 | 
            +
                #   idempotency of the request.
         | 
| 543 | 
            +
                #
         | 
| 544 | 
            +
                #   **A suitable default value is auto-generated.** You should normally
         | 
| 545 | 
            +
                #   not need to pass this option.**
         | 
| 546 | 
            +
                #
         | 
| 547 | 
            +
                # @option params [String] :version
         | 
| 548 | 
            +
                #   The Kubernetes version to use for your managed nodes. By default, the
         | 
| 549 | 
            +
                #   Kubernetes version of the cluster is used, and this is the only
         | 
| 550 | 
            +
                #   accepted specified value.
         | 
| 551 | 
            +
                #
         | 
| 552 | 
            +
                # @option params [String] :release_version
         | 
| 553 | 
            +
                #   The AMI version of the Amazon EKS-optimized AMI to use with your node
         | 
| 554 | 
            +
                #   group. By default, the latest available AMI version for the node
         | 
| 555 | 
            +
                #   group's current Kubernetes version is used. For more information, see
         | 
| 556 | 
            +
                #   [Amazon EKS-Optimized Linux AMI Versions][1] in the *Amazon EKS User
         | 
| 557 | 
            +
                #   Guide*.
         | 
| 558 | 
            +
                #
         | 
| 559 | 
            +
                #
         | 
| 560 | 
            +
                #
         | 
| 561 | 
            +
                #   [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
         | 
| 562 | 
            +
                #
         | 
| 563 | 
            +
                # @return [Types::CreateNodegroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 564 | 
            +
                #
         | 
| 565 | 
            +
                #   * {Types::CreateNodegroupResponse#nodegroup #nodegroup} => Types::Nodegroup
         | 
| 566 | 
            +
                #
         | 
| 567 | 
            +
                # @example Request syntax with placeholder values
         | 
| 568 | 
            +
                #
         | 
| 569 | 
            +
                #   resp = client.create_nodegroup({
         | 
| 570 | 
            +
                #     cluster_name: "String", # required
         | 
| 571 | 
            +
                #     nodegroup_name: "String", # required
         | 
| 572 | 
            +
                #     scaling_config: {
         | 
| 573 | 
            +
                #       min_size: 1,
         | 
| 574 | 
            +
                #       max_size: 1,
         | 
| 575 | 
            +
                #       desired_size: 1,
         | 
| 576 | 
            +
                #     },
         | 
| 577 | 
            +
                #     disk_size: 1,
         | 
| 578 | 
            +
                #     subnets: ["String"], # required
         | 
| 579 | 
            +
                #     instance_types: ["String"],
         | 
| 580 | 
            +
                #     ami_type: "AL2_x86_64", # accepts AL2_x86_64, AL2_x86_64_GPU
         | 
| 581 | 
            +
                #     remote_access: {
         | 
| 582 | 
            +
                #       ec2_ssh_key: "String",
         | 
| 583 | 
            +
                #       source_security_groups: ["String"],
         | 
| 584 | 
            +
                #     },
         | 
| 585 | 
            +
                #     node_role: "String", # required
         | 
| 586 | 
            +
                #     labels: {
         | 
| 587 | 
            +
                #       "labelKey" => "labelValue",
         | 
| 588 | 
            +
                #     },
         | 
| 589 | 
            +
                #     tags: {
         | 
| 590 | 
            +
                #       "TagKey" => "TagValue",
         | 
| 591 | 
            +
                #     },
         | 
| 592 | 
            +
                #     client_request_token: "String",
         | 
| 593 | 
            +
                #     version: "String",
         | 
| 594 | 
            +
                #     release_version: "String",
         | 
| 595 | 
            +
                #   })
         | 
| 596 | 
            +
                #
         | 
| 597 | 
            +
                # @example Response structure
         | 
| 598 | 
            +
                #
         | 
| 599 | 
            +
                #   resp.nodegroup.nodegroup_name #=> String
         | 
| 600 | 
            +
                #   resp.nodegroup.nodegroup_arn #=> String
         | 
| 601 | 
            +
                #   resp.nodegroup.cluster_name #=> String
         | 
| 602 | 
            +
                #   resp.nodegroup.version #=> String
         | 
| 603 | 
            +
                #   resp.nodegroup.release_version #=> String
         | 
| 604 | 
            +
                #   resp.nodegroup.created_at #=> Time
         | 
| 605 | 
            +
                #   resp.nodegroup.modified_at #=> Time
         | 
| 606 | 
            +
                #   resp.nodegroup.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "DELETE_FAILED", "DEGRADED"
         | 
| 607 | 
            +
                #   resp.nodegroup.scaling_config.min_size #=> Integer
         | 
| 608 | 
            +
                #   resp.nodegroup.scaling_config.max_size #=> Integer
         | 
| 609 | 
            +
                #   resp.nodegroup.scaling_config.desired_size #=> Integer
         | 
| 610 | 
            +
                #   resp.nodegroup.instance_types #=> Array
         | 
| 611 | 
            +
                #   resp.nodegroup.instance_types[0] #=> String
         | 
| 612 | 
            +
                #   resp.nodegroup.subnets #=> Array
         | 
| 613 | 
            +
                #   resp.nodegroup.subnets[0] #=> String
         | 
| 614 | 
            +
                #   resp.nodegroup.remote_access.ec2_ssh_key #=> String
         | 
| 615 | 
            +
                #   resp.nodegroup.remote_access.source_security_groups #=> Array
         | 
| 616 | 
            +
                #   resp.nodegroup.remote_access.source_security_groups[0] #=> String
         | 
| 617 | 
            +
                #   resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU"
         | 
| 618 | 
            +
                #   resp.nodegroup.node_role #=> String
         | 
| 619 | 
            +
                #   resp.nodegroup.labels #=> Hash
         | 
| 620 | 
            +
                #   resp.nodegroup.labels["labelKey"] #=> String
         | 
| 621 | 
            +
                #   resp.nodegroup.resources.auto_scaling_groups #=> Array
         | 
| 622 | 
            +
                #   resp.nodegroup.resources.auto_scaling_groups[0].name #=> String
         | 
| 623 | 
            +
                #   resp.nodegroup.resources.remote_access_security_group #=> String
         | 
| 624 | 
            +
                #   resp.nodegroup.disk_size #=> Integer
         | 
| 625 | 
            +
                #   resp.nodegroup.health.issues #=> Array
         | 
| 626 | 
            +
                #   resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "IamInstanceProfileNotFound", "IamNodeRoleNotFound", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure"
         | 
| 627 | 
            +
                #   resp.nodegroup.health.issues[0].message #=> String
         | 
| 628 | 
            +
                #   resp.nodegroup.health.issues[0].resource_ids #=> Array
         | 
| 629 | 
            +
                #   resp.nodegroup.health.issues[0].resource_ids[0] #=> String
         | 
| 630 | 
            +
                #   resp.nodegroup.tags #=> Hash
         | 
| 631 | 
            +
                #   resp.nodegroup.tags["TagKey"] #=> String
         | 
| 632 | 
            +
                #
         | 
| 633 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateNodegroup AWS API Documentation
         | 
| 634 | 
            +
                #
         | 
| 635 | 
            +
                # @overload create_nodegroup(params = {})
         | 
| 636 | 
            +
                # @param [Hash] params ({})
         | 
| 637 | 
            +
                def create_nodegroup(params = {}, options = {})
         | 
| 638 | 
            +
                  req = build_request(:create_nodegroup, params)
         | 
| 639 | 
            +
                  req.send_request(options)
         | 
| 640 | 
            +
                end
         | 
| 641 | 
            +
             | 
| 463 642 | 
             
                # Deletes the Amazon EKS cluster control plane.
         | 
| 464 643 | 
             
                #
         | 
| 465 | 
            -
                #  | 
| 644 | 
            +
                # If you have active services in your cluster that are associated with a
         | 
| 466 645 | 
             
                # load balancer, you must delete those services before deleting the
         | 
| 467 646 | 
             
                # cluster so that the load balancers are deleted properly. Otherwise,
         | 
| 468 647 | 
             
                # you can have orphaned resources in your VPC that prevent you from
         | 
| 469 648 | 
             
                # being able to delete the VPC. For more information, see [Deleting a
         | 
| 470 649 | 
             
                # Cluster][1] in the *Amazon EKS User Guide*.
         | 
| 471 650 | 
             
                #
         | 
| 472 | 
            -
                # | 
| 651 | 
            +
                # If you have managed node groups attached to the cluster, you must
         | 
| 652 | 
            +
                # delete them first. For more information, see DeleteNodegroup.
         | 
| 473 653 | 
             
                #
         | 
| 474 654 | 
             
                #
         | 
| 475 655 | 
             
                #
         | 
| @@ -513,6 +693,7 @@ module Aws::EKS | |
| 513 693 | 
             
                #   resp.cluster.resources_vpc_config.subnet_ids[0] #=> String
         | 
| 514 694 | 
             
                #   resp.cluster.resources_vpc_config.security_group_ids #=> Array
         | 
| 515 695 | 
             
                #   resp.cluster.resources_vpc_config.security_group_ids[0] #=> String
         | 
| 696 | 
            +
                #   resp.cluster.resources_vpc_config.cluster_security_group_id #=> String
         | 
| 516 697 | 
             
                #   resp.cluster.resources_vpc_config.vpc_id #=> String
         | 
| 517 698 | 
             
                #   resp.cluster.resources_vpc_config.endpoint_public_access #=> Boolean
         | 
| 518 699 | 
             
                #   resp.cluster.resources_vpc_config.endpoint_private_access #=> Boolean
         | 
| @@ -521,7 +702,7 @@ module Aws::EKS | |
| 521 702 | 
             
                #   resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
         | 
| 522 703 | 
             
                #   resp.cluster.logging.cluster_logging[0].enabled #=> Boolean
         | 
| 523 704 | 
             
                #   resp.cluster.identity.oidc.issuer #=> String
         | 
| 524 | 
            -
                #   resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
         | 
| 705 | 
            +
                #   resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
         | 
| 525 706 | 
             
                #   resp.cluster.certificate_authority.data #=> String
         | 
| 526 707 | 
             
                #   resp.cluster.client_request_token #=> String
         | 
| 527 708 | 
             
                #   resp.cluster.platform_version #=> String
         | 
| @@ -537,6 +718,71 @@ module Aws::EKS | |
| 537 718 | 
             
                  req.send_request(options)
         | 
| 538 719 | 
             
                end
         | 
| 539 720 |  | 
| 721 | 
            +
                # Deletes an Amazon EKS node group for a cluster.
         | 
| 722 | 
            +
                #
         | 
| 723 | 
            +
                # @option params [required, String] :cluster_name
         | 
| 724 | 
            +
                #   The name of the Amazon EKS cluster that is associated with your node
         | 
| 725 | 
            +
                #   group.
         | 
| 726 | 
            +
                #
         | 
| 727 | 
            +
                # @option params [required, String] :nodegroup_name
         | 
| 728 | 
            +
                #   The name of the node group to delete.
         | 
| 729 | 
            +
                #
         | 
| 730 | 
            +
                # @return [Types::DeleteNodegroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 731 | 
            +
                #
         | 
| 732 | 
            +
                #   * {Types::DeleteNodegroupResponse#nodegroup #nodegroup} => Types::Nodegroup
         | 
| 733 | 
            +
                #
         | 
| 734 | 
            +
                # @example Request syntax with placeholder values
         | 
| 735 | 
            +
                #
         | 
| 736 | 
            +
                #   resp = client.delete_nodegroup({
         | 
| 737 | 
            +
                #     cluster_name: "String", # required
         | 
| 738 | 
            +
                #     nodegroup_name: "String", # required
         | 
| 739 | 
            +
                #   })
         | 
| 740 | 
            +
                #
         | 
| 741 | 
            +
                # @example Response structure
         | 
| 742 | 
            +
                #
         | 
| 743 | 
            +
                #   resp.nodegroup.nodegroup_name #=> String
         | 
| 744 | 
            +
                #   resp.nodegroup.nodegroup_arn #=> String
         | 
| 745 | 
            +
                #   resp.nodegroup.cluster_name #=> String
         | 
| 746 | 
            +
                #   resp.nodegroup.version #=> String
         | 
| 747 | 
            +
                #   resp.nodegroup.release_version #=> String
         | 
| 748 | 
            +
                #   resp.nodegroup.created_at #=> Time
         | 
| 749 | 
            +
                #   resp.nodegroup.modified_at #=> Time
         | 
| 750 | 
            +
                #   resp.nodegroup.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "DELETE_FAILED", "DEGRADED"
         | 
| 751 | 
            +
                #   resp.nodegroup.scaling_config.min_size #=> Integer
         | 
| 752 | 
            +
                #   resp.nodegroup.scaling_config.max_size #=> Integer
         | 
| 753 | 
            +
                #   resp.nodegroup.scaling_config.desired_size #=> Integer
         | 
| 754 | 
            +
                #   resp.nodegroup.instance_types #=> Array
         | 
| 755 | 
            +
                #   resp.nodegroup.instance_types[0] #=> String
         | 
| 756 | 
            +
                #   resp.nodegroup.subnets #=> Array
         | 
| 757 | 
            +
                #   resp.nodegroup.subnets[0] #=> String
         | 
| 758 | 
            +
                #   resp.nodegroup.remote_access.ec2_ssh_key #=> String
         | 
| 759 | 
            +
                #   resp.nodegroup.remote_access.source_security_groups #=> Array
         | 
| 760 | 
            +
                #   resp.nodegroup.remote_access.source_security_groups[0] #=> String
         | 
| 761 | 
            +
                #   resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU"
         | 
| 762 | 
            +
                #   resp.nodegroup.node_role #=> String
         | 
| 763 | 
            +
                #   resp.nodegroup.labels #=> Hash
         | 
| 764 | 
            +
                #   resp.nodegroup.labels["labelKey"] #=> String
         | 
| 765 | 
            +
                #   resp.nodegroup.resources.auto_scaling_groups #=> Array
         | 
| 766 | 
            +
                #   resp.nodegroup.resources.auto_scaling_groups[0].name #=> String
         | 
| 767 | 
            +
                #   resp.nodegroup.resources.remote_access_security_group #=> String
         | 
| 768 | 
            +
                #   resp.nodegroup.disk_size #=> Integer
         | 
| 769 | 
            +
                #   resp.nodegroup.health.issues #=> Array
         | 
| 770 | 
            +
                #   resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "IamInstanceProfileNotFound", "IamNodeRoleNotFound", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure"
         | 
| 771 | 
            +
                #   resp.nodegroup.health.issues[0].message #=> String
         | 
| 772 | 
            +
                #   resp.nodegroup.health.issues[0].resource_ids #=> Array
         | 
| 773 | 
            +
                #   resp.nodegroup.health.issues[0].resource_ids[0] #=> String
         | 
| 774 | 
            +
                #   resp.nodegroup.tags #=> Hash
         | 
| 775 | 
            +
                #   resp.nodegroup.tags["TagKey"] #=> String
         | 
| 776 | 
            +
                #
         | 
| 777 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteNodegroup AWS API Documentation
         | 
| 778 | 
            +
                #
         | 
| 779 | 
            +
                # @overload delete_nodegroup(params = {})
         | 
| 780 | 
            +
                # @param [Hash] params ({})
         | 
| 781 | 
            +
                def delete_nodegroup(params = {}, options = {})
         | 
| 782 | 
            +
                  req = build_request(:delete_nodegroup, params)
         | 
| 783 | 
            +
                  req.send_request(options)
         | 
| 784 | 
            +
                end
         | 
| 785 | 
            +
             | 
| 540 786 | 
             
                # Returns descriptive information about an Amazon EKS cluster.
         | 
| 541 787 | 
             
                #
         | 
| 542 788 | 
             
                # The API server endpoint and certificate authority data returned by
         | 
| @@ -613,6 +859,7 @@ module Aws::EKS | |
| 613 859 | 
             
                #   resp.cluster.resources_vpc_config.subnet_ids[0] #=> String
         | 
| 614 860 | 
             
                #   resp.cluster.resources_vpc_config.security_group_ids #=> Array
         | 
| 615 861 | 
             
                #   resp.cluster.resources_vpc_config.security_group_ids[0] #=> String
         | 
| 862 | 
            +
                #   resp.cluster.resources_vpc_config.cluster_security_group_id #=> String
         | 
| 616 863 | 
             
                #   resp.cluster.resources_vpc_config.vpc_id #=> String
         | 
| 617 864 | 
             
                #   resp.cluster.resources_vpc_config.endpoint_public_access #=> Boolean
         | 
| 618 865 | 
             
                #   resp.cluster.resources_vpc_config.endpoint_private_access #=> Boolean
         | 
| @@ -621,7 +868,7 @@ module Aws::EKS | |
| 621 868 | 
             
                #   resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
         | 
| 622 869 | 
             
                #   resp.cluster.logging.cluster_logging[0].enabled #=> Boolean
         | 
| 623 870 | 
             
                #   resp.cluster.identity.oidc.issuer #=> String
         | 
| 624 | 
            -
                #   resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
         | 
| 871 | 
            +
                #   resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
         | 
| 625 872 | 
             
                #   resp.cluster.certificate_authority.data #=> String
         | 
| 626 873 | 
             
                #   resp.cluster.client_request_token #=> String
         | 
| 627 874 | 
             
                #   resp.cluster.platform_version #=> String
         | 
| @@ -637,19 +884,86 @@ module Aws::EKS | |
| 637 884 | 
             
                  req.send_request(options)
         | 
| 638 885 | 
             
                end
         | 
| 639 886 |  | 
| 887 | 
            +
                # Returns descriptive information about an Amazon EKS node group.
         | 
| 888 | 
            +
                #
         | 
| 889 | 
            +
                # @option params [required, String] :cluster_name
         | 
| 890 | 
            +
                #   The name of the Amazon EKS cluster associated with the node group.
         | 
| 891 | 
            +
                #
         | 
| 892 | 
            +
                # @option params [required, String] :nodegroup_name
         | 
| 893 | 
            +
                #   The name of the node group to describe.
         | 
| 894 | 
            +
                #
         | 
| 895 | 
            +
                # @return [Types::DescribeNodegroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 896 | 
            +
                #
         | 
| 897 | 
            +
                #   * {Types::DescribeNodegroupResponse#nodegroup #nodegroup} => Types::Nodegroup
         | 
| 898 | 
            +
                #
         | 
| 899 | 
            +
                # @example Request syntax with placeholder values
         | 
| 900 | 
            +
                #
         | 
| 901 | 
            +
                #   resp = client.describe_nodegroup({
         | 
| 902 | 
            +
                #     cluster_name: "String", # required
         | 
| 903 | 
            +
                #     nodegroup_name: "String", # required
         | 
| 904 | 
            +
                #   })
         | 
| 905 | 
            +
                #
         | 
| 906 | 
            +
                # @example Response structure
         | 
| 907 | 
            +
                #
         | 
| 908 | 
            +
                #   resp.nodegroup.nodegroup_name #=> String
         | 
| 909 | 
            +
                #   resp.nodegroup.nodegroup_arn #=> String
         | 
| 910 | 
            +
                #   resp.nodegroup.cluster_name #=> String
         | 
| 911 | 
            +
                #   resp.nodegroup.version #=> String
         | 
| 912 | 
            +
                #   resp.nodegroup.release_version #=> String
         | 
| 913 | 
            +
                #   resp.nodegroup.created_at #=> Time
         | 
| 914 | 
            +
                #   resp.nodegroup.modified_at #=> Time
         | 
| 915 | 
            +
                #   resp.nodegroup.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "DELETE_FAILED", "DEGRADED"
         | 
| 916 | 
            +
                #   resp.nodegroup.scaling_config.min_size #=> Integer
         | 
| 917 | 
            +
                #   resp.nodegroup.scaling_config.max_size #=> Integer
         | 
| 918 | 
            +
                #   resp.nodegroup.scaling_config.desired_size #=> Integer
         | 
| 919 | 
            +
                #   resp.nodegroup.instance_types #=> Array
         | 
| 920 | 
            +
                #   resp.nodegroup.instance_types[0] #=> String
         | 
| 921 | 
            +
                #   resp.nodegroup.subnets #=> Array
         | 
| 922 | 
            +
                #   resp.nodegroup.subnets[0] #=> String
         | 
| 923 | 
            +
                #   resp.nodegroup.remote_access.ec2_ssh_key #=> String
         | 
| 924 | 
            +
                #   resp.nodegroup.remote_access.source_security_groups #=> Array
         | 
| 925 | 
            +
                #   resp.nodegroup.remote_access.source_security_groups[0] #=> String
         | 
| 926 | 
            +
                #   resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU"
         | 
| 927 | 
            +
                #   resp.nodegroup.node_role #=> String
         | 
| 928 | 
            +
                #   resp.nodegroup.labels #=> Hash
         | 
| 929 | 
            +
                #   resp.nodegroup.labels["labelKey"] #=> String
         | 
| 930 | 
            +
                #   resp.nodegroup.resources.auto_scaling_groups #=> Array
         | 
| 931 | 
            +
                #   resp.nodegroup.resources.auto_scaling_groups[0].name #=> String
         | 
| 932 | 
            +
                #   resp.nodegroup.resources.remote_access_security_group #=> String
         | 
| 933 | 
            +
                #   resp.nodegroup.disk_size #=> Integer
         | 
| 934 | 
            +
                #   resp.nodegroup.health.issues #=> Array
         | 
| 935 | 
            +
                #   resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "IamInstanceProfileNotFound", "IamNodeRoleNotFound", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure"
         | 
| 936 | 
            +
                #   resp.nodegroup.health.issues[0].message #=> String
         | 
| 937 | 
            +
                #   resp.nodegroup.health.issues[0].resource_ids #=> Array
         | 
| 938 | 
            +
                #   resp.nodegroup.health.issues[0].resource_ids[0] #=> String
         | 
| 939 | 
            +
                #   resp.nodegroup.tags #=> Hash
         | 
| 940 | 
            +
                #   resp.nodegroup.tags["TagKey"] #=> String
         | 
| 941 | 
            +
                #
         | 
| 942 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeNodegroup AWS API Documentation
         | 
| 943 | 
            +
                #
         | 
| 944 | 
            +
                # @overload describe_nodegroup(params = {})
         | 
| 945 | 
            +
                # @param [Hash] params ({})
         | 
| 946 | 
            +
                def describe_nodegroup(params = {}, options = {})
         | 
| 947 | 
            +
                  req = build_request(:describe_nodegroup, params)
         | 
| 948 | 
            +
                  req.send_request(options)
         | 
| 949 | 
            +
                end
         | 
| 950 | 
            +
             | 
| 640 951 | 
             
                # Returns descriptive information about an update against your Amazon
         | 
| 641 | 
            -
                # EKS cluster.
         | 
| 952 | 
            +
                # EKS cluster or associated managed node group.
         | 
| 642 953 | 
             
                #
         | 
| 643 954 | 
             
                # When the status of the update is `Succeeded`, the update is complete.
         | 
| 644 955 | 
             
                # If an update fails, the status is `Failed`, and an error detail
         | 
| 645 956 | 
             
                # explains the reason for the failure.
         | 
| 646 957 | 
             
                #
         | 
| 647 958 | 
             
                # @option params [required, String] :name
         | 
| 648 | 
            -
                #   The name of the Amazon EKS cluster  | 
| 959 | 
            +
                #   The name of the Amazon EKS cluster associated with the update.
         | 
| 649 960 | 
             
                #
         | 
| 650 961 | 
             
                # @option params [required, String] :update_id
         | 
| 651 962 | 
             
                #   The ID of the update to describe.
         | 
| 652 963 | 
             
                #
         | 
| 964 | 
            +
                # @option params [String] :nodegroup_name
         | 
| 965 | 
            +
                #   The name of the Amazon EKS node group associated with the update.
         | 
| 966 | 
            +
                #
         | 
| 653 967 | 
             
                # @return [Types::DescribeUpdateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 654 968 | 
             
                #
         | 
| 655 969 | 
             
                #   * {Types::DescribeUpdateResponse#update #update} => Types::Update
         | 
| @@ -659,19 +973,20 @@ module Aws::EKS | |
| 659 973 | 
             
                #   resp = client.describe_update({
         | 
| 660 974 | 
             
                #     name: "String", # required
         | 
| 661 975 | 
             
                #     update_id: "String", # required
         | 
| 976 | 
            +
                #     nodegroup_name: "String",
         | 
| 662 977 | 
             
                #   })
         | 
| 663 978 | 
             
                #
         | 
| 664 979 | 
             
                # @example Response structure
         | 
| 665 980 | 
             
                #
         | 
| 666 981 | 
             
                #   resp.update.id #=> String
         | 
| 667 982 | 
             
                #   resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
         | 
| 668 | 
            -
                #   resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate"
         | 
| 983 | 
            +
                #   resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
         | 
| 669 984 | 
             
                #   resp.update.params #=> Array
         | 
| 670 | 
            -
                #   resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging"
         | 
| 985 | 
            +
                #   resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
         | 
| 671 986 | 
             
                #   resp.update.params[0].value #=> String
         | 
| 672 987 | 
             
                #   resp.update.created_at #=> Time
         | 
| 673 988 | 
             
                #   resp.update.errors #=> Array
         | 
| 674 | 
            -
                #   resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown"
         | 
| 989 | 
            +
                #   resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
         | 
| 675 990 | 
             
                #   resp.update.errors[0].error_message #=> String
         | 
| 676 991 | 
             
                #   resp.update.errors[0].resource_ids #=> Array
         | 
| 677 992 | 
             
                #   resp.update.errors[0].resource_ids[0] #=> String
         | 
| @@ -753,17 +1068,84 @@ module Aws::EKS | |
| 753 1068 | 
             
                  req.send_request(options)
         | 
| 754 1069 | 
             
                end
         | 
| 755 1070 |  | 
| 1071 | 
            +
                # Lists the Amazon EKS node groups associated with the specified cluster
         | 
| 1072 | 
            +
                # in your AWS account in the specified Region.
         | 
| 1073 | 
            +
                #
         | 
| 1074 | 
            +
                # @option params [required, String] :cluster_name
         | 
| 1075 | 
            +
                #   The name of the Amazon EKS cluster that you would like to list node
         | 
| 1076 | 
            +
                #   groups in.
         | 
| 1077 | 
            +
                #
         | 
| 1078 | 
            +
                # @option params [Integer] :max_results
         | 
| 1079 | 
            +
                #   The maximum number of node group results returned by `ListNodegroups`
         | 
| 1080 | 
            +
                #   in paginated output. When you use this parameter, `ListNodegroups`
         | 
| 1081 | 
            +
                #   returns only `maxResults` results in a single page along with a
         | 
| 1082 | 
            +
                #   `nextToken` response element. You can see the remaining results of the
         | 
| 1083 | 
            +
                #   initial request by sending another `ListNodegroups` request with the
         | 
| 1084 | 
            +
                #   returned `nextToken` value. This value can be between 1 and 100. If
         | 
| 1085 | 
            +
                #   you don't use this parameter, `ListNodegroups` returns up to 100
         | 
| 1086 | 
            +
                #   results and a `nextToken` value if applicable.
         | 
| 1087 | 
            +
                #
         | 
| 1088 | 
            +
                # @option params [String] :next_token
         | 
| 1089 | 
            +
                #   The `nextToken` value returned from a previous paginated
         | 
| 1090 | 
            +
                #   `ListNodegroups` request where `maxResults` was used and the results
         | 
| 1091 | 
            +
                #   exceeded the value of that parameter. Pagination continues from the
         | 
| 1092 | 
            +
                #   end of the previous results that returned the `nextToken` value.
         | 
| 1093 | 
            +
                #
         | 
| 1094 | 
            +
                # @return [Types::ListNodegroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 1095 | 
            +
                #
         | 
| 1096 | 
            +
                #   * {Types::ListNodegroupsResponse#nodegroups #nodegroups} => Array<String>
         | 
| 1097 | 
            +
                #   * {Types::ListNodegroupsResponse#next_token #next_token} => String
         | 
| 1098 | 
            +
                #
         | 
| 1099 | 
            +
                # @example Request syntax with placeholder values
         | 
| 1100 | 
            +
                #
         | 
| 1101 | 
            +
                #   resp = client.list_nodegroups({
         | 
| 1102 | 
            +
                #     cluster_name: "String", # required
         | 
| 1103 | 
            +
                #     max_results: 1,
         | 
| 1104 | 
            +
                #     next_token: "String",
         | 
| 1105 | 
            +
                #   })
         | 
| 1106 | 
            +
                #
         | 
| 1107 | 
            +
                # @example Response structure
         | 
| 1108 | 
            +
                #
         | 
| 1109 | 
            +
                #   resp.nodegroups #=> Array
         | 
| 1110 | 
            +
                #   resp.nodegroups[0] #=> String
         | 
| 1111 | 
            +
                #   resp.next_token #=> String
         | 
| 1112 | 
            +
                #
         | 
| 1113 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListNodegroups AWS API Documentation
         | 
| 1114 | 
            +
                #
         | 
| 1115 | 
            +
                # @overload list_nodegroups(params = {})
         | 
| 1116 | 
            +
                # @param [Hash] params ({})
         | 
| 1117 | 
            +
                def list_nodegroups(params = {}, options = {})
         | 
| 1118 | 
            +
                  req = build_request(:list_nodegroups, params)
         | 
| 1119 | 
            +
                  req.send_request(options)
         | 
| 1120 | 
            +
                end
         | 
| 1121 | 
            +
             | 
| 756 1122 | 
             
                # List the tags for an Amazon EKS resource.
         | 
| 757 1123 | 
             
                #
         | 
| 758 1124 | 
             
                # @option params [required, String] :resource_arn
         | 
| 759 1125 | 
             
                #   The Amazon Resource Name (ARN) that identifies the resource for which
         | 
| 760 1126 | 
             
                #   to list the tags. Currently, the supported resources are Amazon EKS
         | 
| 761 | 
            -
                #   clusters.
         | 
| 1127 | 
            +
                #   clusters and managed node groups.
         | 
| 762 1128 | 
             
                #
         | 
| 763 1129 | 
             
                # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 764 1130 | 
             
                #
         | 
| 765 1131 | 
             
                #   * {Types::ListTagsForResourceResponse#tags #tags} => Hash<String,String>
         | 
| 766 1132 | 
             
                #
         | 
| 1133 | 
            +
                #
         | 
| 1134 | 
            +
                # @example Example: To list tags for a cluster
         | 
| 1135 | 
            +
                #
         | 
| 1136 | 
            +
                #   # This example lists all of the tags for the `beta` cluster.
         | 
| 1137 | 
            +
                #
         | 
| 1138 | 
            +
                #   resp = client.list_tags_for_resource({
         | 
| 1139 | 
            +
                #     resource_arn: "arn:aws:eks:us-west-2:012345678910:cluster/beta", 
         | 
| 1140 | 
            +
                #   })
         | 
| 1141 | 
            +
                #
         | 
| 1142 | 
            +
                #   resp.to_h outputs the following:
         | 
| 1143 | 
            +
                #   {
         | 
| 1144 | 
            +
                #     tags: {
         | 
| 1145 | 
            +
                #       "aws:tag:domain" => "beta", 
         | 
| 1146 | 
            +
                #     }, 
         | 
| 1147 | 
            +
                #   }
         | 
| 1148 | 
            +
                #
         | 
| 767 1149 | 
             
                # @example Request syntax with placeholder values
         | 
| 768 1150 | 
             
                #
         | 
| 769 1151 | 
             
                #   resp = client.list_tags_for_resource({
         | 
| @@ -784,12 +1166,15 @@ module Aws::EKS | |
| 784 1166 | 
             
                  req.send_request(options)
         | 
| 785 1167 | 
             
                end
         | 
| 786 1168 |  | 
| 787 | 
            -
                # Lists the updates associated with an Amazon EKS cluster  | 
| 788 | 
            -
                # account, in the specified Region.
         | 
| 1169 | 
            +
                # Lists the updates associated with an Amazon EKS cluster or managed
         | 
| 1170 | 
            +
                # node group in your AWS account, in the specified Region.
         | 
| 789 1171 | 
             
                #
         | 
| 790 1172 | 
             
                # @option params [required, String] :name
         | 
| 791 1173 | 
             
                #   The name of the Amazon EKS cluster to list updates for.
         | 
| 792 1174 | 
             
                #
         | 
| 1175 | 
            +
                # @option params [String] :nodegroup_name
         | 
| 1176 | 
            +
                #   The name of the Amazon EKS managed node group to list updates for.
         | 
| 1177 | 
            +
                #
         | 
| 793 1178 | 
             
                # @option params [String] :next_token
         | 
| 794 1179 | 
             
                #   The `nextToken` value returned from a previous paginated `ListUpdates`
         | 
| 795 1180 | 
             
                #   request where `maxResults` was used and the results exceeded the value
         | 
| @@ -815,6 +1200,7 @@ module Aws::EKS | |
| 815 1200 | 
             
                #
         | 
| 816 1201 | 
             
                #   resp = client.list_updates({
         | 
| 817 1202 | 
             
                #     name: "String", # required
         | 
| 1203 | 
            +
                #     nodegroup_name: "String",
         | 
| 818 1204 | 
             
                #     next_token: "String",
         | 
| 819 1205 | 
             
                #     max_results: 1,
         | 
| 820 1206 | 
             
                #   })
         | 
| @@ -837,11 +1223,16 @@ module Aws::EKS | |
| 837 1223 | 
             
                # Associates the specified tags to a resource with the specified
         | 
| 838 1224 | 
             
                # `resourceArn`. If existing tags on a resource are not specified in the
         | 
| 839 1225 | 
             
                # request parameters, they are not changed. When a resource is deleted,
         | 
| 840 | 
            -
                # the tags associated with that resource are deleted as well.
         | 
| 1226 | 
            +
                # the tags associated with that resource are deleted as well. Tags that
         | 
| 1227 | 
            +
                # you create for Amazon EKS resources do not propagate to any other
         | 
| 1228 | 
            +
                # resources associated with the cluster. For example, if you tag a
         | 
| 1229 | 
            +
                # cluster with this operation, that tag does not automatically propagate
         | 
| 1230 | 
            +
                # to the subnets and worker nodes associated with the cluster.
         | 
| 841 1231 | 
             
                #
         | 
| 842 1232 | 
             
                # @option params [required, String] :resource_arn
         | 
| 843 1233 | 
             
                #   The Amazon Resource Name (ARN) of the resource to which to add tags.
         | 
| 844 | 
            -
                #   Currently, the supported resources are Amazon EKS clusters | 
| 1234 | 
            +
                #   Currently, the supported resources are Amazon EKS clusters and managed
         | 
| 1235 | 
            +
                #   node groups.
         | 
| 845 1236 | 
             
                #
         | 
| 846 1237 | 
             
                # @option params [required, Hash<String,String>] :tags
         | 
| 847 1238 | 
             
                #   The tags to add to the resource. A tag is an array of key-value pairs.
         | 
| @@ -870,7 +1261,8 @@ module Aws::EKS | |
| 870 1261 | 
             
                #
         | 
| 871 1262 | 
             
                # @option params [required, String] :resource_arn
         | 
| 872 1263 | 
             
                #   The Amazon Resource Name (ARN) of the resource from which to delete
         | 
| 873 | 
            -
                #   tags. Currently, the supported resources are Amazon EKS clusters | 
| 1264 | 
            +
                #   tags. Currently, the supported resources are Amazon EKS clusters and
         | 
| 1265 | 
            +
                #   managed node groups.
         | 
| 874 1266 | 
             
                #
         | 
| 875 1267 | 
             
                # @option params [required, Array<String>] :tag_keys
         | 
| 876 1268 | 
             
                #   The keys of the tags to be removed.
         | 
| @@ -992,13 +1384,13 @@ module Aws::EKS | |
| 992 1384 | 
             
                #
         | 
| 993 1385 | 
             
                #   resp.update.id #=> String
         | 
| 994 1386 | 
             
                #   resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
         | 
| 995 | 
            -
                #   resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate"
         | 
| 1387 | 
            +
                #   resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
         | 
| 996 1388 | 
             
                #   resp.update.params #=> Array
         | 
| 997 | 
            -
                #   resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging"
         | 
| 1389 | 
            +
                #   resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
         | 
| 998 1390 | 
             
                #   resp.update.params[0].value #=> String
         | 
| 999 1391 | 
             
                #   resp.update.created_at #=> Time
         | 
| 1000 1392 | 
             
                #   resp.update.errors #=> Array
         | 
| 1001 | 
            -
                #   resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown"
         | 
| 1393 | 
            +
                #   resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
         | 
| 1002 1394 | 
             
                #   resp.update.errors[0].error_message #=> String
         | 
| 1003 1395 | 
             
                #   resp.update.errors[0].resource_ids #=> Array
         | 
| 1004 1396 | 
             
                #   resp.update.errors[0].resource_ids[0] #=> String
         | 
| @@ -1023,6 +1415,10 @@ module Aws::EKS | |
| 1023 1415 | 
             
                # complete (either `Failed` or `Successful`), the cluster status moves
         | 
| 1024 1416 | 
             
                # to `Active`.
         | 
| 1025 1417 | 
             
                #
         | 
| 1418 | 
            +
                # If your cluster has managed node groups attached to it, all of your
         | 
| 1419 | 
            +
                # node groups’ Kubernetes versions must match the cluster’s Kubernetes
         | 
| 1420 | 
            +
                # version in order to update the cluster to a new Kubernetes version.
         | 
| 1421 | 
            +
                #
         | 
| 1026 1422 | 
             
                # @option params [required, String] :name
         | 
| 1027 1423 | 
             
                #   The name of the Amazon EKS cluster to update.
         | 
| 1028 1424 | 
             
                #
         | 
| @@ -1052,13 +1448,13 @@ module Aws::EKS | |
| 1052 1448 | 
             
                #
         | 
| 1053 1449 | 
             
                #   resp.update.id #=> String
         | 
| 1054 1450 | 
             
                #   resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
         | 
| 1055 | 
            -
                #   resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate"
         | 
| 1451 | 
            +
                #   resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
         | 
| 1056 1452 | 
             
                #   resp.update.params #=> Array
         | 
| 1057 | 
            -
                #   resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging"
         | 
| 1453 | 
            +
                #   resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
         | 
| 1058 1454 | 
             
                #   resp.update.params[0].value #=> String
         | 
| 1059 1455 | 
             
                #   resp.update.created_at #=> Time
         | 
| 1060 1456 | 
             
                #   resp.update.errors #=> Array
         | 
| 1061 | 
            -
                #   resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown"
         | 
| 1457 | 
            +
                #   resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
         | 
| 1062 1458 | 
             
                #   resp.update.errors[0].error_message #=> String
         | 
| 1063 1459 | 
             
                #   resp.update.errors[0].resource_ids #=> Array
         | 
| 1064 1460 | 
             
                #   resp.update.errors[0].resource_ids[0] #=> String
         | 
| @@ -1072,6 +1468,181 @@ module Aws::EKS | |
| 1072 1468 | 
             
                  req.send_request(options)
         | 
| 1073 1469 | 
             
                end
         | 
| 1074 1470 |  | 
| 1471 | 
            +
                # Updates an Amazon EKS managed node group configuration. Your node
         | 
| 1472 | 
            +
                # group continues to function during the update. The response output
         | 
| 1473 | 
            +
                # includes an update ID that you can use to track the status of your
         | 
| 1474 | 
            +
                # node group update with the DescribeUpdate API operation. Currently you
         | 
| 1475 | 
            +
                # can update the Kubernetes labels for a node group or the scaling
         | 
| 1476 | 
            +
                # configuration.
         | 
| 1477 | 
            +
                #
         | 
| 1478 | 
            +
                # @option params [required, String] :cluster_name
         | 
| 1479 | 
            +
                #   The name of the Amazon EKS cluster that the managed node group resides
         | 
| 1480 | 
            +
                #   in.
         | 
| 1481 | 
            +
                #
         | 
| 1482 | 
            +
                # @option params [required, String] :nodegroup_name
         | 
| 1483 | 
            +
                #   The name of the managed node group to update.
         | 
| 1484 | 
            +
                #
         | 
| 1485 | 
            +
                # @option params [Types::UpdateLabelsPayload] :labels
         | 
| 1486 | 
            +
                #   The Kubernetes labels to be applied to the nodes in the node group
         | 
| 1487 | 
            +
                #   after the update.
         | 
| 1488 | 
            +
                #
         | 
| 1489 | 
            +
                # @option params [Types::NodegroupScalingConfig] :scaling_config
         | 
| 1490 | 
            +
                #   The scaling configuration details for the AutoScaling group after the
         | 
| 1491 | 
            +
                #   update.
         | 
| 1492 | 
            +
                #
         | 
| 1493 | 
            +
                # @option params [String] :client_request_token
         | 
| 1494 | 
            +
                #   Unique, case-sensitive identifier that you provide to ensure the
         | 
| 1495 | 
            +
                #   idempotency of the request.
         | 
| 1496 | 
            +
                #
         | 
| 1497 | 
            +
                #   **A suitable default value is auto-generated.** You should normally
         | 
| 1498 | 
            +
                #   not need to pass this option.**
         | 
| 1499 | 
            +
                #
         | 
| 1500 | 
            +
                # @return [Types::UpdateNodegroupConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 1501 | 
            +
                #
         | 
| 1502 | 
            +
                #   * {Types::UpdateNodegroupConfigResponse#update #update} => Types::Update
         | 
| 1503 | 
            +
                #
         | 
| 1504 | 
            +
                # @example Request syntax with placeholder values
         | 
| 1505 | 
            +
                #
         | 
| 1506 | 
            +
                #   resp = client.update_nodegroup_config({
         | 
| 1507 | 
            +
                #     cluster_name: "String", # required
         | 
| 1508 | 
            +
                #     nodegroup_name: "String", # required
         | 
| 1509 | 
            +
                #     labels: {
         | 
| 1510 | 
            +
                #       add_or_update_labels: {
         | 
| 1511 | 
            +
                #         "labelKey" => "labelValue",
         | 
| 1512 | 
            +
                #       },
         | 
| 1513 | 
            +
                #       remove_labels: ["String"],
         | 
| 1514 | 
            +
                #     },
         | 
| 1515 | 
            +
                #     scaling_config: {
         | 
| 1516 | 
            +
                #       min_size: 1,
         | 
| 1517 | 
            +
                #       max_size: 1,
         | 
| 1518 | 
            +
                #       desired_size: 1,
         | 
| 1519 | 
            +
                #     },
         | 
| 1520 | 
            +
                #     client_request_token: "String",
         | 
| 1521 | 
            +
                #   })
         | 
| 1522 | 
            +
                #
         | 
| 1523 | 
            +
                # @example Response structure
         | 
| 1524 | 
            +
                #
         | 
| 1525 | 
            +
                #   resp.update.id #=> String
         | 
| 1526 | 
            +
                #   resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
         | 
| 1527 | 
            +
                #   resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
         | 
| 1528 | 
            +
                #   resp.update.params #=> Array
         | 
| 1529 | 
            +
                #   resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
         | 
| 1530 | 
            +
                #   resp.update.params[0].value #=> String
         | 
| 1531 | 
            +
                #   resp.update.created_at #=> Time
         | 
| 1532 | 
            +
                #   resp.update.errors #=> Array
         | 
| 1533 | 
            +
                #   resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
         | 
| 1534 | 
            +
                #   resp.update.errors[0].error_message #=> String
         | 
| 1535 | 
            +
                #   resp.update.errors[0].resource_ids #=> Array
         | 
| 1536 | 
            +
                #   resp.update.errors[0].resource_ids[0] #=> String
         | 
| 1537 | 
            +
                #
         | 
| 1538 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupConfig AWS API Documentation
         | 
| 1539 | 
            +
                #
         | 
| 1540 | 
            +
                # @overload update_nodegroup_config(params = {})
         | 
| 1541 | 
            +
                # @param [Hash] params ({})
         | 
| 1542 | 
            +
                def update_nodegroup_config(params = {}, options = {})
         | 
| 1543 | 
            +
                  req = build_request(:update_nodegroup_config, params)
         | 
| 1544 | 
            +
                  req.send_request(options)
         | 
| 1545 | 
            +
                end
         | 
| 1546 | 
            +
             | 
| 1547 | 
            +
                # Updates the Kubernetes version or AMI version of an Amazon EKS managed
         | 
| 1548 | 
            +
                # node group.
         | 
| 1549 | 
            +
                #
         | 
| 1550 | 
            +
                # You can update to the latest available AMI version of a node group's
         | 
| 1551 | 
            +
                # current Kubernetes version by not specifying a Kubernetes version in
         | 
| 1552 | 
            +
                # the request. You can update to the latest AMI version of your
         | 
| 1553 | 
            +
                # cluster's current Kubernetes version by specifying your cluster's
         | 
| 1554 | 
            +
                # Kubernetes version in the request. For more information, see [Amazon
         | 
| 1555 | 
            +
                # EKS-Optimized Linux AMI Versions][1] in the *Amazon EKS User Guide*.
         | 
| 1556 | 
            +
                #
         | 
| 1557 | 
            +
                # You cannot roll back a node group to an earlier Kubernetes version or
         | 
| 1558 | 
            +
                # AMI version.
         | 
| 1559 | 
            +
                #
         | 
| 1560 | 
            +
                # When a node in a managed node group is terminated due to a scaling
         | 
| 1561 | 
            +
                # action or update, the pods in that node are drained first. Amazon EKS
         | 
| 1562 | 
            +
                # attempts to drain the nodes gracefully and will fail if it is unable
         | 
| 1563 | 
            +
                # to do so. You can `force` the update if Amazon EKS is unable to drain
         | 
| 1564 | 
            +
                # the nodes as a result of a pod disruption budget issue.
         | 
| 1565 | 
            +
                #
         | 
| 1566 | 
            +
                #
         | 
| 1567 | 
            +
                #
         | 
| 1568 | 
            +
                # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
         | 
| 1569 | 
            +
                #
         | 
| 1570 | 
            +
                # @option params [required, String] :cluster_name
         | 
| 1571 | 
            +
                #   The name of the Amazon EKS cluster that is associated with the managed
         | 
| 1572 | 
            +
                #   node group to update.
         | 
| 1573 | 
            +
                #
         | 
| 1574 | 
            +
                # @option params [required, String] :nodegroup_name
         | 
| 1575 | 
            +
                #   The name of the managed node group to update.
         | 
| 1576 | 
            +
                #
         | 
| 1577 | 
            +
                # @option params [String] :version
         | 
| 1578 | 
            +
                #   The Kubernetes version to update to. If no version is specified, then
         | 
| 1579 | 
            +
                #   the Kubernetes version of the node group does not change. You can
         | 
| 1580 | 
            +
                #   specify the Kubernetes version of the cluster to update the node group
         | 
| 1581 | 
            +
                #   to the latest AMI version of the cluster's Kubernetes version.
         | 
| 1582 | 
            +
                #
         | 
| 1583 | 
            +
                # @option params [String] :release_version
         | 
| 1584 | 
            +
                #   The AMI version of the Amazon EKS-optimized AMI to use for the update.
         | 
| 1585 | 
            +
                #   By default, the latest available AMI version for the node group's
         | 
| 1586 | 
            +
                #   Kubernetes version is used. For more information, see [Amazon
         | 
| 1587 | 
            +
                #   EKS-Optimized Linux AMI Versions ][1] in the *Amazon EKS User Guide*.
         | 
| 1588 | 
            +
                #
         | 
| 1589 | 
            +
                #
         | 
| 1590 | 
            +
                #
         | 
| 1591 | 
            +
                #   [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
         | 
| 1592 | 
            +
                #
         | 
| 1593 | 
            +
                # @option params [Boolean] :force
         | 
| 1594 | 
            +
                #   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.
         | 
| 1599 | 
            +
                #
         | 
| 1600 | 
            +
                # @option params [String] :client_request_token
         | 
| 1601 | 
            +
                #   Unique, case-sensitive identifier that you provide to ensure the
         | 
| 1602 | 
            +
                #   idempotency of the request.
         | 
| 1603 | 
            +
                #
         | 
| 1604 | 
            +
                #   **A suitable default value is auto-generated.** You should normally
         | 
| 1605 | 
            +
                #   not need to pass this option.**
         | 
| 1606 | 
            +
                #
         | 
| 1607 | 
            +
                # @return [Types::UpdateNodegroupVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 1608 | 
            +
                #
         | 
| 1609 | 
            +
                #   * {Types::UpdateNodegroupVersionResponse#update #update} => Types::Update
         | 
| 1610 | 
            +
                #
         | 
| 1611 | 
            +
                # @example Request syntax with placeholder values
         | 
| 1612 | 
            +
                #
         | 
| 1613 | 
            +
                #   resp = client.update_nodegroup_version({
         | 
| 1614 | 
            +
                #     cluster_name: "String", # required
         | 
| 1615 | 
            +
                #     nodegroup_name: "String", # required
         | 
| 1616 | 
            +
                #     version: "String",
         | 
| 1617 | 
            +
                #     release_version: "String",
         | 
| 1618 | 
            +
                #     force: false,
         | 
| 1619 | 
            +
                #     client_request_token: "String",
         | 
| 1620 | 
            +
                #   })
         | 
| 1621 | 
            +
                #
         | 
| 1622 | 
            +
                # @example Response structure
         | 
| 1623 | 
            +
                #
         | 
| 1624 | 
            +
                #   resp.update.id #=> String
         | 
| 1625 | 
            +
                #   resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
         | 
| 1626 | 
            +
                #   resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
         | 
| 1627 | 
            +
                #   resp.update.params #=> Array
         | 
| 1628 | 
            +
                #   resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
         | 
| 1629 | 
            +
                #   resp.update.params[0].value #=> String
         | 
| 1630 | 
            +
                #   resp.update.created_at #=> Time
         | 
| 1631 | 
            +
                #   resp.update.errors #=> Array
         | 
| 1632 | 
            +
                #   resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
         | 
| 1633 | 
            +
                #   resp.update.errors[0].error_message #=> String
         | 
| 1634 | 
            +
                #   resp.update.errors[0].resource_ids #=> Array
         | 
| 1635 | 
            +
                #   resp.update.errors[0].resource_ids[0] #=> String
         | 
| 1636 | 
            +
                #
         | 
| 1637 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupVersion AWS API Documentation
         | 
| 1638 | 
            +
                #
         | 
| 1639 | 
            +
                # @overload update_nodegroup_version(params = {})
         | 
| 1640 | 
            +
                # @param [Hash] params ({})
         | 
| 1641 | 
            +
                def update_nodegroup_version(params = {}, options = {})
         | 
| 1642 | 
            +
                  req = build_request(:update_nodegroup_version, params)
         | 
| 1643 | 
            +
                  req.send_request(options)
         | 
| 1644 | 
            +
                end
         | 
| 1645 | 
            +
             | 
| 1075 1646 | 
             
                # @!endgroup
         | 
| 1076 1647 |  | 
| 1077 1648 | 
             
                # @param params ({})
         | 
| @@ -1085,7 +1656,7 @@ module Aws::EKS | |
| 1085 1656 | 
             
                    params: params,
         | 
| 1086 1657 | 
             
                    config: config)
         | 
| 1087 1658 | 
             
                  context[:gem_name] = 'aws-sdk-eks'
         | 
| 1088 | 
            -
                  context[:gem_version] = '1. | 
| 1659 | 
            +
                  context[:gem_version] = '1.28.0'
         | 
| 1089 1660 | 
             
                  Seahorse::Client::Request.new(handlers, context)
         | 
| 1090 1661 | 
             
                end
         | 
| 1091 1662 |  | 
| @@ -1151,10 +1722,12 @@ module Aws::EKS | |
| 1151 1722 | 
             
                # The following table lists the valid waiter names, the operations they call,
         | 
| 1152 1723 | 
             
                # and the default `:delay` and `:max_attempts` values.
         | 
| 1153 1724 | 
             
                #
         | 
| 1154 | 
            -
                # | waiter_name | 
| 1155 | 
            -
                # |  | 
| 1156 | 
            -
                # | cluster_active | 
| 1157 | 
            -
                # | cluster_deleted | 
| 1725 | 
            +
                # | waiter_name       | params                | :delay   | :max_attempts |
         | 
| 1726 | 
            +
                # | ----------------- | --------------------- | -------- | ------------- |
         | 
| 1727 | 
            +
                # | cluster_active    | {#describe_cluster}   | 30       | 40            |
         | 
| 1728 | 
            +
                # | cluster_deleted   | {#describe_cluster}   | 30       | 40            |
         | 
| 1729 | 
            +
                # | nodegroup_active  | {#describe_nodegroup} | 30       | 80            |
         | 
| 1730 | 
            +
                # | nodegroup_deleted | {#describe_nodegroup} | 30       | 40            |
         | 
| 1158 1731 | 
             
                #
         | 
| 1159 1732 | 
             
                # @raise [Errors::FailureStateError] Raised when the waiter terminates
         | 
| 1160 1733 | 
             
                #   because the waiter has entered a state that it will not transition
         | 
| @@ -1206,7 +1779,9 @@ module Aws::EKS | |
| 1206 1779 | 
             
                def waiters
         | 
| 1207 1780 | 
             
                  {
         | 
| 1208 1781 | 
             
                    cluster_active: Waiters::ClusterActive,
         | 
| 1209 | 
            -
                    cluster_deleted: Waiters::ClusterDeleted
         | 
| 1782 | 
            +
                    cluster_deleted: Waiters::ClusterDeleted,
         | 
| 1783 | 
            +
                    nodegroup_active: Waiters::NodegroupActive,
         | 
| 1784 | 
            +
                    nodegroup_deleted: Waiters::NodegroupDeleted
         | 
| 1210 1785 | 
             
                  }
         | 
| 1211 1786 | 
             
                end
         | 
| 1212 1787 |  |