# See https://linuxconfig.org/how-to-install-nodejs-on-debian-9-stretch-linux class nodejs { file { '/etc/apt/trusted.gpg.d/nodesource.gpg': ensure => present, mode => '0644', user => 'root', group => 'root', source => 'file:///puppet/modules/nodejs/nodesource.gpg', } file { '/usr/local/sbin/setup-nodejs-6.x': ensure => present, mode => '0755', user => 'root', group => 'root', source => 'file:///puppet/modules/nodejs/setup_6.x.sh', } exec { 'setup-nodejs-6.x': command => "", user => "root", creates => '/etc/apt/sources.list.d/nodesource.list', require => File['/etc/apt/trusted.gpg.d/nodesource.gpg', '/usr/local/sbin/setup-nodejs-6.x' ], } package { [ 'nodejs', 'build-essential', 'libssl-dev' ]: ensure => present, require => Exec['setup-nodejs-6.x'], } }