From 2d469c03753d932bb0d0d486f83db2c1a6ff7a13 Mon Sep 17 00:00:00 2001 From: Mark Wolfe Date: Tue, 3 Nov 2015 12:55:36 +1100 Subject: [PATCH 1/2] Added support for 5.x nodejs. * Added and tested new NodeJS version * Added a more extensible way of catering for the original 0.10, 0.12, along with support for 4.x and 5.x repo paths --- README.md | 1 + tasks/main.yml | 13 ++++++++++++- vars/main.yml | 2 +- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d4815d3..522a4d4 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,7 @@ Then configure it as follows: ## Role Variables +- `nodejs_version`: Supports 0.10 or 0.12 or 4.x - `nodejs_nodesource_pin_priority`: Pin-Priority of the NodeSource repository (default: `500`). ## Testing diff --git a/tasks/main.yml b/tasks/main.yml index adf8155..297605d 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -6,7 +6,7 @@ register: apt_https_transport - name: Install HTTPS transport for APT - apt: + apt: pkg: apt-transport-https state: installed when: not apt_https_transport.stat.exists @@ -16,6 +16,17 @@ url: https://deb.nodesource.com/gpgkey/nodesource.gpg.key state: present +- name: Check if nodejs_version is 4.x or higher + set_fact: debian_repo_version="4.x" + when: "{{ nodejs_version | version_compare('4.0', '>=') }}" + +- name: Check if nodejs_version is 5.x or higher + set_fact: debian_repo_version="5.x" + when: "{{ nodejs_version | version_compare('5.0', '>=') }}" + +- name: Show fact + debug: msg="debian_repo_version = {{ debian_repo_version }}" + - name: Add NodeSource deb repository apt_repository: repo: 'deb https://deb.nodesource.com/node_{{ debian_repo_version }} {{ ansible_distribution_release }} main' diff --git a/vars/main.yml b/vars/main.yml index 10f5e3a..fb00c88 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -1,3 +1,3 @@ --- # vars file for nodejs -debian_repo_version: "{{ nodejs_version if '4' not in nodejs_version else '4.x' }}" +debian_repo_version: "{{ nodejs_version }}" From c60b5d53daf067b279a9d0ce18ed0b75dac1280d Mon Sep 17 00:00:00 2001 From: Mark Wolfe Date: Tue, 3 Nov 2015 13:07:09 +1100 Subject: [PATCH 2/2] Updated with some ammendments to readme and comments. --- README.md | 15 ++++++++++++++- defaults/main.yml | 4 ++-- tasks/main.yml | 3 --- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 522a4d4..3217312 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,19 @@ Install the playbook via Ansible Galaxy: $ ansible-galaxy install nodesource.node ``` +Or using the `requirements.yml` + +```yaml +# install the role from galaxy +- src: nodesource.node +``` + +Which is imported as follows. + +``` +ansible-galaxy install -r requirements.yml +``` + Then configure it as follows: ```yaml @@ -25,7 +38,7 @@ Then configure it as follows: ## Role Variables -- `nodejs_version`: Supports 0.10 or 0.12 or 4.x +- `nodejs_version`: Supports 0.10 or 0.12 or 4.x or 5.x - `nodejs_nodesource_pin_priority`: Pin-Priority of the NodeSource repository (default: `500`). ## Testing diff --git a/defaults/main.yml b/defaults/main.yml index 863eacd..50041d5 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -2,5 +2,5 @@ # Pin-Priority of NodeSource repository nodejs_nodesource_pin_priority: 500 -# 0.10 or 0.12 or 4.x -nodejs_version: "4.2" +# 0.10 or 0.12 or 4.x or 5.x +nodejs_version: "5.0" diff --git a/tasks/main.yml b/tasks/main.yml index 297605d..0cb4908 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -24,9 +24,6 @@ set_fact: debian_repo_version="5.x" when: "{{ nodejs_version | version_compare('5.0', '>=') }}" -- name: Show fact - debug: msg="debian_repo_version = {{ debian_repo_version }}" - - name: Add NodeSource deb repository apt_repository: repo: 'deb https://deb.nodesource.com/node_{{ debian_repo_version }} {{ ansible_distribution_release }} main'