gpt4 book ai didi

aws-cloudformation - Cloudformation 堆栈可以知道它是否正在创建或更新吗?

转载 作者:行者123 更新时间:2023-12-03 07:45:27 26 4
gpt4 key购买 nike

我正在尝试创建一个资源,其属性之一不是常量值。听起来像是堆栈参数的工作,只不过它是一个在某些情况下可以采用 Ref 函数形式的字符串。具体来说,如果是初始创建,我希望参数值是对另一个资源的 Ref,如果是后续更新,我希望它是对堆栈参数的 Ref。这可能吗?是否有一个函数或伪参数(例如 AWS::CurrentAction)可以采用 createupdate 等值,或者类似的值?

最佳答案

我认为这是应该避免的事情,但如果您找不到任何其他替代方案,我有一个解决方法。

这是一个带有存储桶名称的示例:

Parameters:
ExternalBucketName:
Type: String
Default: ''

Conditions:
ExternalBucketNameSpecified:
!Not [!Equals [!Ref ExternalBucketName, '']]


Resources:
CFManagedBucket:
Type: AWS::S3::Bucket

SomeResource:
Type: AWS::Resource::XYZ
Properties:
BucketName: !If [ExternalBucketNameSpecified, !Ref ExternalBucketNameSpecified, !Ref CFManagedBucket]

当需要使用此堆栈创建的存储桶时,只需将 ExternalBucketName 设置为空,堆栈就会自动适应。

关于aws-cloudformation - Cloudformation 堆栈可以知道它是否正在创建或更新吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48875042/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com