ansible instala node.js versión 6

Para instalar la versión del nodo 6.x estos son los comandos:

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - sudo apt-get install -y nodejs 

Ahora, ¿cómo hago exactamente eso en ansible? ¿Alguna idea aquí?

Esto es lo que tenía hasta ahora, pero instala la versión antigua.

 --- - name: Ensure Ubuntu Distro is Supported get_url: url='https://deb.nodesource.com/node/dists/"{{ ansible_distribution_release }}"/Release' dest=/dev/null register: distrosupported - name: Remove Old Chris Lea PPA apt_repository: repo='ppa:chris-lea/node.js' state=absent when: distrosupported|success ignore_errors: yes - name: Remove Old Chris Lea Sources sudo: yes file: path='/etc/apt/sources.list.d/chris-lea-node_js-"{{ ansible_distribution_release }}".list' state=absent when: distrosupported|success ignore_errors: yes - name: Add Nodesource Keys sudo: yes apt_key: url=https://deb.nodesource.com/gpgkey/nodesource.gpg.key state=present - name: Add Nodesource Apt Sources List Deb sudo: yes apt_repository: repo='deb https://deb.nodesource.com/node "{{ ansible_distribution_release }}" main' state=present when: distrosupported|success - name: Add Nodesource Apt Sources List Deb Src sudo: yes apt_repository: repo='deb-src https://deb.nodesource.com/node "{{ ansible_distribution_release }}" main' state=present when: distrosupported|success - name: Install NodeJS sudo: yes apt: pkg=nodejs state=latest update_cache=true when: distrosupported|success - debug: msg="{{npm_pkgs}}" - name: install global npm packages sudo: yes npm: name={{item}} global=yes state=latest with_items: "{{npm_pkgs}}" 

Estaba utilizando este manual para instalar el nodo 6.1.0 a través de nvm (administrador de versiones de nodo):

Nota: Es posible que deba cambiar los hosts y la conexión en el juego.

 --- - hosts: localhost connection: local vars: node_version: 6.1.0 tasks: - name: Download the nvm(node version manager) install script get_url: url=https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh dest=/tmp/install.sh - name: Install dependencies apt: pkg={{ item }} update_cache=yes cache_valid_time=3600 with_items: - git - curl - build-essential - libssl-dev become: yes become_user: root - name: Execute the nvm install script shell: bash install.sh chdir=/tmp executable=/bin/bash - name: Register the NVM_DIR shell: echo $NVM_DIR register: nvm_dir - name: Install the specified node version using the nvm command and set it as default shell: . {{ nvm_dir.stdout }}/nvm.sh && nvm install {{ node_version }} && nvm run {{node_version}} --version && nvm alias default {{node_version}} creates=~/.nvm/versions/node/v{{ node_version }} 

Para obtener más información sobre nvm, consulte: https://github.com/creationix/nvm

Basado en el código de la pregunta original y el comentario útil de @ydaetskcoR , pude instalar NodeJS 6.x con lo siguiente en Ubuntu 16.04:

 - name: Add Nodesource Keys become: yes apt_key: url: https://deb.nodesource.com/gpgkey/nodesource.gpg.key state: present # Note: "xenial" is ubuntu-speak for 16.04 - name: Add Nodesource Apt Sources become: yes apt_repository: repo: '{{ item }}' state: present with_items: - 'deb https://deb.nodesource.com/node_6.x xenial main' - 'deb-src https://deb.nodesource.com/node_6.x xenial main' - name: Install NodeJS and NPM become: yes apt: name: '{{ item }}' state: latest update_cache: yes with_items: - nodejs - nodejs-legacy - npm 

He refaccionado un poco por brevedad, pero lo más importante es la adición de _6.x a las URL del repository .

Esto funcionó para mí usando Ansible 2.3.2.0

    Intereting Posts