remotefile{}


			
define remotefile($owner = root, $group = root, $path, $mode, $source, $backup = true, $recurse =
false, $module) {

  $filedist = "$lsbdistid-$lsbdistrelease"

  file {
    $name:
      mode => $mode,
      owner => $owner,
      group => $group,
      backup => $backup,
      path => $path,
      recurse => $recurse,
      source => [
        "puppet://$puppet_server/private/$module/$source",
        "puppet://$puppet_server/dists/$module/$filedist/$source",
        "puppet://$puppet_server/dists/$module/$lsbdistid/$source",
        "puppet://$puppet_server/dists/$module/default/$source",
        "puppet://$puppet_server/$module/$filedist/$source",
        "puppet://$puppet_server/$module/$lsbdistid/$source",
        "puppet://$puppet_server/$module/default/$source"
      ]
  }
}

site.pp


			
$puppet_server = "blah.blah.stub"

fileserver.conf (plain_text)


			
[seeds]
  path /var/puppet/files/seeds
  allow *

[dists]
  path /var/puppet/files/dists
  allow *

[private]
  path /var/puppet/files/private/%h
  allow *