Я пытаюсь сделать следующее в марионетке:
package { 'bower':
ensure => present,
provider => 'npm',
require => Class['nodejs'],
before => [ Exec['npm_install'], Exec['grunt_build'] ],
}
Это дает мне ошибку:
err: Failed to apply catalog: Parameter provider failed on Package[bower]: Invalid package provider 'npm' at
Я попытался использовать и puppetlabs-nodejs и willdurand-nodejs без успеха и также вручную установил npm, затем пытался применить вышеупомянутое.
Я написал свой собственный класс для установки узла, но использовал собственный провайдер puppetlabs-nodejs https://github.com/puppetlabs/puppetlabs-nodejs/blob/master/lib/puppet/ provider / package / npm.rb
Похоже, что согласно https://docs.puppetlabs.com/guides/plugins_in_modules.html pluginsync = true необходимо добавить в /etc/puppet/puppet.conf на узлах.