用木偶模块“maestrodev / puppet-wget”订购Puppet资源?

时间:2013-06-05 09:15:41

标签: ruby puppet

Puppet允许resource ordering指定安装/创建资源的顺序。

我的ruby脚本使用package来安装应用程序。

$app_firefox_name = "Firefox-0-DL"
$app_firefoxt_dmg = "/tmp/$app_firefox_name.dmg"

package { $app_firefoxt_app:
     ensure => installed,
     provider => appdmg,
 source => $app_firefoxt_dmg,
     require => wget::fetch[$app_firefoxt_app],
 }

在安装之前,脚本需要下载该应用程序。该脚本使用puppet模块https://github.com/maestrodev/puppet-wget来获取应用程序。

wget::fetch { $app_firefox_name:
    source      => "http://download.mozilla.org/?product=firefox-21.0&os=osx&lang=en-GB",
    destination => $app_firefox_dmg,
    timeout     => 0,
    verbose     => true
}

我不知道maestrodev / puppet-wget模块是否定义了一个类型。

以下代码是否定义了可用于描述资源排序的类型(如Puppet的资源订购文档中所定义)?

define wget::fetch (
  $source,
  $destination,
  $timeout            = '0',
  $verbose            = false,
  $redownload         = false,
  $nocheckcertificate = false,
  $execuser           = 'root',
) { ... }

如果是,如何在元参数之前使用puppet来表达关系下载应用程序 - >安装应用包?

2 个答案:

答案 0 :(得分:1)

我可能会忽略您的问题,但如果要求不起作用,请尝试将其大写:

require => Wget::Fetch[$app_firefoxt_app]

答案 1 :(得分:0)

我使用Puppet的package资源来解决此问题以下载应用程序。

package { $app_firefoxt_app:
 ensure => installed,
 provider => appdmg,
 source => "http://download.cdn.mozilla.net/pub/mozilla.org/firefox/releases/latest/mac/en-GB/Firefox%2021.0.dmg"
}