On Friday, November 21, 2014 2:47:05 PM UTC-6, Eric Sorenson wrote:

 

> 5 - Why not use a metapackage which has no content of its own, but has 
> requirements on specific versions of the other 'real' packages that contain 
> the actual programs? 
>         • Avoiding a coordinated major version ship across all projects… 
> We're changing the layout on the filesystem (moving to opt) for a few 
> reasons, including shipping our own stack without conflicting with system 
> libraries.



Not buying it.  An AIO package does not inherently avoid these sorts of 
problems (i.e. what if I have both 'facter' and 'puppet-aio' packages 
installed at the same time?), and a metapackage approach is not inherently 
any more susceptible to them (it's all about which packages are managed).


        • We want to simplify the endpoint install experience for users. A 
> single endpoint puppet agent package is arguably among the simplest 
> possible deployment mechanisms. 
>


Yay for simple installation.  A metapackage achieves that, too.

 

>         • Meta-package only solves the problem for agents with a package 
> manager that can do remote dependency resolution. We want the install 
> experience for agents to be excellent/seamless regardless of the platform 
> you are running, and be the same experience across the board. Users 
> installing a Solaris 10 agent package shouldn’t have a different experience 
> than users installing a Debian 7 agent package.



So?  You are committed to separate native packaging for a wide variety of 
systems anyway.  Why not make use of the features of those systems that 
have more capable package managers?

I really, really dislike AIO packages.  In fact, I tend to break them up 
when I can.  They do confer a greater level of control on packagers, but 
along with that comes considerably more responsibility and exposure, and 
considerably less user flexibility.  If anything needs changing in any 
component, the whole AIO needs to be updated.  Any flaw or vulnerability in 
any component is a flaw in the whole AIO.  The more components you bundle 
together, the worse it is, and it is particularly bad when you bundle 
third-party components.

It just doesn't have to be that way on systems that can support 
metapackages.  You can have your cake and eat it too: a metapackage 
provides for easy installation and update, and done right it provides for 
ensuring that a given installation has a tested and approved combination of 
components, but you still have the flexibility of managing components 
individually (possibly requiring the removing the metapackage but retaiing 
the component packages).

In the end, you'll of course do what you think best.  If it ends up being 
AIO packages across the board, then I simply won't use your packages.  What 
a shame.


John

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-dev/50155310-cda5-4384-b7d8-45ebe729449c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to