气流运行DAG仅用于测试

时间:2019-06-17 17:50:16

标签: airflow

我有一个气流作业,该作业连接到Postgres db并更新一些值。 下面是代码,它可以正常工作。

但是,在测试我的全部障碍时,我会大量更新生产中的记录。 (因为我不得不花费很多时间才能获得最终版本代码)

现在我要写一个类似的dag,但是不想在测试时更新生产中的表。

是否有直接方法运行dag仅用于测试。 就像放置诸如dry_run = true之类的参数一样。

验证码:

import airflow
from airflow.operators.bash_operator import BashOperator
from airflow import DAG
from airflow.hooks.postgres_hook import PostgresHook
from airflow.operators.bash_operator import BashOperator
from airflow.operators.python_operator import PythonOperator
from airflow.operators.postgres_operator import PostgresOperator
import os
from datetime import datetime, timedelta
import numpy as np


default_args = {
            "owner": "airflow",
            "depends_on_past": False,
            "start_date": airflow.utils.dates.days_ago(1),
            "email": ["airflow@airflow.com"],
            "email_on_failure": False,
            "email_on_retry": False,
            "retries": 1,
            "retry_delay": timedelta(minutes=1),
            }

dag = DAG("Score_update", default_args=default_args, schedule_interval='3,33 * * * *',template_searchpath = ['/root/airflow/sql/'],max_active_runs=1)


updateOp = PostgresOperator(
                    task_id='Refresh_DailyScore',
                    postgres_conn_id='postgress_sophi',
                    sql='Score.sql',
                    params={'name':'alpa'},
                    dag=dag)

updateOp

0 个答案:

没有答案