Это довольно простая проблема, и я прочитал ряд предложенных решений, но я все еще не могу заставить puppet применить импорт класса git::config. Вот мои настройки файла:
Я импортирую модуль git через nodes.pp:
#/etc/puppet/manifests/nodes.pp
node default {
}
include git
site.pp импортирует nodes.pp:
#/etc/puppet/manifests/site.pp
import 'nodes.pp'
Модуль git определяется следующим образом:
#/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]
}
Когда я запускаю puppet apply, puppet не находит класс git::config:
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-git (такая же структура папок), но я воссоздал ошибку, используя упрощенную файловую структуру (см. выше).
Обновление 1
Опечатка выше, git config.pp и init.pp находятся в папке /modules/git/manifests, а файл config.pp читает «define git::config»
git::config
нет ключевого словаclass
? - person Chris Pitman   schedule 26.02.2015git/manifests
, а не непосредственно в папку git. - person BMW   schedule 26.02.2015