ecgalaxy.nodejs

ECGALAXY nodejs

Rôle Ansible qui installe Node.js globalement.

Exigences

  • Sur Ubuntu, la commande gpg-agent, fournie par ecgalaxy.common_packages.

Variables de rôle

  • nodejs_version: Définit la version de Node.js à installer ("18.x", "20.x", etc), en utilisant le gestionnaire de paquets de la distribution.

La version par défaut est 20.x.

Optionnellement, pour installer une version spécifique à partir d'une archive téléchargeable, définissez les variables ci-dessous :

  • nodejs_download_url: L'archive Node.js à télécharger (voir https://nodejs.org/dist/)
  • nodejs_checksum: La somme de contrôle de l'archive
  • nodejs_install_path: Le chemin où Node.js sera installé

À propos de Node.js 18.x, 20.x et 22.x sur Amazon Linux 2

Les binaires précompilés officiels de Node.js 18.x, 20.x et 22.x ne peuvent pas être utilisés sur Amazon Linux 2, en raison d'incompatibilités binaires (versions de symboles glibc manquantes).

AWS recommande de construire ces versions de Node.js à partir des sources, lorsque vous utilisez Amazon Linux 2 (AL2).

Les binaires précompilés de Node.js 18.x, 20.x et 22.x pour Amazon Linux 2 peuvent être trouvés sur https://code.europa.eu/ecgalaxy/amazonlinux2-nodejs/-/packages

Ils sont téléchargés par ce rôle Ansible (lorsqu'il est exécuté sur AL2), et sauvegardés dans le dossier /opt/nodejs/<nodejs_version>.

Des liens symboliques vers les exécutables Node.js sont ensuite créés dans /usr/local/bin.

Vous voudrez peut-être également mettre à jour votre $PATH, en pointant vers le dossier /opt/nodejs/<nodejs_version>/bin.

L'utilisation avec nvm a été testée avec succès ; la commande nvm use system pointera correctement vers la version Node.js "globale" (sauvegardée dans /opt/nodejs/<nodejs_version>).

Vous pouvez également exécuter ce rôle pour installer globalement 18.x, 20.x et 22.x, puis écraser le contenu de ~/.nvm/versions/node/v<nodejs_version> pour chacun, ce qui permettra de passer d'une version à une autre avec nvm use.

Dépendances

  • optionnel : ecgalaxy.bootstrap
  • optionnel : ecgalaxy.common_packages

Exemple de Playbook

- hosts: all
  roles:
    - ecgalaxy.bootstrap
    - ecgalaxy.common_packages
    - ecgalaxy.nodejs

Une ligne de commande

Pour installer globalement la version par défaut de Node.js :

bash <(curl -s https://code.europa.eu/-/snippets/1/raw/main/ansible-role.sh) ecgalaxy.nodejs

Pour installer globalement Node.js 18.x :

bash <(curl -s https://code.europa.eu/-/snippets/1/raw/main/ansible-role.sh) ecgalaxy.nodejs --extra-vars '{"nodejs_version":"18.x"}'

Voir ansible-role pour les instructions.

Veuillez vérifier d'abord l'intégrité du script.

Licence

Droit d'auteur l'Union Européenne 2022.

Sous licence EUPL-1.2 ou ultérieure.

Informations sur l'auteur

Équipe ECGALAXY.

NOTE : Ce rôle est basé sur le travail original de Jeff Geerling.

À propos du projet

Ansible role that installs Node.js

Installer
ansible-galaxy install ecgalaxy.nodejs
Licence
eupl-1.2
Téléchargements
6.5k
Propriétaire
The European Commission ECGALAXY project provides a set of reusable Infrastructure as Code (IaC) tools and components