django_manage — Управляет приложением Django.
Обзор
- Управляет приложением Django с помощью командной строки manage.py, являющейся интерфейсом к django-admin. С параметром virtualenv все управляющие команды будут выполняться с использованием указанной установки virtualenv.
Требования
Ниже перечислены требования, необходимые на хосте, где выполняется этот модуль.
- virtualenv
- django
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| app_path обязательно | Путь к корню приложения Django, где находится manage.py. | |
| apps | Список приложений, разделенных пробелами, которые нужно обработать. Используется командой 'test'. | |
| cache_table | Имя таблицы, используемой для кэширования на базе данных. Используется командой 'createcachetable'. | |
| command обязательно |
| Имя управляющей команды Django для выполнения. Встроенные команды: cleanup, collectstatic, flush, loaddata, migrate, runfcgi, syncdb, test и validate. Можно ввести другие команды, но они не будут работать, если неизвестны Django. Другие команды, которые могут запросить ввод данных пользователя, должны выполняться с флагом --noinput. |
| database | База данных для обработки. Используется командами 'createcachetable', 'flush', 'loaddata' и 'syncdb'. | |
| failfast bool |
| Немедленно завершить команду, если тест завершится неудачно. Используется командой 'test'. |
| fixtures | Список фикстур, разделенных пробелами, для загрузки в базу данных. Обязательно используется командой 'loaddata'. | |
| link (добавлен в 1.3) | Создаст ссылки на файлы вместо копирования. Можно использовать только с командой 'collectstatic'. | |
| merge (добавлен в 1.3) | Выполнит миграции в неправильном порядке или отсутствующие миграции, так как они не являются обратимыми миграциями. Можно использовать только с командой 'migrate'. | |
| pythonpath | Директория для добавления в путь Python. Обычно используется для включения модуля настроек, если он расположен вне каталога приложения. | |
| settings | Путь Python к модулю настроек приложения, например, 'myapp.settings'. | |
| skip (добавлен в 1.3) | Пропустит миграции в неправильном порядке или отсутствующие миграции. Можно использовать только с командой migrate.
| |
| virtualenv | Необязательный путь к установке virtualenv, которую следует использовать при запуске приложения manage. псевдонимы: virtualenv |
Примечания
Примечание
- virtualenv (http://www.virtualenv.org) должен быть установлен на удалённом хосте, если указан параметр virtualenv.
- Этот модуль создаст virtualenv, если параметр virtualenv указан и virtualenv ещё не существует по указанному пути.
- Этот модуль предполагает использование английских сообщений об ошибках для команды ‘createcachetable’ для определения наличия таблицы, к сожалению.
- Для использования команды migrate с версиями django < 1.7 необходимо установить south и добавить его как приложение в ваши настройки.
- Для использования команды collectstatic необходимо включить staticfiles в ваших настройках.
- Начиная с Ansible 2.x, ваше приложение manage.py должно быть исполняемым (rwxr-xr-x) и иметь действительный shebang, т.е. «#!/usr/bin/env python», для вызова соответствующего интерпретатора Python.
Примеры
# Run cleanup on the application installed in 'django_dir'.
- django_manage:
command: cleanup
app_path: "{{ django_dir }}"
# Load the initial_data fixture into the application
- django_manage:
command: loaddata
app_path: "{{ django_dir }}"
fixtures: "{{ initial_data }}"
# Run syncdb on the application
- django_manage:
command: syncdb
app_path: "{{ django_dir }}"
settings: "{{ settings_app_name }}"
pythonpath: "{{ settings_dir }}"
virtualenv: "{{ virtualenv_dir }}"
# Run the SmokeTest test case from the main app. Useful for testing deploys.
- django_manage:
command: test
app_path: "{{ django_dir }}"
apps: main.SmokeTest
# Create an initial superuser.
- django_manage:
command: "createsuperuser --noinput --username=admin --email=admin@example.com"
app_path: "{{ django_dir }}"
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется как обратная совместимость.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. Более подробную информацию см. в разделе Техническое обслуживание и поддержка модулей.
Список других модулей, которые также поддерживаются сообществом Ansible, см. в разделе здесь.
Автор
- Scott Anderson (@tastychutney)
Подсказка
Если вы заметите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/django_manage_module.html