bbatsche.Python

Rol de Sitio de Python Ansible

Estado de Construcción Licencia Nombre del Rol Versión de Lanzamiento Descargas

Este rol creará un sitio en Nginx para ejecutar aplicaciones escritas en Python. Es compatible con Python 2 o 3.

Requisitos

Este rol aprovecha las ACL de sistema de archivos de Linux y un grupo llamado "web-admin" para otorgar acceso a directorios específicos. Puedes configurar estos pasos manualmente o instalar el rol bbatsche.Base.

Variables del Rol

  • domain — Dominio del sitio a crear.
  • python_version — Versión de Python que se utilizará con este sitio. El valor predeterminado es "3".
  • env_name — Representa si este servidor es "desarrollo", "producción" u otro tipo de servidor. Los servidores de desarrollo usarán los binarios y paquetes de Python globales, otros tipos usarán una configuración de virtualenv en el directorio del sitio. El valor predeterminado es "dev".
  • copy_wsgi — Indica si se debe copiar un archivo stub passenger_wsgi.py al sitio, útil para pruebas. El valor predeterminado es no.
  • http_root — Directorio bajo el cual se crearán todos los directorios del sitio. El valor predeterminado es "/srv/http".
  • nginx_configs — Archivos de configuración adicionales para agregar al final del bloque server del dominio. Estos archivos deben ser copiados a /etc/nginx/conf.d. El valor predeterminado es la configuración de Python del dominio: [ python-{{ domain }}.conf ].

Dependencias

Este rol depende de bbatsche.Nginx. Debes instalar ese rol primero usando:

ansible-galaxy install bbatsche.Nginx

Ejemplo de Playbook

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

Licencia

MIT

Pruebas

Se incluye con este rol un conjunto de especificaciones para probar cada tarea individualmente o como un todo. Para ejecutar estas pruebas, primero necesitarás tener Vagrant y VirtualBox instalados. Los archivos de especificaciones están escritos usando Serverspec, por lo que necesitarás Ruby y Bundler.

Para ejecutar todo el conjunto de especificaciones:

$ gem install bundler
$ bundle install
$ rake

El conjunto de especificaciones estará dirigido a Ubuntu Trusty Tahr (14.04), Xenial Xerus (16.04) y Bionic Beaver (18.04).

Para ver las tareas de rake disponibles (y especificaciones):

$ rake -T

Estas especificaciones no están destinadas a probar la idempotencia. Están diseñadas para verificar que las tareas especificadas realicen sus pasos esperados. La idempotencia se prueba independientemente a través de pruebas de integración.

Acerca del proyecto

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

Instalar
ansible-galaxy install bbatsche.Python
Licencia
mit
Descargas
125
Propietario