Role for installing rbenv.
none
Default variables are:
rbenv:
env: system
version: v1.0.0
default_ruby: 2.3.3
rubies:
- version: 2.3.3
rbenv_repo: "https://github.com/rbenv/rbenv.git"
rbenv_plugins:
- { name: "rbenv-vars",
repo: "https://github.com/rbenv/rbenv-vars.git",
version: "v1.2.0" }
- { name: "ruby-build",
repo: "https://github.com/rbenv/ruby-build.git",
version: "master" }
- { name: "rbenv-default-gems",
repo: "https://github.com/rbenv/rbenv-default-gems.git",
version: "v1.0.0" }
- { name: "rbenv-installer",
repo: "https://github.com/rbenv/rbenv-installer.git",
version: "bc21e7055dcc8f5f9bc66ce0c78cc9ae0c28cd7a" }
- { name: "rbenv-update",
repo: "https://github.com/rkh/rbenv-update.git",
version: "1961fa180280bb50b64cbbffe6a5df7cf70f5e50" }
- { name: "rbenv-whatis",
repo: "https://github.com/rkh/rbenv-whatis.git",
version: "v1.0.0" }
- { name: "rbenv-use",
repo: "https://github.com/rkh/rbenv-use.git",
version: "v1.0.0" }
rbenv_root: "{% if rbenv.env == 'system' %}/usr/local/rbenv{% else %}$HOME/.rbenv{% endif %}"
rbenv_users: []
Variables to control a system installation (these are not set by default):
rbenv_owner: 'deploy'
rbenv_group: 'deploy'
Description:
rbenv.env
- Type of rbenv installation. Allows 'system' or 'user' valuesrbenv.version
- Version of rbenv to install (tag from rbenv releases page)rbenv.default_ruby
- Which ruby version to be set as global rbenv ruby.rbenv.rubies
- Versions of ruby to install. This is an array of hashes. E.g.[ { version: 2.3.3, env: { RUBY_CONFIGURE_OPTS="--enable-shared" } } ]
rbenv_repo
- Repository with source code of rbenv to installrbenv_plugins
- Array of Hashes with information about plugins to installrbenv_root
- Install pathrbenv_users
- Array of usernames for multiuser install. User must be present in the systemdefault_gems_file
- This is Rbenv's plugin rbenv-default-gems. Sets the path to a default-gems file of your choice (don't set it if you want to use the default filefiles/default-gems
)rbenv_owner
- The user owningrbenv_root
whenrbenv.env
issystem
rbenv_group
- The group owningrbenv_root
whenrbenv.env
issystem
rbenv_tmpdir
- A temporary directory path used for artifacts when installing rubies. Defaults to system's$TMPDIR
Example:
- hosts: web
gather_facts: true # https://github.com/zzet/ansible-rbenv-role/issues/37
vars:
rbenv:
env: user
version: v0.4.0
default_ruby: 2.0.0-p353
rubies:
- version: 2.0.0-p353
- version: 2.2.4
env:
RUBY_CONFIGURE_OPTS: "--enable-shared"
roles:
- role: zzet.rbenv
rbenv_users:
- user
none
MIT