Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
setup-RedHat.yml 1.41 KiB
Newer Older
- name: Set up the Nodesource RPM directory
  ansible.builtin.set_fact:
    nodejs_rhel_rpm_dir: "pub_{{ nodejs_version }}"
    rhel_distribution_major_version: 7

- name: Set up the Nodesource RPM directory
  ansible.builtin.set_fact:
    rhel_distribution_major_version: "{{ ansible_distribution_major_version }}"
  when: ansible_distribution_major_version | int >= 8

- name: Import Nodesource RPM key
  ansible.builtin.rpm_key:
    key: https://rpm.nodesource.com/pub/el/NODESOURCE-GPG-SIGNING-KEY-EL
    state: present
  become: true

- name: Add Nodesource repositories for Node.js
  ansible.builtin.yum:
    name: "https://rpm.nodesource.com/{{ nodejs_rhel_rpm_dir }}/el/{{ rhel_distribution_major_version }}/{{ ansible_architecture }}/nodesource-release-el{{ rhel_distribution_major_version }}-1.noarch.rpm"
    state: present
  become: true
- name: Ensure Node.js AppStream module is disabled (CentOS 8+)
  ansible.builtin.command: yum module disable -y nodejs
  args:
    warn: false
  register: module_disable
  changed_when: "'Nothing to do.' not in module_disable.stdout"
  when: ansible_distribution_major_version | int >= 8
  become: true
- name: Ensure Node.js and npm are installed
  ansible.builtin.yum:
    name: "nodejs-{{ nodejs_version | regex_replace('x', '') }}*"
    state: present
    enablerepo: nodesource
  become: true

- name: Install yarn
  community.general.npm:
    name: yarn
    global: yes
  become: true