The prototype pattern builds static defaults from input variables for other modules to consume and extend. It usually exports configuration rather than creating infrastructure resources. A tagging prototype centralizes customer, business-unit, cost-center, and automated metadata so resources receive consistent values. section 3.4
Use the pattern when configuration should be copied consistently across resources:
- Store shared metadata or other common configuration in one module. section 3.4
- Reference the exported values from resource modules instead of hardcoding repeated strings. section 3.4
- Choose it when predictable shared attributes matter more than resource-specific construction; combine it with factory or builder patterns when needed. section 3.6
Standard tags for a server
A StandardTags module returns a copy containing customer, automated, cost-center, and business-unit values. A server configuration consumes those values as labels, allowing common metadata to evolve in one place.
