On 2013-08-19 14:06, Matt S wrote:
Hello!
I've got a manifest that involves downloading and updating a bunch of
different packages using apt, pip, etc. One of my apt-dependencies,
dnsmasq <http://www.thekelleys.org.uk/dnsmasq/doc.html>, redirects the
machine's DNS. Any modules currently running at that time that use the
internet get a temporary name resolution error. Unfortunately, I can't
run this class in a different stage, as it creates a dependency cycle
with the other things that depend on dnsmasq.
Is there a way to force puppet to run a particular class by itself?
There are enough other tasks/jobs/whatever-we-call-them that being
explicit about the dependencies isn't really worth it (and it'd have to
be kept up to date as my manifest grows).
You might want to look into tags. I've got a few resources which are
applied to bootstrap the whole process, which can be applied separately
using "--tags kickstart::bootstrap", which is used while kickstarting
the node. This ensures that when it reboots, it has a properly
configured puppet, but doesn't start services in kickstart.
Alternatively you can pack the initial installation and configuration of
dnsmasq into an exec{} to ensure semi-atomic execution. Not recommended,
but possible.
Regards, David
--
You received this message because you are subscribed to the Google Groups "Puppet
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to puppet-users+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-users@googlegroups.com.
Visit this group at http://groups.google.com/group/puppet-users.
For more options, visit https://groups.google.com/groups/opt_out.