Files
ansible-role-rvm/tasks/rvm.yml
2014-07-01 20:35:10 -04:00

47 lines
1.9 KiB
YAML

---
- name: detect rvm binary
stat: path='{{ ansible_local.rvm1.rvm }}'
register: rvm_binary
- name: detect rvm installer
stat: path='{{ rvm1_temp_download_path }}/rvm-installer.sh'
register: rvm_installer
- name: detect current rvm version
command: '{{ ansible_local.rvm1.rvm }} version'
changed_when: false
register: rvm_current_version
when: rvm_binary.stat.exists
- name: detect stable rvm version from url
uri: url='{{ rvm1_rvm_stable_version_number }}' return_content=yes
register: rvm_stable_version_number
when: '"://" in rvm1_rvm_stable_version_number'
- name: ensure rvm installer is copied from url
get_url:
url: '{{ rvm1_rvm_latest_installer }}'
dest: '{{ rvm1_temp_download_path }}/rvm-installer.sh'
when: '"://" in rvm1_rvm_latest_installer and not rvm_installer.stat.exists or rvm1_rvm_force_upgrade_installer'
- name: ensure rvm installer is copied from local file
copy: src='{{ rvm1_rvm_latest_installer }}' dest='{{ rvm1_temp_download_path }}/rvm-installer.sh'
when: not '://' in rvm1_rvm_latest_installer and not rvm_installer.stat.exists or rvm1_rvm_force_upgrade_installer
- name: ensure rvm installer is configured
file:
path: "{{ rvm1_temp_download_path }}/rvm-installer.sh"
mode: 0755
when: not rvm_binary.stat.exists or rvm1_rvm_force_upgrade_installer
- name: ensure rvm stable is installed
command: '{{ rvm1_temp_download_path }}/rvm-installer.sh --path {{ rvm1_install_path }} stable'
when: not rvm_binary.stat.exists
- name: ensure rvm is upgraded
shell: '{{ ansible_local.rvm1.rvm }} get stable && {{ ansible_local.rvm1.rvm }} reload'
when: rvm_binary.stat.exists and rvm_stable_version_number.content | default(rvm1_rvm_stable_version_number) | replace('\n', '') > rvm_current_version.stdout.split()[1]
- name: ensure rvm installs ruby dependencies
command: '{{ ansible_local.rvm1.rvm }} autolibs 3'
when: not rvm_binary.stat.exists