ubuntu – Puppet:删除包并确保停止

前端之家收集整理的这篇文章主要介绍了ubuntu – Puppet:删除包并确保停止前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我对Puppet很新,但到目前为止我真的很喜欢它.现在我正在设置自动化小型架构.

我有一个问题 – 我想删除一个包,并确保它已停止.为此,我在清单中有以下条目:

package { 'supervisor':
    ensure => absent,}

service { 'supervisor':
    ensure     => stopped,enable     => false,hasstatus  => true,}

这个问题是,一旦将清单应用于节点一次,我在下次运行时会收到以下错误

debug: Service[supervisor](provider=debian): Could not find supervisor in /etc/init.d
debug: Service[supervisor](provider=debian): Could not find supervisor.sh in /etc/init.d
err: /Stage[main]/Screenly_core/Service[supervisor]: Could not evaluate: Could not find init script for 'supervisor'

有没有办法做某种条件语句,这样只有在程序包确实存在时才会执行stop-procedure(然后在删除程序包之前运行)?

在基于debian的系统上(我也假设在rpm系统上)删除一个包会在删除文件之前停止其服务(deb包中的prerm阶段).

但是你可以通过插入带有’require’的依赖来实现你的要求

package { 'supervisor':
    ensure => absent,require => Service["supervisor"],}

猜你在找的Ubuntu相关文章