部署Serverless应用到LocalStack时无法读取CloudFormation栈
部署Serverless应用到LocalStack时CloudFormation栈引用失败
场景说明
- 存在两个
serverless.yml文件:- 基础设施栈:包含DynamoDB等资源,可正常部署到LocalStack
- 业务栈:通过CloudFormation输出引用基础设施栈的资源,核心配置片段如下:
MY_DYNAMODB_TABLE: !Select [1, !Split ['/', '${cf:${self:custom.infrastructureStack}.MyDynamoDBArn}']]
问题现象
- 该配置在AWS正式环境部署完全正常
- 部署到LocalStack时触发错误:
- Cannot resolve variable at "provider.environment.MY_DYNAMODB_TABLE.Fn::Select.1.Fn::Split.1": Value not found at "cf" source,
部署环境与日志信息
- 通过CLI启动LocalStack,执行部署命令:
sls deploy --stage local - LocalStack日志显示
cloudformation.ListStackResources请求返回200状态码:2023-04-26T12:38:39.871 INFO --- [ asgi_gw_0] localstack.request.aws : AWS cloudformation.ListStackResources => 200
需要排查:明明基础设施栈已部署成功,且CloudFormation API返回正常,为何LocalStack无法解析该CloudFormation引用?
内容的提问来源于stack exchange,提问作者zlZimon
相关产品推荐
相关产品推荐

