bbatsche.Ruby

Ansible Ruby网站角色

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

该角色将安装Rbenv,并使用它安装指定版本的Ruby。同时,它还会创建一个通过Phusion Passenger运行Ruby的Nginx网站。

需求

安装Rbenv需要在服务器上安装Git。当然,你已经完成了这个步骤,对吧?

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

角色变量

  • domain — 要创建的网站域名。
  • ruby_version — 要安装的Ruby版本。默认是 "2.3.1"
  • rbenv_version — 要安装的Rbenv版本。默认是 "v1.0.0"
  • ruby_build_version — 要安装的ruby-build插件的版本。默认是 "v20160426"
  • default_gems_version — 要安装的default-gems插件版本。默认是一个Git SHA: "4f68eae"
  • rbenv_vars_version — 要安装的rbenv-vars插件版本。默认是 "v1.2.0"
  • binstubs_version — 要安装的binstubs插件版本。默认是 "v1.4"
  • copy_configru — 是否将stub config.ru文件复制到网站,方便测试。默认是否。
  • http_root — 所有网站目录将被创建的目录。默认是 "/srv/http"。
  • rbenv_root — 安装Rbenv及其支持文件的目录。默认是 "/usr/local/rbenv"

依赖

该角色依赖于bbatsche.Nginx。你必须先安装该角色,方法是:

ansible-galaxy install bbatsche.Nginx

示例剧本

- hosts: servers
  roles:
     - { role: bbatsche.Ruby, domain: my-node-site.dev }

许可证

MIT

测试

该角色包含了一组用于单独或整体测试每个任务的规范。要运行这些测试,你首先需要安装VagrantVirtualBox。规范文件是使用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

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

关于项目

Install Rbenv, Ruby, and create an Nginx site running it through Phusion Passenger

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