Coverage for airflow.operators.subdag_operator : 52%
Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
|
self, subdag, executor=DEFAULT_EXECUTOR, *args, **kwargs): """ Yo dawg. This runs a sub dag. By convention, a sub dag's dag_id should be prefixed by its parent and a dot. As in `parent.child`.
:param subdag: the DAG object to run as a subdag of the current DAG. :type subdag: airflow.DAG :param dag: the parent DAG :type subdag: airflow.DAG """ if 'dag' not in kwargs: raise AirflowException("Please pass in the `dag` param") dag = kwargs['dag'] super(SubDagOperator, self).__init__(*args, **kwargs) if dag.dag_id + '.' + kwargs['task_id'] != subdag.dag_id: raise AirflowException( "The subdag's dag_id should have the form " "'{{parent_dag_id}}.{{this_task_id}}'. Expected " "'{d}.{t}'; received '{rcvd}'.".format( d=dag.dag_id, t=kwargs['task_id'], rcvd=subdag.dag_id)) self.subdag = subdag self.executor = executor
ed = context['execution_date'] self.subdag.run( start_date=ed, end_date=ed, donot_pickle=True, executor=self.executor) |