Editor’s Note: The resources of Fugue are a work in progress and can be expected to change as we refine and expand our AWS service coverage. For any questions about resources not identified here or resources in general feel free to reach out to us through email@example.com.
How does Fugue handle naming resources in AWS? The answer varies, but there is a rule. Fugue derives resource names for you based on your composition when possible. However, if your application is likely to interact with a resource directly, you must specify a name.
Resources Which Fugue Names¶
If a resource is something that you should only modify through Fugue, its name is a generated GUID, which guarantees that the resource is uniquely named. This makes the resource easier for the Conductor to track precisely. In these cases, the binding name in Ludwig usually appears as a Name tag.
- AutoScaling Groups (ASGs)
- Security Groups (SGs)
Resources Which You Name¶
If a resource is one that you are likely to interact with in application
code, a name for it is required in its Standard Library type. For
example, this can take the form of a field like
loadBalancerName. In these cases, Fugue uses the name value provided
in the Ludwig (NOT the Ludwig binding name) as the resource name.
These resources are typically required to have names that are unique -
in other words you can’t have two DynamoDB tables with the same name.
- DynamoDB table (
- S3 bucket (
Most Other AWS Resources¶
The most common category of resources within AWS are those resources that don’t have specific names. These resources are identified using Amazon-generated names. When tags are available, we store name information within the tags.
Items to note¶
- While Ludwig binding names are associated with resource metadata
whenever possible (usually via tags), Fugue never uses the Ludwig
binding name directly as the resource name. The resource name is
always a generated GUID, or a user-provided name when a
nameor similar field is in a resource’s Standard Library type.