Puppet Class: nvm

Defined in:
puppet/modules/nvm/manifests/init.pp

Overview

Class: nvm

Install and configure NVM

Parameters:

  • nvm_version (Any) (defaults to: 'v0.40.1')
  • node_version (Any) (defaults to: '12')


5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'puppet/modules/nvm/manifests/init.pp', line 5

class nvm (
    $nvm_version = 'v0.40.1',
    $node_version = '12'
) {
    $nvm_dir = '/usr/local/nvm'

    file { $nvm_dir:
        ensure => 'directory',
        owner  => 'root',
        group  => 'root',
        mode   => '0755',
        before => Exec['download_nvm'],
    }

    exec { 'download_nvm':
        command     => "curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/${nvm_version}/install.sh | PROFILE=/dev/null bash",
        creates     => "${nvm_dir}/nvm.sh",
        require     => Package['curl'],
        user        => 'root',
        environment => ["NVM_DIR=${nvm_dir}"],
    }

    nvm::install { "install_node_${node_version}":
        version => $node_version,
    }
}