Merge pull request #85 from wunzeco/master
[OI] Ensure installed rubies and gems are owned correctly by rvm1_user
This commit is contained in:
@@ -9,7 +9,7 @@ before_install:
|
|||||||
- '__rvm_unload ; rm -rf ~/.rvm'
|
- '__rvm_unload ; rm -rf ~/.rvm'
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- 'pip install ansible==1.7.1'
|
- 'pip install ansible==2.0.0'
|
||||||
- 'printf "[defaults]\nroles_path = ../" > ansible.cfg'
|
- 'printf "[defaults]\nroles_path = ../" > ansible.cfg'
|
||||||
|
|
||||||
script:
|
script:
|
||||||
|
|||||||
@@ -5,13 +5,13 @@
|
|||||||
changed_when: False
|
changed_when: False
|
||||||
failed_when: False
|
failed_when: False
|
||||||
register: detect_rubies
|
register: detect_rubies
|
||||||
with_items: rvm1_rubies
|
with_items: '{{ rvm1_rubies }}'
|
||||||
when: rvm1_rubies
|
when: rvm1_rubies
|
||||||
|
|
||||||
- name: Install rubies
|
- name: Install rubies
|
||||||
command: '{{ rvm1_rvm }} install {{ item.item }} {{ rvm1_ruby_install_flags }}'
|
command: '{{ rvm1_rvm }} install {{ item.item }} {{ rvm1_ruby_install_flags }}'
|
||||||
when: rvm1_rubies and item.rc|default(0) != 0
|
when: rvm1_rubies and item.rc|default(0) != 0
|
||||||
with_items: detect_rubies.results
|
with_items: '{{ detect_rubies.results }}'
|
||||||
become: yes
|
become: yes
|
||||||
become_user: '{{ rvm1_user }}'
|
become_user: '{{ rvm1_user }}'
|
||||||
|
|
||||||
@@ -19,19 +19,25 @@
|
|||||||
command: '{{ rvm1_rvm }} alias list default'
|
command: '{{ rvm1_rvm }} alias list default'
|
||||||
changed_when: False
|
changed_when: False
|
||||||
register: detect_default_ruby_version
|
register: detect_default_ruby_version
|
||||||
|
become: yes
|
||||||
|
become_user: '{{ rvm1_user }}'
|
||||||
|
|
||||||
- name: Select default ruby
|
- name: Select default ruby
|
||||||
command: '{{ rvm1_rvm }} alias create default {{ rvm1_default_ruby_version }}'
|
command: '{{ rvm1_rvm }} alias create default {{ rvm1_default_ruby_version }}'
|
||||||
when: detect_default_ruby_version.stdout|default() == '' or
|
when: detect_default_ruby_version.stdout|default() == '' or
|
||||||
rvm1_default_ruby_version not in detect_default_ruby_version.stdout
|
rvm1_default_ruby_version not in detect_default_ruby_version.stdout
|
||||||
|
become: yes
|
||||||
|
become_user: '{{ rvm1_user }}'
|
||||||
|
|
||||||
- name: Detect installed ruby patch number
|
- name: Detect installed ruby patch number
|
||||||
shell: >
|
shell: >
|
||||||
{{ rvm1_rvm }} list strings | grep {{ item }} | tail -n 1
|
{{ rvm1_rvm }} list strings | grep {{ item }} | tail -n 1
|
||||||
with_items: rvm1_rubies
|
with_items: '{{ rvm1_rubies }}'
|
||||||
changed_when: False
|
changed_when: False
|
||||||
register: ruby_patch
|
register: ruby_patch
|
||||||
always_run: yes # Run even when in --check mode (http://docs.ansible.com/ansible/playbooks_checkmode.html)
|
always_run: yes # Run even when in --check mode (http://docs.ansible.com/ansible/playbooks_checkmode.html)
|
||||||
|
become: yes
|
||||||
|
become_user: '{{ rvm1_user }}'
|
||||||
|
|
||||||
- name: Install bundler if not installed
|
- name: Install bundler if not installed
|
||||||
shell: >
|
shell: >
|
||||||
@@ -39,9 +45,11 @@
|
|||||||
| if ! grep "^bundler " ; then {{ rvm1_install_path }}/wrappers/{{ item.stdout }}/gem install bundler ; fi
|
| if ! grep "^bundler " ; then {{ rvm1_install_path }}/wrappers/{{ item.stdout }}/gem install bundler ; fi
|
||||||
args:
|
args:
|
||||||
creates: '{{ rvm1_install_path }}/wrappers/{{ item.stdout }}/bundler'
|
creates: '{{ rvm1_install_path }}/wrappers/{{ item.stdout }}/bundler'
|
||||||
with_items: ruby_patch.results
|
with_items: '{{ ruby_patch.results }}'
|
||||||
register: bundler_install
|
register: bundler_install
|
||||||
changed_when: '"Successfully installed bundler" in bundler_install.stdout'
|
changed_when: '"Successfully installed bundler" in bundler_install.stdout'
|
||||||
|
become: yes
|
||||||
|
become_user: '{{ rvm1_user }}'
|
||||||
|
|
||||||
- name: Symlink ruby related binaries on the system path
|
- name: Symlink ruby related binaries on the system path
|
||||||
file:
|
file:
|
||||||
@@ -51,7 +59,7 @@
|
|||||||
owner: 'root'
|
owner: 'root'
|
||||||
group: 'root'
|
group: 'root'
|
||||||
when: not '--user-install' in rvm1_install_flags
|
when: not '--user-install' in rvm1_install_flags
|
||||||
with_items: rvm1_symlink_binaries
|
with_items: '{{ rvm1_symlink_binaries }}'
|
||||||
|
|
||||||
- name: Detect if ruby version can be deleted
|
- name: Detect if ruby version can be deleted
|
||||||
command: '{{ rvm1_rvm }} {{ rvm1_delete_ruby }} do true'
|
command: '{{ rvm1_rvm }} {{ rvm1_delete_ruby }} do true'
|
||||||
@@ -59,8 +67,12 @@
|
|||||||
failed_when: False
|
failed_when: False
|
||||||
register: detect_delete_ruby
|
register: detect_delete_ruby
|
||||||
when: rvm1_delete_ruby
|
when: rvm1_delete_ruby
|
||||||
|
become: yes
|
||||||
|
become_user: '{{ rvm1_user }}'
|
||||||
|
|
||||||
- name: Delete ruby version
|
- name: Delete ruby version
|
||||||
command: '{{ rvm1_rvm }} remove {{ rvm1_delete_ruby }}'
|
command: '{{ rvm1_rvm }} remove {{ rvm1_delete_ruby }}'
|
||||||
changed_when: False
|
changed_when: False
|
||||||
when: rvm1_delete_ruby and detect_delete_ruby.rc == 0
|
when: rvm1_delete_ruby and detect_delete_ruby.rc == 0
|
||||||
|
become: yes
|
||||||
|
become_user: '{{ rvm1_user }}'
|
||||||
|
|||||||
Reference in New Issue
Block a user