Python

Роль Ansible Python Site

Статус сборки Лицензия Имя роли Версия релиза Загрузки

Эта роль создаст сайт в Nginx для запуска приложений, написанных на Python. Она поддерживает Python версии 2 или 3.

Требования

Эта роль использует ACL файловой системы Linux и группу под названием "web-admin" для предоставления доступа к определенным директориям. Вы можете настроить эти шаги вручную или установить роль bbatsche.Base.

Переменные роли

  • domain — Домен сайта, который необходимо создать.
  • python_version — Версия Python, которую следует использовать на сайте. По умолчанию "3".
  • env_name — Тип сервера: "development", "production" или другой. Серверы разработки будут использовать глобальные бинарные файлы и пакеты Python, другие типы будут использовать настройку virtualenv в каталоге сайта. По умолчанию "dev".
  • copy_wsgi — Нужно ли скопировать шаблонный файл passenger_wsgi.py на сайт для тестирования. По умолчанию нет.
  • http_root — Каталог, в котором будут созданы все директории сайта. По умолчанию "/srv/http".
  • nginx_configs — Дополнительные конфигурационные файлы, которые нужно добавить в конец блока server домена. Эти файлы должны быть скопированы в /etc/nginx/conf.d. По умолчанию используется конфигурация Python для домена: [ python-{{ domain }}.conf ].

Зависимости

Эта роль зависит от bbatsche.Nginx. Сначала нужно установить эту роль с помощью:

ansible-galaxy install bbatsche.Nginx

Пример плейбука

- hosts: servers
  roles:
     - { role: bbatsche.Python, domain: my-python-site.dev }

Лицензия

MIT

Тестирование

В комплект этой роли входит набор спецификаций для тестирования каждой задачи индивидуально или целиком. Чтобы запустить эти тесты, вам сначала нужно установить Vagrant и VirtualBox. Спецификации написаны с использованием Serverspec, поэтому вам понадобятся Ruby и Bundler.

Чтобы запустить полный набор спецификаций:

$ gem install bundler
$ bundle install
$ rake

Набор спецификаций будет протестирован на Ubuntu Trusty Tahr (14.04), Xenial Xerus (16.04) и Bionic Beaver (18.04).

Чтобы увидеть доступные задачи rake (и спецификации):

$ rake -T

Эти спецификации не предназначены для проверки идемпотентности. Они предназначены для того, чтобы проверить, что указанные задачи выполняют ожидаемые шаги. Идемпотентность проверяется отдельно путем интеграционного тестирования.

О проекте

Create an Nginx site running either Python 2.7 or 3.4 through Phusion Passenger

Установить
ansible-galaxy install bbatsche/Ansible-Python-Site-Role
Лицензия
mit
Загрузки
112
Владелец