add workflow 泰克CRM,dev

This commit is contained in:
root 2024-04-11 18:09:30 +08:00
parent ce205d50ff
commit 1a1ed595c6
1 changed files with 196 additions and 0 deletions

View File

@ -0,0 +1,196 @@
#!/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.email_operator import EmailOperator
from airflow.utils.trigger_rule import TriggerRule
sshHook = SSHHook(ssh_conn_id ='ssh_air')
default_args = {
'owner': 'info@idgvalue.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_tk_crm', default_args=default_args,
schedule_interval="0 0 * * *",
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=["info@idgvalue.com"],
cc=[""],
subject="tk_crm_failed",
html_content='<h3>您好tk_crm作业失败请及时处理" </h3>')
file_CRM_account = SSHOperator(
ssh_hook=sshHook,
task_id='file_CRM_account',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"CRM_account"},
depends_on_past=False,
retries=3,
dag=dag)
file_CRM_contact_ccp = SSHOperator(
ssh_hook=sshHook,
task_id='file_CRM_contact_ccp',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"CRM_contact_ccp"},
depends_on_past=False,
retries=3,
dag=dag)
file_CRM_contact_part1 = SSHOperator(
ssh_hook=sshHook,
task_id='file_CRM_contact_part1',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"CRM_contact_part1"},
depends_on_past=False,
retries=3,
dag=dag)
file_CCP_mapping_table = SSHOperator(
ssh_hook=sshHook,
task_id='file_CCP_mapping_table',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"CCP_mapping_table"},
depends_on_past=False,
retries=3,
dag=dag)
crm_account_4545 = SSHOperator(
ssh_hook=sshHook,
task_id='crm_account_4545',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_crm_account"},
depends_on_past=False,
retries=3,
dag=dag)
crm_contact_ccp_5681 = SSHOperator(
ssh_hook=sshHook,
task_id='crm_contact_ccp_5681',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_crm_contact_ccp"},
depends_on_past=False,
retries=3,
dag=dag)
ccp_mapping_table_8972 = SSHOperator(
ssh_hook=sshHook,
task_id='ccp_mapping_table_8972',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_ccp_mapping_table"},
depends_on_past=False,
retries=3,
dag=dag)
crm_contact_part_605 = SSHOperator(
ssh_hook=sshHook,
task_id='crm_contact_part_605',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_crm_contact_part"},
depends_on_past=False,
retries=3,
dag=dag)
file_country_cde = SSHOperator(
ssh_hook=sshHook,
task_id='file_country_cde',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"country_cde"},
depends_on_past=False,
retries=3,
dag=dag)
country_cde_3310 = SSHOperator(
ssh_hook=sshHook,
task_id='country_cde_3310',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_country_cde"},
depends_on_past=False,
retries=3,
dag=dag)
file_china_city = SSHOperator(
ssh_hook=sshHook,
task_id='file_china_city',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"china_city"},
depends_on_past=False,
retries=3,
dag=dag)
t01_crm_contact = SSHOperator(
ssh_hook=sshHook,
task_id='t01_crm_contact',
command='/data/airflow/etl/PDM/run_sa.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"t01_crm_contact_agi"},
depends_on_past=False,
retries=3,
dag=dag)
T01_CRM_CCP_TYPE = SSHOperator(
ssh_hook=sshHook,
task_id='T01_CRM_CCP_TYPE',
command='/data/airflow/etl/PDM/run_sa.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"T01_CRM_CCP_TYPE_agi"},
depends_on_past=False,
retries=3,
dag=dag)
t01_crm_cust_ccp = SSHOperator(
ssh_hook=sshHook,
task_id='t01_crm_cust_ccp',
command='/data/airflow/etl/PDM/run_sa.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"t01_crm_cust_ccp_agi"},
depends_on_past=False,
retries=3,
dag=dag)
t01_crm_account = SSHOperator(
ssh_hook=sshHook,
task_id='t01_crm_account',
command='/data/airflow/etl/PDM/run_sa.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"t01_crm_account_agi"},
depends_on_past=False,
retries=3,
dag=dag)
file_crm_opp = SSHOperator(
ssh_hook=sshHook,
task_id='file_crm_opp',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"crm_opp"},
depends_on_past=False,
retries=3,
dag=dag)
file_CRM_account >> crm_account_4545
file_CRM_contact_ccp >> crm_contact_ccp_5681
file_CCP_mapping_table >> ccp_mapping_table_8972
file_CRM_contact_part1 >> crm_contact_part_605
file_country_cde >> country_cde_3310
crm_contact_ccp_5681 >> t01_crm_cust_ccp
ccp_mapping_table_8972 >> T01_CRM_CCP_TYPE
crm_contact_part_605 >> t01_crm_contact
crm_account_4545 >> t01_crm_account
t01_crm_account >> task_failed