Я создаю задачу, используя BashOperator. Файл bash содержит некоторые аргументы и далее вызывает python script
Моя задача выглядит следующим образом. Я добавляю полный путь, потому что мой bash скрипт находится в другом месте моей системы
dag = DAG('lex-test', default_args=default_args, schedule_interval=timedelta(days=1))
t1 = BashOperator(
task_id='make-edge-files',
bash_command='bash /Users/shreya/Projects/lex/data-analysis/scripts/default-job.sh ',
dag=dag)
Файл bash default-job.sh
запускает скрипт python. Примечание. Мне нужно указать полный путь к app.py здесь, даже если файл оболочки default-job. sh и app.py существуют в одной папке
echo "hello"
DEFAULT_FEATURES="SelectedFingers.2.0,Flexion.2.0"
DEFAULT_FILE_NAME="default"
DEFAULT_MISS=1
# executing script
python /Users/shreya/Projects/lex/data-analysis/scripts/app.py "$DEFAULT_FEATURES" $DEFAULT_MISS $DEFAULT_FILE_NAME
Внутри app.py я чтение / запись группы файлов csv, для каждого из которых мне нужно снова указать абсолютный путь.
Есть ли способ избежать этой избыточности, указав где-нибудь в качестве config? Я посмотрел на документацию, но не смог найти ничего подходящего.