airflow.providers.amazon.aws.sensors.eks

Tracking the state of Amazon EKS Clusters, Amazon EKS managed node groups, and AWS Fargate profiles.

Module Contents

airflow.providers.amazon.aws.sensors.eks.DEFAULT_CONN_ID = aws_default[source]
airflow.providers.amazon.aws.sensors.eks.CLUSTER_TERMINAL_STATES[source]
airflow.providers.amazon.aws.sensors.eks.FARGATE_TERMINAL_STATES[source]
airflow.providers.amazon.aws.sensors.eks.NODEGROUP_TERMINAL_STATES[source]
airflow.providers.amazon.aws.sensors.eks.UNEXPECTED_TERMINAL_STATE_MSG = Terminal state reached. Current state: {current_state}, Expected state: {target_state}[source]
class airflow.providers.amazon.aws.sensors.eks.EKSClusterStateSensor(*, cluster_name: str, target_state: ClusterStates = ClusterStates.ACTIVE, aws_conn_id: str = DEFAULT_CONN_ID, region: Optional[str] = None, **kwargs)[source]

Bases: airflow.sensors.base.BaseSensorOperator

Check the state of an Amazon EKS Cluster until it reaches the target state or another terminal state.

Parameters
  • cluster_name (str) -- The name of the Cluster to watch. (templated)

  • target_state (ClusterStates) -- Target state of the Cluster. (templated)

  • region (str) -- Which AWS region the connection should use. (templated) If this is None or empty then the default boto3 behaviour is used.

  • aws_conn_id (str) -- 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).

template_fields = ['cluster_name', 'target_state', 'aws_conn_id', 'region'][source]
ui_color = #ff9900[source]
ui_fgcolor = #232F3E[source]
poke(self, context)[source]
class airflow.providers.amazon.aws.sensors.eks.EKSFargateProfileStateSensor(*, cluster_name: str, fargate_profile_name: str, target_state: FargateProfileStates = FargateProfileStates.ACTIVE, aws_conn_id: str = DEFAULT_CONN_ID, region: Optional[str] = None, **kwargs)[source]

Bases: airflow.sensors.base.BaseSensorOperator

Check the state of an AWS Fargate profile until it reaches the target state or another terminal state.

Parameters
  • cluster_name (str) -- The name of the Cluster which the AWS Fargate profile is attached to. (templated)

  • fargate_profile_name (str) -- The name of the Fargate profile to watch. (templated)

  • target_state (FargateProfileStates) -- Target state of the Fargate profile. (templated)

  • region (str) -- Which AWS region the connection should use. (templated) If this is None or empty then the default boto3 behaviour is used.

  • aws_conn_id (str) -- 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).

template_fields = ['cluster_name', 'fargate_profile_name', 'target_state', 'aws_conn_id', 'region'][source]
ui_color = #ff9900[source]
ui_fgcolor = #232F3E[source]
poke(self, context)[source]
class airflow.providers.amazon.aws.sensors.eks.EKSNodegroupStateSensor(*, cluster_name: str, nodegroup_name: str, target_state: NodegroupStates = NodegroupStates.ACTIVE, aws_conn_id: str = DEFAULT_CONN_ID, region: Optional[str] = None, **kwargs)[source]

Bases: airflow.sensors.base.BaseSensorOperator

Check the state of an EKS managed node group until it reaches the target state or another terminal state.

Parameters
  • cluster_name (str) -- The name of the Cluster which the Nodegroup is attached to. (templated)

  • nodegroup_name (str) -- The name of the Nodegroup to watch. (templated)

  • target_state (NodegroupStates) -- Target state of the Nodegroup. (templated)

  • region (str) -- Which AWS region the connection should use. (templated) If this is None or empty then the default boto3 behaviour is used.

  • aws_conn_id (str) -- 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).

template_fields = ['cluster_name', 'nodegroup_name', 'target_state', 'aws_conn_id', 'region'][source]
ui_color = #ff9900[source]
ui_fgcolor = #232F3E[source]
poke(self, context)[source]

Was this entry helpful?