【问题标题】:How to do cross-application with serverless AWS如何使用无服务器 AWS 进行跨应用程序
【发布时间】:2020-09-17 20:34:54
【问题描述】:

我在 AWS 中有两个不同的应用程序,由两个无服务器配置文件部署。 在第一个中,我需要从第二个的 DynamoDB 中读取数据。

serverless.yml n°1:

service:
  name: stack1
app: app1
org: globalorg

serverless.yml n°2:

service:
  name: stack2
app: app2
org: globalorg

如果我将 2 个服务放在同一个应用程序中,我可以在 iamRoleStatements 中使用这样的一行访问第二个服务:

Resource:
    - ${output::${param:env}::stack2.TableArn}

但如果它们不在同一个应用程序中,我在尝试部署时会出现“找不到服务”错误。 我该如何进行这种跨应用程序通信? 谢谢

【问题讨论】:

    标签: node.js amazon-web-services amazon-cloudfront serverless-framework aws-serverless


    【解决方案1】:

    您需要提供表格的实际 ARN,因为此堆栈不是您的应用程序的一部分,您无法引用其组件。试试这样的

    custom:
      table: 
        tableArn: "<insert-ARN-of-resource-here>"
    
    IamRoleStatements:
          Resource: ${self:custom.table.tableArn}
    

    【讨论】:

      猜你喜欢
      • 2019-05-28
      • 2017-10-22
      • 2018-05-24
      • 1970-01-01
      • 2017-09-08
      • 2021-10-19
      • 1970-01-01
      • 2017-08-17
      • 2019-09-23
      相关资源
      最近更新 更多