salt.modules.rbenv

Manage ruby installations with rbenv. rbenv is supported on Linux and Mac OS X. rbenv doesn't work on Windows (and isn't really necessary on Windows as there is no system Ruby on Windows). On Windows, the RubyInstaller and/or Pik are both good alternatives to work with multiple versions of Ruby on the same box.

http://misheska.com/blog/2013/06/15/using-rbenv-to-manage-multiple-versions-of-ruby/

0.16.0 新版功能.

salt.modules.rbenv.default(ruby=None, runas=None)

Returns or sets the currently defined default ruby

ruby
The version to set as the default. Should match one of the versions listed by rbenv.versions. Leave blank to return the current default.

CLI 范例:

salt '*' rbenv.default
salt '*' rbenv.default 2.0.0-p0
salt.modules.rbenv.do(cmdline, runas=None, env=None)

Execute a ruby command with rbenv's shims from the user or the system

CLI 范例:

salt '*' rbenv.do 'gem list bundler'
salt '*' rbenv.do 'gem list bundler' deploy
salt.modules.rbenv.do_with_ruby(ruby, cmdline, runas=None)

Execute a ruby command with rbenv's shims using a specific ruby version

CLI 范例:

salt '*' rbenv.do_with_ruby 2.0.0-p0 'gem list bundler'
salt '*' rbenv.do_with_ruby 2.0.0-p0 'gem list bundler' runas=deploy
salt.modules.rbenv.install(runas=None, path=None)

Install rbenv systemwide

CLI 范例:

salt '*' rbenv.install
salt.modules.rbenv.install_ruby(ruby, runas=None)

Install a ruby implementation.

ruby
The version of Ruby to install, should match one of the versions listed by rbenv.list
runas
The user under which to run rbenv. If not specified, then rbenv will be run as the user under which Salt is running.

Additional environment variables can be configured in pillar / grains / master:

rbenv:
  build_env: 'CONFIGURE_OPTS="--no-tcmalloc" CFLAGS="-fno-tree-dce"'

CLI 范例:

salt '*' rbenv.install_ruby 2.0.0-p0
salt.modules.rbenv.is_installed(runas=None)

Check if rbenv is installed

CLI 范例:

salt '*' rbenv.is_installed
salt.modules.rbenv.list(runas=None)

List the installable versions of ruby

runas
The user under which to run rbenv. If not specified, then rbenv will be run as the user under which Salt is running.

CLI 范例:

salt '*' rbenv.list
salt.modules.rbenv.rehash(runas=None)

Run rbenv rehash to update the installed shims

runas
The user under which to run rbenv. If not specified, then rbenv will be run as the user under which Salt is running.

CLI 范例:

salt '*' rbenv.rehash
salt.modules.rbenv.uninstall_ruby(ruby, runas=None)

Uninstall a ruby implementation.

ruby
The version of ruby to uninstall. Should match one of the versions listed by rbenv.versions.
runas
The user under which to run rbenv. If not specified, then rbenv will be run as the user under which Salt is running.

CLI 范例:

salt '*' rbenv.uninstall_ruby 2.0.0-p0
salt.modules.rbenv.update(runas=None, path=None)

Updates the current versions of rbenv and ruby-build

runas
The user under which to run rbenv. If not specified, then rbenv will be run as the user under which Salt is running.

CLI 范例:

salt '*' rbenv.update
salt.modules.rbenv.versions(runas=None)

List the installed versions of ruby

CLI 范例:

salt '*' rbenv.versions