Назад | Перейти на главную страницу

Puppet включает / требует модуль марионеточной лаборатории

Как создать манифест марионетки, который «использует» один из модулей марионеточной кузницы?

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/ , потому что по умолчанию в этом каталоге устанавливаются модули.