5
У меня есть сценарий bash, который создает файл (если он не существует), который я хочу запустить в Airflow, но когда я пытаюсь его выполнить. Как мне это сделать?Как запустить файл сценария bash в Airflow
#!/bin/bash
#create_file.sh
file=filename.txt
if [ ! -e "$file" ] ; then
touch "$file"
fi
if [ ! -w "$file" ] ; then
echo cannot write to $file
exit 1
fi
и вот как я называю его в Airflow:
create_command = """
./scripts/create_file.sh
"""
t1 = BashOperator(
task_id= 'create_file',
bash_command=create_command,
dag=dag
)
lib/python2.7/site-packages/airflow/operators/bash_operator.py", line 83, in execute
raise AirflowException("Bash command failed")
airflow.exceptions.AirflowException: Bash command failed
добавить пробел после .sh: «./scripts/create_file.sh» –
@KarolSudol Вы можете уточнить? –
иногда вы можете получить сообщение об ошибке: 'Это не удается с шаблоном Jinja not found', чтобы преодолеть добавление' space' в конце скрипта, не уверен, что приводит в движение такое поведение: ref: https://cwiki.apache.org/confluence/display/AIRFLOW/Common + Pitfalls –