bbatsche.Python

Ansible Python 网站角色

构建状态 许可证 角色名称 版本发布 下载量

此角色将为运行 Python 编写的应用程序创建 Nginx 网站。支持 Python 2 或 3。

要求

此角色利用 Linux 文件系统 ACL 以及一个名为“web-admin”的组来授予对特定目录的访问权限。您可以手动配置这些步骤,或安装 bbatsche.Base 角色。

角色变量

  • domain — 要创建的网站域名。
  • python_version — 与此网站一起使用的 Python 版本。默认是 "3"
  • env_name — 此服务器是“开发”、“生产”还是其他类型的服务器。开发服务器将使用全局 Python 二进制文件和包,其他类型将使用在网站目录中的 virtualenv 设置。默认是 "dev"
  • copy_wsgi — 是否将 stubs passenger_wsgi.py 文件复制到网站,以便于测试。默认是 No
  • 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

测试

此角色包含一套规格,用于单独或整体测试每个任务。要运行这些测试,您需要先安装 VagrantVirtualBox。规格文件使用 Serverspec 编写,因此您需要 Ruby 和 Bundler

要运行完整的规格套件:

$ gem install bundler
$ bundle install
$ rake

规格套件将针对 Ubuntu Trusty Tahr (14.04)、Xenial Xerus (16.04) 和 Bionic Bever (18.04)。

要查看可用的 rake 任务(和规格):

$ rake -T

这些规格不是用于测试幂等性。它们用于检查指定的任务是否执行预期步骤。幂等性通过集成测试独立测试。

关于项目

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

安装
ansible-galaxy install bbatsche.Python
许可证
mit
下载
125
拥有者