Enable exclusion of baked-in playbooks#231
Conversation
Added another instance customization feature, which enables the ansible-init user to exclude the execution of playbooks baked-in to the image. Like user collections and playbooks, the playbooks to be excluded from execution are defined in metadata items, with the format: ``` ansible_init_xpb_(0,1,2,...)_name ```
|
Remind me why this is needed? If you don't want the functionality the baked-in playbooks provide, why would you use that image? Just make your own image with just ansible-init installed? |
|
We have a standard set of images used for our Azimuth appliances, and those images have the Zenith clients installed. However, when we use those images for appliances that are clusters of >1 machine, the Zenith clients start on all machines, and that leads to indeterminate behaviour (the user sees web console sessions to different machines caused by load balancing). Rather than creating an image for the machines where Zenith shouldn't execute, it seems easiest to simply not execute the associated playbooks. That means we can be sure we're always using compatible images in the appliance (because it is the same), and have the Zenith clients running on only one machine in the clustered appliance. We also use ansible-init for other purposes, and it would sometimes be useful to be able to disable those features for broadly similar reasons. |
Added another instance customization feature, which enables the ansible-init user to exclude the execution of playbooks baked-in to the image. Like user collections and playbooks, the playbooks to be excluded from execution are defined in metadata items, with the format: