【问题标题】:Changing allotted values on parameters based on previously selected values on the parameters CloudFormation根据先前在参数 CloudFormation 上选择的值更改参数的分配值
【发布时间】:2022-01-11 21:09:44
【问题描述】:

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

例如:

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

parameter2 分配的值是 1、2、3 和 4。

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

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

如何在 CloudFormation 中做到这一点?

提前致谢。

【问题讨论】:

    标签: amazon-web-services amazon-cloudformation


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      您也许可以使用ConditionsConditions 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]]
      

      【讨论】:

      • 他专门询问了相互依赖的参数
      • 好吧,Fn::If 数组不是参数,但它确实会根据参数值动态变化。
      • 是的,但那是为了资源。你不能对参数这样做
      猜你喜欢
      • 1970-01-01
      • 2016-06-27
      • 2013-03-17
      • 1970-01-01
      • 2014-02-21
      • 2017-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多