2021-04-11 05:58:48 +02:00
|
|
|
---
|
2022-08-05 20:16:36 +02:00
|
|
|
# Copyright (c) Ansible Project
|
|
|
|
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
|
2021-04-11 05:58:48 +02:00
|
|
|
- name: 'Remove any node modules'
|
|
|
|
file:
|
|
|
|
path: '{{ remote_dir }}/node_modules'
|
|
|
|
state: absent
|
|
|
|
|
|
|
|
- vars:
|
|
|
|
# sample: node-v8.2.0-linux-x64.tar.xz
|
2021-07-25 13:53:38 +02:00
|
|
|
node_path: '{{ remote_dir }}/{{ nodejs_path }}/bin'
|
2021-04-11 05:58:48 +02:00
|
|
|
package: 'ncp'
|
|
|
|
block:
|
|
|
|
- shell: npm --version
|
|
|
|
environment:
|
|
|
|
PATH: '{{ node_path }}:{{ ansible_env.PATH }}'
|
|
|
|
register: npm_version
|
|
|
|
|
|
|
|
- debug:
|
|
|
|
var: npm_version.stdout
|
|
|
|
|
|
|
|
- name: 'Install simple package with no_bin_links disabled'
|
|
|
|
npm:
|
|
|
|
path: '{{ remote_dir }}'
|
2021-07-25 13:53:38 +02:00
|
|
|
executable: '{{ node_path }}/npm'
|
2021-04-11 05:58:48 +02:00
|
|
|
state: present
|
|
|
|
name: '{{ package }}'
|
|
|
|
no_bin_links: false
|
|
|
|
environment:
|
2021-07-25 13:53:38 +02:00
|
|
|
PATH: '{{ node_path }}:{{ ansible_env.PATH }}'
|
2021-04-11 05:58:48 +02:00
|
|
|
register: npm_install_no_bin_links_disabled
|
|
|
|
|
|
|
|
- name: 'Make sure .bin folder has been created'
|
|
|
|
stat:
|
|
|
|
path: "{{ remote_dir }}/node_modules/.bin"
|
|
|
|
register: npm_dotbin_folder_disabled
|
|
|
|
|
|
|
|
- name: 'Remove any node modules'
|
|
|
|
file:
|
|
|
|
path: '{{ remote_dir }}/node_modules'
|
|
|
|
state: absent
|
|
|
|
|
|
|
|
- name: 'Install simple package with no_bin_links enabled'
|
|
|
|
npm:
|
|
|
|
path: '{{ remote_dir }}'
|
2021-07-25 13:53:38 +02:00
|
|
|
executable: '{{ node_path }}/npm'
|
2021-04-11 05:58:48 +02:00
|
|
|
state: present
|
|
|
|
name: '{{ package }}'
|
|
|
|
no_bin_links: true
|
|
|
|
environment:
|
2021-07-25 13:53:38 +02:00
|
|
|
PATH: '{{ node_path }}:{{ ansible_env.PATH }}'
|
2021-04-11 05:58:48 +02:00
|
|
|
register: npm_install_no_bin_links_enabled
|
|
|
|
|
|
|
|
- name: 'Make sure .bin folder has not been created'
|
|
|
|
stat:
|
|
|
|
path: "{{ remote_dir }}/node_modules/.bin"
|
|
|
|
register: npm_dotbin_folder_enabled
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- npm_install_no_bin_links_disabled is success
|
|
|
|
- npm_install_no_bin_links_disabled is changed
|
|
|
|
- npm_install_no_bin_links_enabled is success
|
|
|
|
- npm_install_no_bin_links_enabled is changed
|
|
|
|
- npm_dotbin_folder_disabled.stat.exists
|
|
|
|
- not npm_dotbin_folder_enabled.stat.exists
|