Ruby 使用Puppet模块的Puppet资源排序;大师/木偶工作组;?

Ruby 使用Puppet模块的Puppet资源排序;大师/木偶工作组;?,ruby,puppet,Ruby,Puppet,Puppet允许指定资源的安装/创建顺序 我的ruby脚本使用包安装应用程序 $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, re

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

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

$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],
 }
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
}
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"
}
在安装之前,脚本需要下载应用程序。脚本使用木偶模块
https://github.com/maestrodev/puppet-wget
获取应用程序

$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],
 }
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
}
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"
}
我不知道maestrodev/puppet wget模块是否定义了一个类型

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

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

如果是,如何使用puppet的before元参数来表示下载应用程序->安装应用程序包之间的关系?

我可能没有理解您问题的要点,但如果要求不起作用,请尝试将其大写:

define wget::fetch (
  $source,
  $destination,
  $timeout            = '0',
  $verbose            = false,
  $redownload         = false,
  $nocheckcertificate = false,
  $execuser           = 'root',
) { ... }
require => Wget::Fetch[$app_firefoxt_app]

我使用Puppet的
资源下载应用程序来解决这个问题

$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],
 }
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
}
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"
}