Ansible: install multiple rubies automatly by rbenv
---
- name: Install dependencies for rbenv
yum: name=git
tags: rbenv
- name: Install rbenv
sudo: yes
git: repo=git://github.com/sstephenson/rbenv.git dest=/home/{{ user }}/.rbenv version={{ rbenv.version }} accept_hostkey=yes
tags: rbenv
- name: Add ~.rbenv/bin to PATH
lineinfile: >
dest="/home/{{ user }}/.bash_profile"
line="export PATH=$HOME/.rbenv/bin:$PATH"
tags: rbenv
- name: Eval rbenv init in home/{{ user }}/.bash_profile
sudo: yes
lineinfile: >
dest="/home/{{ user }}/.bash_profile"
line='eval "$(rbenv init -)"'
tags: rbenv
- name: Copy .gemrc to home/{{ user }}/.gemrc
sudo: yes
copy: src={{ item }} dest=/home/{{ user }}/.gemrc
with_first_found:
- ../../../files/.gemrc
- .gemrc
tags: rbenv
- name: Install dependencies for ruby-build
yum: name={{ item }}
with_items:
- bison
- gcc
- make
- automake
- autoconf
- curl-devel
- libffi-devel
- readline-devel
- openssl-devel
- ncurses-devel
- zlib-devel
- httpd-devel
- apr-devel
- apr-util-devel
- sqlite-devel
tags: rbenv
- name: Install ruby-build as rbenv plugin
sudo: yes
git: repo=https://github.com/sstephenson/ruby-build.git dest=/home/{{ user }}/.rbenv/plugins/ruby-build
tags: rbenv
- name: source bash_profile
shell: source /home/{{ user }}/.bash_profile
- name: Check if {{ rbenv.ruby_version }} is installed
shell: "sudo -iu {{ rbenv.user }} rbenv versions | grep {{ rbenv.ruby_version }}"
register: rbenv_check_install
changed_when: False
ignore_errors: True
tags: rbenv---
rbenv:
user: "{{ user }}"
version: v0.4.0
ruby_version: 2.0.0-p247
gem: --no-document