簡體   English   中英

更新puppet中的軟件包?

[英]Updating the package in puppet?

我正在嘗試使用ubuntu server通過puppet更新已安裝的軟件包。 但沒有更新沒有發生。

在人偶清單文件中,我們包含了收集器程序包,如下所示,

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

您能解釋一下此語句嗎-如果!defined(Package ['package name'])或如何升級軟件包。假設我要在下次部署時將php更新到最新版本...可以共享代碼嗎?

首先,應避免使用已defined函數,因為它會創建與解析相關的行為,因此不建議這樣做。

您可能沒有按照自己的想法去做那段木偶代碼。 僅在已定義包的情況下,它才進入else分支。 在這種情況下,您應該看到錯誤,因為您正在重新定義它,因此這是禁止的。

這意味着包沒有定義,你不帶任何選項定義它。 您可能需要看一下puppetlabs apt模塊 ,該模塊可以配置為在每次安裝軟件包之前運行apt-get update ,通常會使事情變得更易於管理(ppa,自定義軟件源等)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM