47 lines
1.8 KiB
YAML
47 lines
1.8 KiB
YAML
---
|
|
- name: detect rvm binary
|
|
stat: path='{{ rvm1 }}'
|
|
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: '{{ rvm1 }} 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: '{{ rvm1 }} get stable && {{ rvm1 }} 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: '{{ rvm1 }} autolibs 3'
|
|
when: not rvm_binary.stat.exists |