Source code for airflow.providers.amazon.aws.sensors.emr_containers
# Licensed to the Apache Software Foundation (ASF) under one# or more contributor license agreements. See the NOTICE file# distributed with this work for additional information# regarding copyright ownership. The ASF licenses this file# to you under the Apache License, Version 2.0 (the# "License"); you may not use this file except in compliance# with the License. You may obtain a copy of the License at## http://www.apache.org/licenses/LICENSE-2.0## Unless required by applicable law or agreed to in writing,# software distributed under the License is distributed on an# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY# KIND, either express or implied. See the License for the# specific language governing permissions and limitations# under the License.fromtypingimportAny,Optionaltry:fromfunctoolsimportcached_propertyexceptImportError:fromcached_propertyimportcached_propertyfromairflow.exceptionsimportAirflowExceptionfromairflow.providers.amazon.aws.hooks.emr_containersimportEMRContainerHookfromairflow.sensors.baseimportBaseSensorOperator
[docs]classEMRContainerSensor(BaseSensorOperator):""" Asks for the state of the job run until it reaches a failure state or success state. If the job run fails, the task will fail. :param job_id: job_id to check the state of :type job_id: str :param max_retries: Number of times to poll for query state before returning the current state, defaults to None :type max_retries: int :param aws_conn_id: aws connection to use, defaults to 'aws_default' :type aws_conn_id: str :param poll_interval: Time in seconds to wait between two consecutive call to check query status on athena, defaults to 10 :type poll_interval: int """
[docs]defhook(self)->EMRContainerHook:"""Create and return an EMRContainerHook"""returnEMRContainerHook(self.aws_conn_id,virtual_cluster_id=self.virtual_cluster_id)