Amazon web services AWS Cloudformation嵌套函数(拆分、选择、联接、引用)

Amazon web services AWS Cloudformation嵌套函数(拆分、选择、联接、引用),amazon-web-services,networking,cloud,amazon-cloudformation,Amazon Web Services,Networking,Cloud,Amazon Cloudformation,我正在努力做到以下几点: 获取用户在参数中设置的CIDR块 将CIDR除以“.”以获得单个数字 加入CIDR[0],CIDR[1],“4.0/24” 我提出了以下函数: "CidrBlock": { "Join": [ ".", [ { "Select": [

我正在努力做到以下几点:

  • 获取用户在参数中设置的CIDR块
  • 将CIDR除以“.”以获得单个数字
  • 加入CIDR[0],CIDR[1],“4.0/24”
  • 我提出了以下函数:

    "CidrBlock": {
                    "Join": [
                        ".",
                        [
                            {
                                "Select": [
                                    "0",
                                    {
                                        "Split": [
                                            ".",
                                            {
                                                "Ref": "2CIDR"
                                            }
                                        ]
                                    }
                                ]
                            },
                            {
                                "Select": [
                                    "1",
                                    {
                                        "Split": [
                                            ".",
                                            {
                                                "Ref": "2CIDR"
                                            }
                                        ]
                                    }
                                ]
                            },
                            "16.0/24"
                        ]
                    ]
                },
    
    但此操作失败,出现以下错误:

    属性CidrBlock的值必须是字符串类型

    我在网上找不到任何我想做的事情的例子


    有人知道上面的函数有什么问题吗?或者有人可以建议一种替代方法,使用VPC的CIDR构建每个子网的CIDR吗?

    可能问题在于“加入”不是一个函数。“Fn::Join”是。

    我也尝试过该Join的简化版本,它有相同的问题:
    “CidrBlock”:{“Join”:[”,[{“Ref”:“2vpccidrfix”},“0.0/16”]},
    Join是否返回字符串?有没有办法测试这些函数输出的值?