35 lines
1.1 KiB
YAML
35 lines
1.1 KiB
YAML
- name: create nvm install directory
|
|
file:
|
|
path: '{{ nvm.install_dir }}'
|
|
state: directory
|
|
|
|
- name: register the current nvm version
|
|
shell: 'source {{ nvm.install_dir }}/nvm.sh && nvm --version'
|
|
register: nvm_stats
|
|
ignore_errors: true
|
|
|
|
- name: parse the current nvm version
|
|
set_fact:
|
|
nvm_installed_version: nvm_stats.stdout
|
|
when: nvm_stats.rc == 0
|
|
|
|
- name: download nvm {{ nvm.version }}
|
|
get_url:
|
|
url: 'https://raw.githubusercontent.com/nvm-sh/nvm/{{ nvm.version }}/install.sh'
|
|
dest: '/tmp/nvm-{{ nvm.version }}-install.sh'
|
|
when: nvm_stats.rc > 0 or nvm_installed_version != nvm.version
|
|
register: nvm_download
|
|
|
|
- name: install nvm {{ nvm.version }}
|
|
ansible.builtin.command: 'bash /tmp/nvm-{{ nvm.version }}-install.sh'
|
|
environment:
|
|
PROFILE: /dev/null
|
|
NVM_DIR: '{{ nvm.install_dir }}'
|
|
args:
|
|
creates: '{{ nvm.install_dir }}/nvm.sh'
|
|
|
|
- name: ensure nvm gets loaded
|
|
lineinfile:
|
|
path: '{{ ansible_env.HOME }}/.bashrc.override'
|
|
line: >
|
|
[ -s "{{ nvm.install_dir }}/nvm.sh" ] && \. "{{ nvm.install_dir }}/nvm.sh" # This loads nvm
|