Sometimes we need an infrastructure to connect, use or be used by a resource that cannot be created with our infrastructure stack. It could be that such a resource was created manually, was created in another stack, or it was created by another AWS account.
External Resource lets us specify such a resource in Altostra Cloud Designer so we can connect other resources to it. When deploying a stack with an External Resource, all appropriate permissions, triggers, etc are created, but without recreating that resource.
When a stack with an External Resource is deleted, the External Resource remains unharmed and only the permissions and triggers created by that stack are deleted.
The External Resource contains identification fields (usually just one) that unambiguously identify the resource. The resource must exist prior to the deployment of a stack that declared it. It is possible to use environment-parameters to specify the External Resource identifier to enable different resources to serve the same role in different environments.
Currently, the following resources are supported as External Resource in Altostra Cloud Designer:
- S3 Buckets
- SNS Topics
- SQS Queues (including FIFO queues)
- DynamoDB Table
- Aurora Cluster
- RDS Instance
- Auth0 Application (only supported as an External Resource)
- Cognito User Pool
- EventBridge Event Bus
- KMS Key
- OpenSearch Domain (only supported as an External Resource)
Import external resources to your Altostra project
To import an External Resource in the designer, select the resource and navigate to the Import tab.
If the resource is only supported as an External Resource, the corresponding form for creation will automatically open as such by default.