add workflow 天润Dynamic邮件周一同步,dev
This commit is contained in:
parent
5130222989
commit
d096304976
|
@ -0,0 +1,64 @@
|
|||
#!/usr/bin/python
|
||||
# -*- encoding=utf-8 -*-
|
||||
from airflow import DAG
|
||||
from datetime import datetime, timedelta
|
||||
from airflow.contrib.hooks.ssh_hook import SSHHook
|
||||
from airflow.contrib.operators.ssh_operator import SSHOperator
|
||||
from airflow.sensors.external_task_sensor import ExternalTaskSensor
|
||||
import json
|
||||
|
||||
from airflow.operators.trigger_dagrun import TriggerDagRunOperator
|
||||
from airflow.operators.email_operator import EmailOperator
|
||||
from airflow.utils.trigger_rule import TriggerRule
|
||||
|
||||
|
||||
sshHook = SSHHook(ssh_conn_id ='ssh_air')
|
||||
default_args = {
|
||||
'owner': 'tek_newsletter@163.com',
|
||||
'email_on_failure': True,
|
||||
'email_on_retry':True,
|
||||
'start_date': datetime(2024, 1, 1),
|
||||
'depends_on_past': False,
|
||||
'retries': 6,
|
||||
'retry_delay': timedelta(minutes=10),
|
||||
}
|
||||
|
||||
dag = DAG('wf_dag_dag_email_data_export_monday', default_args=default_args,
|
||||
schedule_interval="30 9 * * 1",
|
||||
catchup=False,
|
||||
dagrun_timeout=timedelta(minutes=160),
|
||||
max_active_runs=3)
|
||||
|
||||
task_failed = EmailOperator (
|
||||
dag=dag,
|
||||
trigger_rule=TriggerRule.ONE_FAILED,
|
||||
task_id="task_failed",
|
||||
to=["tek_newsletter@163.com"],
|
||||
cc=[""],
|
||||
subject="dag_email_data_export_monday_failed",
|
||||
html_content='<h3>您好,dag_email_data_export_monday作业失败,请及时处理" </h3>')
|
||||
|
||||
|
||||
uds_dynamic_data_export = SSHOperator(
|
||||
ssh_hook=sshHook,
|
||||
task_id='uds_dynamic_data_export',
|
||||
command='python /data/airflow/etl/EXP/dynamic_data_export.py 001 >>/data/airflow/logs/run_data_export.log',
|
||||
params={'my_param':"uds_dynamic_data_export"},
|
||||
depends_on_past=False,
|
||||
retries=3,
|
||||
dag=dag)
|
||||
|
||||
|
||||
dysql_update_dynamic_email_data = SSHOperator(
|
||||
ssh_hook=sshHook,
|
||||
task_id='dysql_update_dynamic_email_data',
|
||||
command='/data/airflow/etl/COM/run_psql.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
|
||||
params={'my_param':"dysql_update_dynamic_email_data"},
|
||||
depends_on_past=False,
|
||||
retries=3,
|
||||
dag=dag)
|
||||
|
||||
|
||||
|
||||
uds_dynamic_data_export >> dysql_update_dynamic_email_data
|
||||
dysql_update_dynamic_email_data >> task_failed
|
Loading…
Reference in New Issue