gem - Manage Ruby gems

Synopsis

Parameters

Parameter Choices/Defaults Comments
build_flags
(added in 2.0)
Allow adding build flags for gem compilation
env_shebang
(added in 2.2)
Default:
no
Rewrite the shebang line on installed scripts to use /usr/bin/env.
executable
(added in 1.4)
Override the path to the gem executable
gem_source
The path to a local gem used as installation source.
include_dependencies
bool
    Choices:
  • no
  • yes ←
Whether to include dependencies or not.
include_doc
(added in 2.0)
Default:
no
Install with or without docs.
install_dir
(added in 2.6)
Install the gems into a specific directory. These gems will be independant from the global installed ones. Specifying this requires user_install to be false.
name
required
The name of the gem to be managed.
pre_release
(added in 1.6)
Default:
no
Allow installation of pre-release versions of the gem.
repository
The repository from which the gem will be installed

aliases: source
state
    Choices:
  • present ←
  • absent
  • latest
The desired state of the gem. latest ensures that the latest version is installed.
user_install
bool

(added in 1.3)
    Choices:
  • no
  • yes ←
Install gem in user's local gems cache or for all users
version
Version of the gem to be installed/removed.

Examples

# Installs version 1.0 of vagrant.
- gem:
    name: vagrant
    version: 1.0
    state: present

# Installs latest available version of rake.
- gem:
    name: rake
    state: latest

# Installs rake version 1.0 from a local gem on disk.
- gem:
    name: rake
    gem_source: /path/to/gems/rake-1.0.gem
    state: present

Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

Maintenance

This module is flagged as community which means that it is maintained by the Ansible Community. See Module Maintenance & Support for more info.

For a list of other modules that are also maintained by the Ansible Community, see here.

Author

  • Ansible Core Team
  • Johan Wiren

Hint

If you notice any issues in this documentation you can edit this document to improve it.