cloud-foundation-fabric/modules/cloud-config-container
Ludovico Magnocavallo 6941313c7d
Factories refactor (#1843)
* factories refactor doc

* Adds file schema and filesystem organization

* Update 20231106-factories.md

* move factories out of blueprints and create new factories  README

* align factory in billing-account module

* align factory in dataplex-datascan module

* align factory in billing-account module

* align factory in net-firewall-policy module

* align factory in dns-response-policy module

* align factory in net-vpc-firewall module

* align factory in net-vpc module

* align factory variable names in FAST

* remove decentralized firewall blueprint

* bump terraform version

* bump module versions

* update top-level READMEs

* move project factory to modules

* fix variable names and tests

* tfdoc

* remove changelog link

* add project factory to top-level README

* fix cludrun eventarc diff

* fix README

* fix cludrun eventarc diff

---------

Co-authored-by: Simone Ruffilli <sruffilli@google.com>
2024-02-26 10:16:52 +00:00
..
__need_fixing Factories refactor (#1843) 2024-02-26 10:16:52 +00:00
coredns Factories refactor (#1843) 2024-02-26 10:16:52 +00:00
cos-generic-metadata Factories refactor (#1843) 2024-02-26 10:16:52 +00:00
envoy-sni-dyn-fwd-proxy Factories refactor (#1843) 2024-02-26 10:16:52 +00:00
envoy-traffic-director Factories refactor (#1843) 2024-02-26 10:16:52 +00:00
mysql Factories refactor (#1843) 2024-02-26 10:16:52 +00:00
nginx Factories refactor (#1843) 2024-02-26 10:16:52 +00:00
nginx-tls Factories refactor (#1843) 2024-02-26 10:16:52 +00:00
simple-nva Factories refactor (#1843) 2024-02-26 10:16:52 +00:00
.gitignore Refactor the onprem module (#55) 2020-04-06 16:27:13 +02:00
README.md Move squid to __need_fixing (#1936) 2023-12-19 14:27:37 +00:00

README.md

Instance Configuration via cloud-config

This set of modules creates specialized cloud-config configurations, which are designed for use with Container Optimized OS (the onprem module is the only exception) but can also be used as a basis for other image types or cloud providers.

These modules are designed for several use cases:

  • to quickly prototype specialized services (eg MySQL access or HTTP serving) for prototyping infrastructure
  • to emulate production services for performance testing
  • to easily add glue components for services like DNS (eg to work around inbound/outbound forwarding limitations)
  • to implement cloud-native production deployments that leverage cloud-init for configuration management, without the need of a separate tool

Available modules

Using the modules

All modules are designed to be as lightweight as possible, so that specialized modules like compute-vm can be leveraged to manage instances or instance templates, and to allow simple forking to create custom derivatives.

To use the modules with instances or instance templates, simply set use their cloud_config output for the user-data metadata. When updating the metadata after a variable change remember to manually restart the instances that use a module's output, or the changes won't effect the running system.

TODO

  • convert all xxx_config variables to use file content instead of path