fix(cloudfront-origins): add region-aware naming for VPC Origins to prevent multi-region collisions #35338
  Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
Issue # (if applicable)
Closes #34799.
Reason for this change
VPC Origins are global AWS resources that require unique names across regions. When deploying identical CloudFront stacks with VPC Origins to multiple regions in the same AWS account, the second deployment fails with "Another vpc origin with the same name already exists within the aws account" because the CDK's
Names.uniqueResourceName()function doesn't include region information in name generation.This prevents users from deploying common multi-region CloudFront architectures where identical stacks are deployed across regions for redundancy or geographic distribution.
Description of changes
Enhanced VPC Origin name generation to conditionally include region suffix when stack environment is resolved, following established CloudFront patterns:
@aws-cdk/aws-cloudfront:vpcOriginRegionAwareName(default: false for backward compatibility)Name generation examples:
StackDistributionOrigin1VpcOriginB6F753F8StackDistributionOrigin1VpcOriginB6F753F8-us-east-1Breaking change: Enabling the feature flag will cause VPC Origin resource replacement in existing stacks with resolved environments. This is expected behavior to achieve unique naming across regions.
Describe any new or updated permissions being added
N/A - No IAM permissions or resource access changes. This is purely a resource naming enhancement.
Description of how you validated changes
integ.vpc-origin.jstest passes without changes (backward compatibility confirmed)integ.vpc-origin-multi-region.tstest to validate unique naming across regionsChecklist
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license