On Fri, 2011-05-13 at 09:09 -0400, Greg Blomquist wrote:
On 05/12/2011 01:11 PM, Mark McLoughlin wrote:
- When a template is built, the puppet manifests for the services are included in a standard location and asserted with the default parameters. This causes the packages available for all services to be installed.
Not sure I understand this part. Does this mean that puppet has to be executed at image build time?
Yes, with the default parameters - i.e. with $enabled = false so that the packages are installed, but not configured
Or that there still is a packages reference in the template somewhere that pulls in the right packages?
That's the bit I'm trying to avoid - the template author shouldn't have to list the packages required in two different places (think DRY) and the puppet manifest is the natural place
In your example, would the template still explicitly call out that there's a requirement for the postfix package to be installed? Or, would it simply rely on the fact that the puppet script pulls in the package? If the latter, then doesn't this require puppet to run at image build time to fetch the package? Is it even possible to kick off puppet at image build time?
It should be, but I haven't checked whether image factory supports it yet. Isn't puppet the perfect way to describe the configuration of a template? i.e. rather than kickstart %post scripts?
Cheers, Mark.