我有一个依赖于 Prisma 模型的 NodeJS 后端,我想将其部署到我的生产数据库中。我的 CI/CD 管道如下所示:Github Actions 使用 webpack 构建代码,将捆绑包上传到 S3,并调用 AWS CodeDeploy。
然后,AWS CodeDeploy 在部署后端的 EC2 服务器上执行脚本,以安装捆绑包并配置所有内容。这些 EC2 服务器是唯一可以访问数据库的服务器,因为数据库不允许任何非来自 EC2 服务器的连接。
这意味着我无法yarn prisma migrate deploy从 Github Actions 执行,因为数据库将不允许此类连接。
在我看来,我有三个选择:
yarn install运行yarn prisma migrate deploy. 出于安全原因不想这样做,它会在部署中引入额外的风险,并且会减慢部署速度。yarn prisma migrate deploy成捆绑包prisma,并在 EC2 服务器上执行。你有什么建议?从上面的选项中,我更喜欢选项 3,但我还没有找到方法,因为我只找到了编译 prisma 客户端的方法,但我认为这不是我想要的。
先感谢您!
我有一个 API,用于触发 AWS Lambda 作业。根据请求,API 使用InvocationType='Event'. 此后,我想定期轮询 AWS Lambda 作业是否已完成。
最适合我的架构的方法是将 Lambda 作业的标识符存储在数据库中,并定期检查作业是否完成及其输出是什么。但是,我无法找到如何做到这一点。
如何定期轮询 AWS Lambda 作业的结果,并在完成后查看输出?
我已经研究过使用InvocationType='RequestResponse',但这需要我存储未来,这是我无法在数据库中做到的。