首页 > 解决方案 > 如何在新的 Cloudformation 模板中引用 Cloudformation 资源?

问题描述

我有两个 Cloudformation 文件,我想在另一个模板中引用已经从一个模板创建的资源。例如:在第一个中,我创建了一个 ECS 集群。在第二个中,我想引用这个集群并在其中构建一个服务。我该怎么做?

标签: amazon-web-servicesreferenceamazon-cloudformationamazon-ecs

解决方案


为此,您必须从第一个模板中导出堆栈输出值。大概这将是 ECS 集群名称和/或其 arn:

MyCluster:
   Type: AWS::ECS::Cluster
   Properties: 
    #....

Outputs:
  MyClusterName:
     Value: !Ref MyCluster
     Export:
        Name: ECSClusterName

然后在第二个模板中,您将使用ImportValue来引用导出的输出:

MyESSService:
   Type: AWS::ECS::Service
   Properties: 
     Cluster: !ImportValue ECSClusterName

推荐阅读