lirlia.ruby
Ansible 角色:Ruby
在 Linux 上安装 Ruby 和 bundler gem。
要求
无。
角色变量
可用的变量如下所示,包含默认值(见 defaults/main.yml
):
workspace: /root
临时文件下载的路径,以准备 Ruby 安装。
ruby_install_bundler: true
该角色是否应安装 Bundler。
ruby_install_gems: []
要安装的 Ruby gems 列表(只需输入要安装的 gem 名称)。这只是一个简单的便利,只会安装该 gem 的最新版本。如果需要安装带有更多选项或特定内容的 gems,可以在您的剧本中其他地方做到这一点。
您还可以为每个 gem 使用字典,以设置 version
和 user_install
键,供 gem
Ansible 模块使用。例如:
ruby_install_gems:
- name: bundler
version: '< 2'
user_install: false
您可以混合使用这两种语法,对于每个 gem 可以使用字典或字符串(gem 名称)。
ruby_install_gems_user: username
将安装 Ruby gems 的用户帐户。如果未设置,则默认为 ansible_ssh_user
。
ruby_install_from_source: false
默认情况下,该角色将安装通过系统包管理器(apt
或 yum
)提供的 Ruby 版本。通过将其设置为 true
和/或更新 ruby_download_url
和 ruby_version
,您可以安装任何您喜欢的版本(包括最新版本)。
ruby_download_url: http://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.0.tar.gz
从中下载 Ruby 的 URL(仅在 ruby_install_from_source
为 true
时使用)。
ruby_version: 3.0.0
将要安装的 Ruby 版本(仅在 ruby_install_from_source
为 true
时使用)。
ruby_source_configure_command: ./configure --enable-shared
将要运行的 configure
命令(仅在 ruby_install_from_source
为 true
时使用)。
ruby_rubygems_package_name: rubygems
rubygems
包的名称。一般来说,默认值应该有效;但在 Ubuntu Trusty(14.04)上,它会自动设置为 rubygems-integration
。
依赖关系
无。
示例剧本
- hosts: server
roles:
- role: geerlingguy.ruby
许可证
MIT / BSD
作者信息
此角色由 Jeff Geerling 于 2014 年创建,他是 Ansible for DevOps 的作者。