We have built up quite a collection of playbooks during the time we’ve been using ansible and I’m looking for ways to consolidate them, just to keep them under control as we still have plenty more we want to add.
I’ve not made use of tags yet but read up on it a bit and am thinking of organising things so that the tags we use are restricted to a small set with meanings that are understood by the team and are named around the lifecycle of the machines.
These are the tag names and meanings I’ve come up with so far.
create - steps to create a vm from a template, add to inventory
provision - this specialises a machine for a particular use adding packages and anything else need to support applications
update - updates applications to a specified version. This is how promoted builds will arrive on machines.
configure - changes to configuration. So if we switch database servers then we’d run ‘configure’ tags on app servers
check - report differences between defined configuration and current machine state
purge - remove applications and supporting packages
delete - remove virtual machine, remove from inventory
Is anyone else organising things in a similar way or have any relevant experience of working with tags in this manner?
Many thanks,
Jon