In site.pp I have:
include network
network::ip { "eth0": ip => "$ip", netmask => "$netmask", gateway => "$gateway", network => "$network", broadcast => "$broadcast", gateway => "$gateway", hostname => "$cn", enabled => "yes" }
exec { "rhn-profile-sync":
path => "/usr/sbin",
}
Package {
provider => $operatingsystem ? {
redhat => yum
}
require => [ Yumrepoepel?, Yumrepohls?, Execrhn-profile-sync?, Servicenetwork?, Network::ipeth0? ],
}
However, when I do a run on a test node freshly built, it tries to install various packages BEFORE running the network::ip define, and before executing rhn-profile-sync and building the repos. My understanding is this should just work and applies those requires to all package{} statements.