首页 > 解决方案 > 在 AWS CDK 中使用 Fn.conditionIf 返回 Object 而不是 String

问题描述

我想做如下的事情:

ElasticsearchClusterConfigProperty property = Fn.conditionIf(useProdConfigCondition.getLogicalId(), ElasticsearchClusterConfigProperty.builder()
        .instanceCount(10)
        .instanceType("m5.large.elasticsearch")
        .dedicatedMasterEnabled(true)
        .dedicatedMasterCount(3)
        .dedicatedMasterType("c5.large.elasticsearch")
        .zoneAwarenessEnabled(true)
        .zoneAwarenessConfig(CfnDomain.ZoneAwarenessConfigProperty.builder()
                .availabilityZoneCount(2)
                .build())
        .build(),
ElasticsearchClusterConfigProperty.builder()
        .instanceCount(2)
        .instanceType("m5.large.elasticsearch")
        .dedicatedMasterEnabled(false)
        .dedicatedMasterCount(3)
        .build()
);

即根据条件选择elasticsearchConfigProperty。有没有办法做到这一点?使用 Fn.IfCondition,我们可以返回一个字符串,但不能返回对象。

标签: amazon-cloudformationaws-cdk

解决方案


推荐阅读