buluma.ruby_gems

Ansible role ruby_gems

This role installs Ruby Gems on Linux.

GitHub Version Issues Pull Requests Downloads
github Version Issues PullRequests Ansible Role

Example Playbook

This playbook example comes from molecule/default/converge.yml and is tested with every update or pull request.

---
- name: Converge
  hosts: all
  become: true

  vars:
    ruby_install_gems_user: root
    ruby_install_gems:
      - json
    ruby_gems_bin_path: /root/.gem/ruby/bin

  pre_tasks:
    - name: Update apt cache.
      apt: update_cache=true cache_valid_time=600
      when: ansible_os_family == 'Debian'

    - name: Add RubyGems bin directory to system $PATH.
      ansible.builtin.copy:
        dest: /etc/profile.d/ruby.sh
        content: 'PATH=$PATH:{{ ruby_gems_bin_path }}'
        mode: 0644

    - name: Don't install Bundler on CentOS 7 due to old Ruby version.
      ansible.builtin.set_fact:
        ruby_install_bundler: false
      when:
        - ansible_os_family == 'RedHat'
        - ansible_distribution_major_version == '7'

  roles:
    - role: buluma.bootstrap
    - role: buluma.ruby_gems

  post_tasks:
    - name: Verify Ruby is installed.
      command: ruby --version
      changed_when: false

Also see a full explanation and example on how to use these roles.

Role Variables

The default variable values are set in defaults/main.yml:

---
workspace: /root

# If this role should install Bundler.
ruby_install_bundler: true

# A list of Ruby gems to install.
ruby_install_gems: []

# The user account for Ruby gems installation.
ruby_install_gems_user: "{{ ansible_user }}"

# If set to True, Ruby will be installed from source using specified version.
ruby_install_from_source: true
# TODO: Testing True
ruby_download_url: http://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.0.tar.gz
ruby_version: "3.0.0"
ruby_source_configure_command: ./configure --enable-shared

# Default package name for RubyGems.
ruby_rubygems_package_name: rubygems

Requirements

State of used roles

The following roles help prepare the system. You can choose another method if you prefer.

Requirement GitHub Version
buluma.bootstrap Ansible Molecule Version

Context

This role works alongside many other roles. Check the documentation of these roles for more details.

Here’s a summary of related roles:

dependencies

Compatibility

This role has been tested on these container images:

Container Tags
EL all
Ubuntu bionic, focal, jammy
Debian all

You need at least Ansible version 2.4. Tests have been conducted on:

  • The previous version.
  • The current version.
  • The development version.

If you find any issues, please report them on GitHub.

Changelog

Role History.

License

Apache-2.0.

Author Information

Shadow Walker.

Informazioni sul progetto

Ruby installation for Linux.

Installa
ansible-galaxy install buluma.ruby_gems
Licenza
apache-2.0
Download
4k
Proprietario
DevOps Engineer