"""Example Lambda Invocation.""" from datetime import datetime from airflow import DAG from airflow.operators.python import PythonOperator from lib import constants from tasks.payments_upload_approval.archive_upload\ import archive_upload_approval_file_task from tasks.payments_upload_approval.invoke_lambda_av_scan\ import invoke_lambda_av_scan_task from tasks.payments_upload_approval.notify_failure\ import notify_failure_task from tasks.payments_upload_approval.notify_started\ import notify_started_task from tasks.payments_upload_approval.notify_success\ import notify_success_task dag = DAG( constants.DAG_PAYMENTS_UPLOAD_APPROVAL_NAME, description='Validate payments upload approval file', start_date=datetime(2019, 1, 1), default_args={'provide_context': True}, schedule_interval=None ) """ ###################################################################### ############################# OPERATORS ############################## ###################################################################### """ archive_upload_operator = PythonOperator( task_id='archive_upload', python_callable=archive_upload_approval_file_task, dag=dag ) invoke_lambda_av_scan_operator = PythonOperator( task_id='invoke_lambda_av_scan', python_callable=invoke_lambda_av_scan_task, dag=dag ) notify_failure_operator = PythonOperator( dag=dag, python_callable=notify_failure_task, task_id='notify_failure', trigger_rule='one_failed' ) notify_started_operator = PythonOperator( dag=dag, python_callable=notify_started_task, task_id='notify_started' ) notify_success_operator = PythonOperator( dag=dag, python_callable=notify_success_task, task_id='notify_success', trigger_rule='none_failed' ) """ ###################################################################### ################################ DAG ################################# ###################################################################### """ notify_started_operator >>\ archive_upload_operator >>\ invoke_lambda_av_scan_operator >>\ notify_success_operator >> notify_failure_operator