gpt4 book ai didi

python - 更新 puppet 中的包?

转载 作者:太空宇宙 更新时间:2023-11-04 04:06:50 25 4
gpt4 key购买 nike

我正在尝试使用 ubuntu 服务器通过 puppet 更新已安装的软件包。但没有更新没有发生。

在 puppet list 文件中,我们包含了收集器包,如下所示,

if !defined(Package['package name'])
{
package { 'package name': }
}
else
{
package { 'package name':
ensure => latest,
require => Exec['apt-get update'],
}
}

你能解释一下这个语句吗 - if !define(Package['package name']) 或如何升级包。假设我想安装php,而下次部署需要更新到最新版本...你可以分享代码吗?

最佳答案

首先,您应该避免使用 define 函数,因为它会创建依赖于解析的行为,这是不建议的。

您的这段 puppet 代码可能没有按照您的想法去做。仅当包已定义时,它才会进入 else 分支。在这种情况下,您应该会看到一个错误,因为您正在重新定义它,这是禁止的。

这意味着该包定义,并且您在没有任何选项的情况下定义它。您可能想看看puppetlabs apt module可以配置为在每个软件包安装之前运行 apt-get update,并且通常会使管理变得更容易(ppa、自定义软件源等)。

关于python - 更新 puppet 中的包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20788842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com