Uma alternativa para notificar é se inscrever:
file { "/etc/sshd_config":
source => "....",
}
service { sshd:
ensure => running,
subscribe => File["/etc/sshd_config"],
}
A diferença é que o relacionamento é descrito do outro lado. Por exemplo, você pode fazer o apache assinar o /etc/apache/httpd.conf, mas você faria um arquivo vhost notificar o apache, pois sua classe apache não saberá sobre todos os vhost que você possui.
Uma situação de extremidade dupla semelhante se aplica a requerer e antes. É apenas uma questão de que faz mais sentido na situação particular.
Como Chad mencionou, se você encontrar fantoches constantemente tentando iniciar seu serviço, precisará adicionar um parâmetro padrão, que é um regex a ser aplicado na lista de processos. Por padrão, o fantoche fará uma parada e começará a reiniciar um serviço. Se você adicionar "hasrestart => true", ele usará o comando especificado no parâmetro "restart" para reiniciar o serviço.
(Eu sei que essa é uma pergunta super antiga, mas pensei em colocar meus dois centavos com uma (na minha opinião) uma maneira muito mais fácil de fazer isso)
Sinta-se à vontade para usar a notação de seta também:
ou
fonte
Isso funciona para o Solaris 10 :)
fonte
Existem várias notações equivalentes:
Notificar :
Inscreva-se :
Notação de seta :
Declarações de encadeamento
Se você deseja acionar em
reload
vez derestart
, ajuste a declaração de serviço:fonte