Как создать манифест марионетки, который «использует» один из модулей марионеточной кузницы?
class foo {
include puppetlabs-git (<- this doesn't work)
#https://forge.puppetlabs.com/puppetlabs/git
package {'openssl-devel':
ensure => latest,
}
#package {'git': (<- commented out because it seems like there is a better way using puppet forge)
# ensure => installed,
#}
}
class {'foo': }
Вам все равно нужно сначала загрузить этот модуль из кузницы:
puppet module install puppetlabs/git
Он поместит его в путь к модулю по умолчанию, но вы можете переопределить его с помощью переключателя --modulepath.
Вы можете увидеть указанную команду по указанному вами URL ...;)
Затем вы «используете» этот модуль следующим образом:
include git
Сначала вам необходимо установить модуль - используйте puppet module install puppetlabs-git
командовать своим хозяином.
Как только это будет сделано, вы можете использовать модуль через include git
- обратите внимание, что puppetlabs-
Префикс - это соглашение для конкретной кузницы, которое не включается в имя модуля после его установки.
Кстати, этот модуль в значительной степени просто выполняет package {"git": ensure => installed }
что у вас там уже есть; вероятно, не так уж много необходимости иметь отдельный модуль для одного ресурса.
Выполните следующие шаги, чтобы использовать существующий модуль марионетки с модулем марионетки.
Прежде всего установите модуль марионетки, который вы хотите включить в свой модуль.
Например, если вы хотите включить модуль apache в свой марионеточный модуль:
puppet module install puppetlabs/apache
После этого добавьте в свой модуль любой класс, например:
class foo {
include apache
and rest
of
your
code....
}
затем убедитесь, что вы сохранили свой модуль в /etc/puppetlabs/puppet/modules/
, потому что по умолчанию в этом каталоге устанавливаются модули.