On Oct 5, 4:40 pm, Craig White <craig.wh...@ttiltd.com> wrote: > I suspect that I must be missing something here but it seems rather obvious > to me that in this specific example... > > require => Package["git"]
That would work if Puppet was attempting to use Git (in Matthias' example) and LibVirt (in my example) during the evaluation of it's catalog, but it's not. Puppet is essentially failing with a Parse error. It's the same as trying to "include" a CPAN module in Perl when it's not installed, or link against a C library that doesn't exist. The Agent has a catalog with containing a native type of Git and there's no Git installed on the Agent. We've got providers that use underlying system functionality (Git/ LibVirt) but that functionality gets installed by Puppet - bit of a chicken and egg. Personally I don't want Git/LibVirt installed on every machine in my estate just in case my nodes might use one of these user defined types. > would mean that git is installed first and then it should just work. > > As for 'fail' and continue on, that's clearly not the puppet way and any > tolerance of failures seems inappropriate on just about any level. I agree it's not perfect, for this problem there's a number of less than perfect solutions, but failing in the catalog evaluation would at least give you a full report on the first Puppet run and simplify your manifests from strange conditional logic (like mine have at the moment). I'd be very interested in other people's approaches for user defined types based on Puppet installed prerequisites. -Luke -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.