Peter Meier <[email protected]> writes:
>> Implementation proposal:
>
>> When applying a catalog, for each package resource, use the `generate` hook
>> to invoke the package manager in dry-run mode. Parse the output of that
>> call into a list of packages the provider would install or remove as
>> dependencies. Use that list to create puppet `require` edges to any package
>> resources in the catalog with a matching package name and the same
>> provider.
>
> at least with yum this will slow down package installation enormously
> and this is already one of the biggest bottle necks on yum-based systems. :/
You could always give them a nickle and suggest they buy a package managed
that didn't suck. ;) Alternately, there is no reason that yum *has* to be
used as the dependency resolver here.
After writing a parser for the inputs to yum, it wouldn't be that hard and
probably not that much maintenance burden, to either handle those in a helper
to puppet, or to inspect the yum database directly. FWIW.
[...]
> Another issue that is probably related to that proposal is the one to group
> package installations of packages that are in a dependency chain or that are
> totally unrelated. This would enormously improve package installation speed
> and probably also address the performance problems we get by querying for
> each package the package-manager for its dependencies.
That would be ideal; it would also resolve some of the apt complexities I have
worked around with dependencies like this:
package { "rt3.8": requires => Package["rt-3.8-database-postgresql"] }
That will implicitly install rt3.8, using my knowledge of the dependencies,
without first installing, then deinstalling, the sqlite backend.
So, um, I agree with Peter. Also with his caveats about relevance. ;)
Regards,
Daniel
--
✣ Daniel Pittman ✉ [email protected] ☎ +61 401 155 707
♽ made with 100 percent post-consumer electrons
--
You received this message because you are subscribed to the Google Groups
"Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-dev?hl=en.