Report abuse

=== definition
define remotefile($owner=root, $group=root, $mode=644) {
    file {"$name":
        owner => $owner,
        group => $group,
        mode => $mode,
        ensure => file,
        source => [ "puppet://puppet/files/$domain/$hostname/$name",
                    "puppet://puppet/files/$domain/common/$name",
                    "puppet://puppet/files/locations/$location/$name",
                    "puppet://puppet/files/common/$name"]
    }
}
==========

== usage
remotefile{["/etc/hosts", "/etc/resolv.conf"]: }
remotefile{"/etc/sudoers":
    mode => 044
}

remotefile{"/some/other/file":
    owner => someone,
    group => someone
}

==========