Add nodejs role for Debian, macOS, and Windows

This commit is contained in:
Kenneth Benzie 2022-05-11 22:33:18 +01:00
parent 5dfb92522e
commit 44c1e5ccff
9 changed files with 44 additions and 34 deletions

View File

@ -1,9 +1,7 @@
---
- name: install homebrew packages
homebrew:
name:
- neovim
- node
name: neovim
state: latest
- name: clone config repo

View File

@ -6,31 +6,3 @@
state: latest
- include_tasks: unix.yaml
- name: nodejs get json containing latest version
uri:
url: https://nodejs.org/dist/index.json
register: latest
- name: nodejs create directory for downloaded package
file:
state: directory
dest: ~/.local/src
- name: nodejs download latest package
get_url:
url: 'https://nodejs.org/dist/{{latest.json[0].version}}/node-{{latest.json[0].version}}-linux-x64.tar.gz'
dest: ~/.local/src/node.tar.gz
- name: nodejs extract downloaded package
unarchive:
src: ~/.local/src/node.tar.gz
dest: ~/.local/src
remote_src: true
- name: nodejs create symlink links
file:
state: link
src: '~/.local/src/node-{{latest.json[0].version}}-linux-x64/bin/{{item}}'
dest: '~/.local/bin/{{item}}'
with_items: [corepack, node, npm, npx]

View File

@ -1,9 +1,7 @@
---
- name: install choco packages
win_chocolatey:
name:
- neovim
- nodejs
name: neovim
state: latest
- name: clone config repo

View File

@ -0,0 +1,5 @@
---
- name: install homebrew package
homebrew:
name: node
state: latest

View File

@ -0,0 +1,28 @@
---
- name: get json containing latest version
uri:
url: https://nodejs.org/dist/index.json
register: latest
- name: create directory for downloaded package
file:
state: directory
dest: ~/.local/src
- name: download latest package
get_url:
url: 'https://nodejs.org/dist/{{latest.json[0].version}}/node-{{latest.json[0].version}}-linux-x64.tar.gz'
dest: ~/.local/src/node.tar.gz
- name: extract downloaded package
unarchive:
src: ~/.local/src/node.tar.gz
dest: ~/.local/src
remote_src: true
- name: create symlink links
file:
state: link
src: '~/.local/src/node-{{latest.json[0].version}}-linux-x64/bin/{{item}}'
dest: '~/.local/bin/{{item}}'
with_items: [corepack, node, npm, npx]

View File

@ -0,0 +1,5 @@
---
- name: install choco package
win_chocolatey:
name: nodejs
state: latest

View File

@ -0,0 +1,2 @@
---
- include_tasks: '{{ansible_os_family}}.yaml'

View File

@ -7,4 +7,5 @@
- role: git
- role: neovim
- role: ag
- role: nodejs
- role: python

View File

@ -16,6 +16,7 @@
- role: git
- role: neovim
- role: ag
- role: nodejs
- role: python
- role: autohotkey
- role: 1password