2016-11-29 10 views
1

У меня есть проект Django, размещенный на удаленном сервере. Он содержит файл с именем tmp_file.py. Внутри этого файла есть функция, называемая fetch_data(). Обычно я выполняю приведенный ниже подход для запуска этой функции.Запуск функции Python из Ansible script

# Inside Django Project 

$ python manage.py shell 

[Shell] from tmp_file import feth_data 

[Shell] fetch_data() 

Также файл не содержит __name__ раздел. Таким образом, он не может работать как отдельный сценарий. Каков наилучший способ выполнить эту задачу с помощью Ansible. Я не мог найти ничего полезного из документов Ansible.

ответ

2

--command переключатель для shell django-admin command.

Таким образом, вы можете попробовать в анзибль:

- name: Fetch data 
    command: "django-admin shell --command='from tmp_file import feth_data; fetch_data()'" 
    args: 
    chdir: /path/to/tmp_file 
Смежные вопросы