Each recipe is really some combination of these:
- Global recipe - will always do the same exact thing regardless of what domains are provisioned here
- per-domain recipe - will do some things particular to the domain provisioned
The recipes' templates should be allowed to be broken up into these two sections explicitly.
Example:
templates/$recipe.tt -> treated like a makefile fragment as we do now, run for every domain
templates/$recipe.global.tt -> builds a global target which won't be run by subsequent domains, but that the $recipe.tt depends on IF it exists
This will simplify writing the global section, as we won't have to worry about idempotency.
Each recipe is really some combination of these:
The recipes' templates should be allowed to be broken up into these two sections explicitly.
Example:
templates/$recipe.tt -> treated like a makefile fragment as we do now, run for every domain
templates/$recipe.global.tt -> builds a global target which won't be run by subsequent domains, but that the $recipe.tt depends on IF it exists
This will simplify writing the global section, as we won't have to worry about idempotency.