from datetime import datetime, timedelta from textwrap import dedent import pendulum # The DAG object; we'll need this to instantiate a DAG from airflow import DAG local_tz = pendulum.timezone("Asia/Seoul") # Operators; we need this to operate! from airflow.operators.bash import BashOperator with DAG( 'batch_test', default_args={ 'depends_on_past': False, 'email': 'kim-jy@lotte.net', }, description='Test Batch Job', schedule_interval='*/10 * * * *', start_date=datetime(2022, 5, 13, tzinfo=local_tz), tags=['test'], catchup=False, ) as dag: # post_gasan_tasks = [] # for i in range(4): # post_gasan_task = BashOperator( # task_id='post_gasan'+str(i), # bash_command="curl -X \'POST\' \'http://10.231.238.224:30999/api/v1/camera/writeimage\' -H \'Content-Type: application/json\' -d \'{\"id\": \"test%s\", \"pw\": \"test\", \"ip\": \"10.123.123.1\", \"serialNum\": \"aaaa\", \"camName\": \"abc\"}\'" %(str(i)), # ) # post_gasan_tasks.append(post_gasan_task) # t1, t2 and t3 are examples of tasks created by instantiating operators t1 = BashOperator( task_id='post_gasan', bash_command="curl -X \'POST\' \'http://10.231.238.224:30999/api/v1/camera/writeimage\' -H \'Content-Type: application/json\' -d \'{\"id\": \"test\", \"pw\": \"test\", \"ip\": \"10.123.123.1\", \"serialNum\": \"aaaa\", \"camName\": \"abc\"}\'", ) # t2 = BashOperator( # task_id='sleep', # depends_on_past=False, # bash_command='sleep 5', # retries=3, # ) # t1.doc_md = dedent( # """\ # #### Task Documentation # You can document your task using the attributes `doc_md` (markdown), # `doc` (plain text), `doc_rst`, `doc_json`, `doc_yaml` which gets # rendered in the UI's Task Instance Details page. # ![img](http://montcs.bloomu.edu/~bobmon/Semesters/2012-01/491/import%20soul.png) # """ # ) # dag.doc_md = __doc__ # providing that you have a docstring at the beginning of the DAG # dag.doc_md = """ # This is a documentation placed anywhere # """ # otherwise, type it like this # templated_command = dedent( # """ # {% for i in range(5) %} # echo "{{ ds }}" # echo "{{ macros.ds_add(ds, 7)}}" # {% endfor %} # """ # ) # t3 = BashOperator( # task_id='templated', # depends_on_past=False, # bash_command=templated_command, # ) # post_gasan_tasks t1