class_docstr: Creates an Amazon EKS managed node group for an existing Amazon EKS Cluster.
  
  .. seealso::
      For more information on how to use this operator, take a look at the guide:
      :ref:`howto/operator:EksCreateNodegroupOperator`
  
  :param cluster_name: The name of the Amazon EKS Cluster to create the managed nodegroup in. (templated)
  :param nodegroup_name: The unique name to give your managed nodegroup. (templated)
  :param nodegroup_subnets:
       The subnets to use for the Auto Scaling group that is created for the managed nodegroup. (templated)
  :param nodegroup_role_arn:
       The Amazon Resource Name (ARN) of the IAM role to associate with the managed nodegroup. (templated)
  :param create_nodegroup_kwargs: Optional parameters to pass to the Create Nodegroup API (templated)
  :param wait_for_completion: If True, waits for operator to complete. (default: False) (templated)
  :param aws_conn_id: The Airflow connection used for AWS credentials. (templated)
       If this is None or empty then the default boto3 behaviour is used. If
       running Airflow in a distributed manner and aws_conn_id is None or
       empty, then the default boto3 configuration would be used (and must be
       maintained on each worker node).
  :param region: Which AWS region the connection should use. (templated)
      If this is None or empty then the default boto3 behaviour is used.
  :param waiter_delay: Time (in seconds) to wait between two consecutive calls to check nodegroup state
  :param waiter_max_attempts: The maximum number of attempts to check nodegroup state
  :param deferrable: If True, the operator will wait asynchronously for the nodegroup to be created.
      This implies waiting for completion. This mode requires aiobotocore module to be installed.
      (default: False)
class_docstr_tok: ["Creates","an","Amazon","EKS","managed","node","group","for","an","existing","Amazon","EKS","Cluster",".","..","seealso",":",":","For","more","information","on","how","to","use","this","operator",",","take","a","look","at","the","guide",":",":","ref",":","`","howto\/operator",":","EksCreateNodegroupOperator","`",":","param","cluster_name",":","The","name","of","the","Amazon","EKS","Cluster","to","create","the","managed","nodegroup","in",".","(","templated",")",":","param","nodegroup_name",":","The","unique","name","to","give","your","managed","nodegroup",".","(","templated",")",":","param","nodegroup_subnets",":","The","subnets","to","use","for","the","Auto","Scaling","group","that","is","created","for","the","managed","nodegroup",".","(","templated",")",":","param","nodegroup_role_arn",":","The","Amazon","Resource","Name","(","ARN",")","of","the","IAM","role","to","associate","with","the","managed","nodegroup",".","(","templated",")",":","param","create_nodegroup_kwargs",":","Optional","parameters","to","pass","to","the","Create","Nodegroup","API","(","templated",")",":","param","wait_for_completion",":","If","True",",","waits","for","operator","to","complete",".","(","default",":","False",")","(","templated",")",":","param","aws_conn_id",":","The","Airflow","connection","used","for","AWS","credentials",".","(","templated",")","If","this","is","None","or","empty","then","the","default","boto3","behaviour","is","used",".","If","running","Airflow","in","a","distributed","manner","and","aws_conn_id","is","None","or","empty",",","then","the","default","boto3","configuration","would","be","used","(","and","must","be","maintained","on","each","worker","node",")",".",":","param","region",":","Which","AWS","region","the","connection","should","use",".","(","templated",")","If","this","is","None","or","empty","then","the","default","boto3","behaviour","is","used",".",":","param","waiter_delay",":","Time","(","in","seconds",")","to","wait","between","two","consecutive","calls","to","check","nodegroup","state",":","param","waiter_max_attempts",":","The","maximum","number","of","attempts","to","check","nodegroup","state",":","param","deferrable",":","If","True",",","the","operator","will","wait","asynchronously","for","the","nodegroup","to","be","created",".","This","implies","waiting","for","completion",".","This","mode","requires","aiobotocore","module","to","be","installed",".","(","default",":","False",")"]
code: def __init__(
      self,
      cluster_name: str,
      nodegroup_subnets: list[str] | str,
      nodegroup_role_arn: str,
      nodegroup_name: str = DEFAULT_NODEGROUP_NAME,
      create_nodegroup_kwargs: dict | None = None,
      wait_for_completion: bool = False,
      aws_conn_id: str = DEFAULT_CONN_ID,
      region: str | None = None,
      waiter_delay: int = 30,
      waiter_max_attempts: int = 80,
      deferrable: bool = conf.getboolean(
          "operators", "default_deferrable", fallback=False
      ),
      **kwargs,
  ) -> None:
      self.nodegroup_subnets = nodegroup_subnets
      self.compute = "nodegroup"
      self.cluster_name = cluster_name
      self.nodegroup_role_arn = nodegroup_role_arn
      self.nodegroup_name = nodegroup_name
      self.create_nodegroup_kwargs = create_nodegroup_kwargs or {}
      self.wait_for_completion = (
          False if deferrable else wait_for_completion
      )
      self.aws_conn_id = aws_conn_id
      self.region = region
      self.waiter_delay = waiter_delay
      self.waiter_max_attempts = waiter_max_attempts
      self.deferrable = deferrable
      super().__init__(**kwargs)
  
imports: from __future__ import annotations
  import logging
  import warnings
  from ast import literal_eval
  from datetime import timedelta
  from functools import cached_property
  from typing import TYPE_CHECKING, Any, List, Sequence, cast
  from botocore.exceptions import ClientError, WaiterError
  from airflow.configuration import conf
  from airflow.exceptions import AirflowException, AirflowProviderDeprecationWarning
  from airflow.models import BaseOperator
  from airflow.providers.amazon.aws.hooks.eks import EksHook
  from airflow.providers.amazon.aws.triggers.eks import EksCreateClusterTrigger, EksCreateFargateProfileTrigger, EksCreateNodegroupTrigger, EksDeleteClusterTrigger, EksDeleteFargateProfileTrigger, EksDeleteNodegroupTrigger
  from airflow.providers.amazon.aws.utils.waiter_with_logging import wait
  from airflow.providers.cncf.kubernetes.utils.pod_manager import OnFinishAction
label_desc: Use image node_id 1 to create a new EksCreateNodegroupOperator object from inherited base classes: BaseOperator with example: obj = EksCreateNodegroupOperator(cluster_name, nodegroup_subnets, nodegroup_role_arn, nodegroup_name, create_nodegroup_kwargs, wait_for_completion, aws_conn_id, region, waiter_delay, waiter_max_attempts, deferrable)