- name: Update apt cache apt: update_cache: yes become: yes - name: Install prereqs package: name: apt-transport-https state: present become: yes - name: Pin nodejs installs to nodesource copy: src: 00-nodesource.pref dest: /etc/apt/preferences.d/00-nodesource.pref mode: 0644 become: yes - name: Add all repositories include_role: name: ensure-package-repositories vars: repositories_keys: - url: https://deb.nodesource.com/gpgkey/nodesource.gpg.key repositories_list: - repo: deb-src https://deb.nodesource.com/node_{{ node_version }}.x {{ ansible_distribution_release }} main - repo: deb https://deb.nodesource.com/node_{{ node_version }}.x {{ ansible_distribution_release }} main # Use template so that we can easily update this in the future to be able to # use a mirror location. - name: Pin NodeJS to nodesource apt repository become: yes template: dest: /etc/apt/preferences.d/nodejs.pref group: root mode: 0644 owner: root src: nodejs.pref.j2 - name: Install NodeJS from nodesource package: name: nodejs state: latest become: yes tags: # Ignore ANSIBLE0010: We really want latest version - skip_ansible_lint - name: Output node version command: node --version - name: Output npm version command: npm --version