根据先前在参数 CloudFormation 上选择的值更改参数的分配值

Changing allotted values on parameters based on previously selected values on the parameters CloudFormation

我正在制作 CloudFormation 模板。我有一种情况,我想根据先前选择的参数值动态更改参数分配值。

例如:

如果参数 1 分配的值为 True 和 False

参数 2 分配的值为 1、2、3 和 4。

如果选择参数 1,则参数 2 分配的值为 1、2、3 和 4,但如果选择参数 1,则参数 2 分配的值为 1 和 2。

我想要一个解决方案,当参数 1 选择 False 时,分配的值会自动更改。

如何在 CloudFormation 中执行此操作?

提前致谢。

不,那不可能。 CloudFormation 参数是静态的,您不能根据另一个参数修改一个参数的行为。

你或许可以使用 Conditions and Conditions Functions:

Parameters:
  MyParam:
    Default: false
    Type: String
    AllowedValues: [true, false]
Conditions:
  MyParamTrue: !Equals 
    - !Ref MyParam
    - true

然后里面的资源:

Attribute: Fn::If: [MyParamTrue, [1,2,3], [1,2]]