当我使用Pulumi创建S3存储桶时,会将随机后缀添加到指定的存储桶名称。我该如何避免呢?
import * as aws from "@pulumi/aws";
// Create an AWS resource (S3 Bucket)
const bucket = new aws.s3.Bucket("my-bucket");
// Export the name of the bucket
export const bucketName = bucket.id;
答案 0 :(得分:2)
对于S3存储桶的这种特定情况,Mikhail的答案是正确的。通常,此行为是由于Pulumi中的自动命名功能引起的。来自https://www.pulumi.com/docs/reference/programming-model/#autonaming:
默认情况下会添加此随机后缀,原因有两个。首先,它确保可以将程序的两个实例部署到同一环境中,而不会发生名称冲突的风险。其次,通过首先创建新资源,更新指向该资源的所有引用,然后删除旧资源,确保可以在需要时进行零停机时间替换。
可以通过在资源上显式设置一个name
属性(或在S3存储桶的情况下为bucket
)来针对每个资源覆盖此行为。
答案 1 :(得分:1)
您可以在参数中显式分配存储桶名称:
new aws.s3.Bucket("my-bucket", { bucket: "my-bucket" });