如何解决如何获得 ALB 的 ARN
我尝试在 TypeScript 中通过 CDK 创建一个 alb。但是当执行 'cdk deploy' 时,我遇到了以下代码的错误。我如何获得 ALB 的 ARN?
AlbStack Failed: Error [ValidationError]: Template error: resource alb does not support attribute type Arn in Fn::GetAtt
constructor(scope: cdk.Construct,id: string,props?: cdk.StackProps) {
super(scope,id,props);
const target_group = new elbv2.CfnTargetGroup(this,'targetgroup',{
~
});
const alb = new elbv2.CfnLoadBalancer(this,'alb',{
~
});
new elbv2.CfnListener(this,'alblistener80',{
defaultActions: xxx,loadBalancerArn: cdk.Fn.getAtt(alb.logicalId,'Arn').toString(),// <----- Here
port: 80,protocol: 'HTTP',});
}
解决方法
基于 CloudFormation docs,{!! $message->message !!}
返回 Arn,而不是 GetAtt。因此,如果您想使用 Ref
,您应该使用 CDK 的 ref:
Ref 内在函数返回指定参数或资源的值。
因此,您可以尝试:
cdk.Fn
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。