setup.yml 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. ---
  2. - name: Ensure dependencies are present.
  3. become: yes
  4. apt:
  5. name:
  6. - apt-transport-https
  7. - gnupg2
  8. - build-essential
  9. state: present
  10. - name: Add Nodesource apt key.
  11. become: yes
  12. apt_key:
  13. url: https://keyserver.ubuntu.com/pks/lookup?op=get&fingerprint=on&search=0x1655A0AB68576280
  14. id: "68576280"
  15. state: present
  16. - name: Add NodeSource repositories for Node.js.
  17. become: yes
  18. apt_repository:
  19. repo: "{{ item }}"
  20. state: present
  21. with_items:
  22. - "deb https://deb.nodesource.com/node_{{ nodejs_version }} {{ ansible_distribution_release }} main"
  23. - "deb-src https://deb.nodesource.com/node_{{ nodejs_version }} {{ ansible_distribution_release }} main"
  24. register: node_repo
  25. - name: Update apt cache if repo was added.
  26. become: yes
  27. apt:
  28. update_cache: true
  29. cache_valid_time: 43200 # 12 hours
  30. when: node_repo.changed
  31. tags: ['skip_ansible_lint']
  32. - name: Ensure Node.js and npm are installed.
  33. become: yes
  34. apt:
  35. name: "nodejs={{ nodejs_version|regex_replace('x', '') }}*"
  36. state: present