On 06/30/2012 07:30 AM, Luke Baker wrote: > I've created a couple of custom providers and types, both of which > rely on a particular ruby gem in order to function. How should I go > about ensuring the gem dependency on the puppet clients before puppet > syncs the plugins (the broken 'require' in the provider will cause > puppet to exit during a run)?
Tough problem. AFAIK, ordinarily puppet does the pluginsync before anything else, always, so as to make your providers available before the catalog is run. Therefor, your dependencies cannot easily be solved from within the catalog. Look at how native providers deal with this. E.g., there are user providers for various platforms that will just note that they cannot run in the given environment, without making a fuss about it. What I get among others: debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/dscl does not exist Of course, I'm not really sure what puppet does with your catalog if there are no working providers for some of the types you use, but I'd expect it to fail the respective resources only, not the whole run. HTH, Felix -- 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.