Это довольно простая проблема, и я прочитал ряд предлагаемых решений, но я до сих пор не могу заставить марионетку применять для импорта класса git :: config. Вот мой файл установки:puppet apply 'не удалось найти класс'
импортировать модуль GIT через nodes.pp:
#/etc/puppet/manifests/nodes.pp
node default {
}
include git
импорт site.pp nodes.pp:
#/etc/puppet/manifests/site.pp
import 'nodes.pp'
Модуль мерзавец определяется следующим образом:
#/etc/puppet/modules/git/manifests/init.pp
class git {
include git::install
include git::config
}
class git::install{
package {'git': => present }
}
и конфигурационный файл:
#/etc/puppet/modules/git/manifests/config.pp
define git::config{
[some code here]
}
Когда я бегу кукольный применять, кукольный не находит класс мерзавец :: конфигурации:
sudo puppet apply --modulepath=/etc/puppet/modules /etc/puppet/manifests/site.pp
Error: Could not find class git::config for xxxx on node xxxx.
Оригинальный модуль был puppetlabs-мерзавец (такая же структура папок), но я воссоздал ошибку, используя упрощенная файловая структура (см. выше).
Update 1
Опечатка выше, мерзавец config.pp и init.pp находятся в папке/модулей/мерзавца/манифестов и файл config.pp читает 'определяют GIT :: конфиг'
ли это опечатка, что нет 'class' ключевого слова в' мерзавца :: config' файл? –
Файл pp должен быть помещен в папку 'git/manifestests', а не непосредственно под папкой git. – BMW