Se você quiser ter certeza de que um repositório está instalado em todo o seu servidor, então eu sugiro algo como isto
node default {
include base
}
class base {
yumrepo { "IUS":
baseurl => "http://dl.iuscommunity.org/pub/ius/stable/$operatingsystem/$operatingsystemrelease/$architecture",
descr => "IUS Community repository",
enabled => 1,
gpgcheck => 0
}
}
Então, para qualquer nó que estenda base
, você pode dizer
class foo {
package { "bar": ensure => installed, require => Yumrepo["IUS"] }
}
Isso garantirá que
- O pacote
bar
não será instalado, a menos que o repositório IUS esteja definido - O pacote não tentará instalar antes de o repositório do IUS ser definido