-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

> 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. :/

It would be nice if we would be able to determine the graph via one or
only a few query options. But unfortunately this varies from package
manager to package manager.

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.

Personally I think that the grouping issue is much more important and
would provide the basis on which we could build a faster automatic
dependency resolution. I simply don't see the importance of the proposed
feature over the grouping one. But this is a highly personal opinion and
is not related to your proposal. So ignore that paragraph... ;)

> Unresolved Issues:
> 
> This process becomes much more complicated if the user requests specific
> versions of packages, as installing package A may cause package B to get
> automatically upgraded. I believe dealing with this is beyond the scope of
> the requested feature.

yep.

Another issue: What do we do about dependency cycles? It's very likely
that we get dependency cycles through that, as users might have added a
manual dependency before which is the opposite dependency as the package
manager wants. So far this worked fine, but now it would raise problems.
However, I think this would simply lead to more proper infrastructure
code. yippie! :)

pete
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkyR5EoACgkQbwltcAfKi3+W+wCglLUHKPz7AWvU4FWM4pcuEIUl
ZS8AnipsJQiEUZfIqsjV+3bcGkvs9hjT
=FEgk
-----END PGP SIGNATURE-----

-- 
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.

Reply via email to