Моя цель - запустить собственный файл python, добавить журнал в файл журнала, вернуть OK, если команда выполнена успешно, и вернуть NOK плюс выход 1, если команда не удалась. Код для того же:
RunDataException = BashOperator(
task_id='run_data_exception',
bash_command= '`python ~/BoulderDash/DataProcessingPipeline/data_exception_pipeline.py 2>&1 | tee -a $(pwd)/BoulderDash_output.log && echo "OK" || { echo "NOK" && exit 1; }`',
dag=main_dag,
email_on_failure = True,
email = 'abc@xyz.com',
on_failure_callback = throw_error
)
Я получаю сообщение ОК, даже когда из журнала в Airflow я узнаю, что команда действительно не выполнена. Интересно, если я использую
enter`python ~/BoulderDash/DataProcessingPipeline/data_exception_pipeline.py 2>&1 $(pwd)/BoulderDash_output.log && echo "OK" || { echo "NOK" && exit 1; }`'
Здесь я удалил | ти-а. Затем он печатает ожидаемый NOK, но тогда моя цель записи в журнал потерпела поражение. Пожалуйста, помогите мне с этим.