Je suis vraiment un débutant dans ce forum. Mais j'ai été jouer avec le flux d'air, pendant un certain temps, pour notre société. Désolé si cette question a l'air vraiment stupide.
Je suis en train d'écrire un pipeline à l'aide tas de BashOperators. En gros, pour chaque Tâche, je veux simplement appeler une api REST à l'aide de "curl"
C'est ce que mon pipeline ressemble(version très simplifiée):
from airflow import DAG
from airflow.operators import BashOperator, PythonOperator
from dateutil import tz
import datetime
datetime_obj = datetime.datetime
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': datetime.datetime.combine(datetime_obj.today() - datetime.timedelta(1), datetime_obj.min.time()),
'email': ['xxxx@xxx.xxx'],
'email_on_failure': True,
'email_on_retry': False,
'retries': 2,
'retry_delay': datetime.timedelta(minutes=5),
}
current_datetime = datetime_obj.now(tz=tz.tzlocal())
dag = DAG(
'test_run', default_args=default_args, schedule_interval=datetime.timedelta(minutes=60))
curl_cmd='curl -XPOST "'+hostname+':8000/run?st='+current_datetime +'"'
t1 = BashOperator(
task_id='rest-api-1',
bash_command=curl_cmd,
dag=dag)
Si vous remarquez que je suis en train de faire current_datetime= datetime_obj.now(tz=tz.tzlocal())
Au lieu de ce que je veux, ici, 'execution_date'
Comment puis-je utiliser 'execution_date' directement et l'assigner à une variable dans mon fichier python?
Je dois avoir cette question plus générale de l'accès args. Toute aide sera vraiment appréciée.
Merci