Creating Your Own Resource Registry for CloudFormation
In the previous chapter, we managed non-AWS resources using CloudFormation’s custom resource. For a very long time, this was the only way to manage external resources and services, and CloudFormation was in a difficult place compared to its main competitor, Terraform.
The notion of provisioners allows Terraform to implement infrastructure on any cloud or service provider that has an API. The extensibility of Terraform was one of the strongest arguments in favor of Terraform versus CloudFormation.
To stay competitive, AWS developed the CloudFormation registry, a centralized place where CloudFormation users can store their own resource types, modules, and hooks.
In this chapter, we will set up CloudFormation to use third-party public extensions through our AWS account. Later, we will develop our own private registry that implements a capability to create custom databases in the RDS instance using CloudFormation, just...