Skip to content

How to Append Environment Name to All Resources Created by Amplify Backend #2451

Open
@anishniroula1

Description

@anishniroula1

Environment information

Hi Amplify Team,

Is there a way to automatically/manually append the environment name (e.g., -dev, -prod) to all resources created by Amplify in the backend, such as DynamoDB tables, S3 buckets, etc.?

If this is possible, could you provide guidance or documentation on how to implement it globally for all resources?

Thanks!

Describe the feature

Feature Request: Append Environment Name to All Resources Created by Amplify Backend

Description:
Introduce a feature in Amplify to automatically append the current environment name (e.g., -dev, -prod, -test) to all resources created by the Amplify backend (e.g., DynamoDB tables, S3 buckets, Lambda functions). This would help in:

Resource Identification: Easily distinguish resources across different environments in the AWS Management Console.
Avoiding Conflicts: Prevent resource name conflicts when using multiple environments in the same AWS account.
Expected Behavior:
Amplify should either:

Automatically append the environment name to all resource names.
Allow a global configuration option to enable/disable this behavior.

Use case

In a multi-environment setup (e.g., dev, test, prod), managing backend resources across environments becomes challenging when resources don’t include environment-specific identifiers in their names.

For example:

Without the environment name, DynamoDB tables or S3 buckets might have generic names like TableName-NONE, making it difficult to distinguish which resource belongs to which environment.
This could lead to accidental resource usage or conflicts between environments when multiple environments share the same AWS account.
By appending the environment name (e.g., -dev, -prod) to all resources:

Developers can easily identify resources in the AWS Management Console or CLI.
It avoids naming conflicts, especially when managing multiple environments in the same AWS account.
It improves clarity and organization for resource tracking and debugging.
This feature would streamline multi-environment development and reduce errors in resource management.

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature-requestNew feature or requestneeds-product-inputNeeds non-technical requirements or direction to proceed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions