Вот более простая версия проблемы, с которой я сталкиваюсь. У меня есть задача в dodo.py
файле. Эта задача имеет доступ к переменной уровня модуля name
.
# dodo.py
name = 'John'
def task_hello():
return {
'actions': [f'echo Hello {name}!']
}
Теперь я хочу иметь разные версии этой задачи. Наивный способ сделать это будет следующим.
# dodo1.py
name = 'Tim'
def task_hello():
return {
'actions': [f'echo Hello {name}!']
}
И
# dodo2.py
name = 'Julia'
def task_hello():
return {
'actions': [f'echo Hello {name}!']
}
Я хочу несколько dodo
модулей. Однако я не хочу копировать определение задачи.
Обратите внимание, что, хотя я упомянул здесь только одну задачу для простоты, у меня есть набор взаимозависимых задач и подзадач. Кроме того, я не хочу использовать параметры командной строки и предпочитаю иметь несколько config
файлов.