amazon-web-services - 如果资源创建已存在于无服务器中,如何忽略资源创建

标签 amazon-web-services aws-lambda aws-cloudformation serverless

在配置资源配置时,有什么方法可以使用,以便无服务器在资源已经存在的情况下不会抛出任何错误。

例如。如果以下资源已存在,请不要抛出此错误。

错误:发生错误:PaymentQueue - dev_ payment_cron_queue 已存在于堆栈中

resources:
  Resources:
    PaymentQueue:
      Type: "AWS::SQS::Queue"
      Properties:
        QueueName: ${self:provider.stage}_payment_cron_queue
        VisibilityTimeout: 40

最佳答案

遗憾的是,纯 CloudFormation (CFN) 没有这样的方式,因为这不是 CFN(或事实上的 Terraform)的设计工作方式。从CFN的角度来看,给定的资源存在并由CFN管理,或者根本不存在。没有中间立场。

如果您的资源已存在,则必须 import它交给 CFN,以便由 CFN 管理。或者,您必须创建 custom resource以 lambda 函数的形式。该函数将根据现有资源执行您想要的任何操作,包括检查它是否存在。

关于amazon-web-services - 如果资源创建已存在于无服务器中,如何忽略资源创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67769274/

相关文章:

node.js - 在 AWS Beanstalk 上使用 node.js 监听 SSL

amazon-web-services - 角色切换在控制台 (AWS GUI) 中有效,但在 Ansible 脚本中无效

aws-lambda - 在 serverless.yaml :can not read a block mapping entry; a multiline key may not be an implicit key 上出现以下错误

amazon-web-services - Cloudformation复杂参数文件

amazon-web-services - 在 Cloudformation 中引用属性的正确方法是什么?

javascript - AWS Lambda 错误 : "Cannot find module '/var/task/index'"

amazon-web-services - 如何使用 cdktf 在运行时获取所有可用区?

python - 模块初始化错误: 'module' object has no attribute 'read_dotenv'

amazon-web-services - 无法以编程方式调用 AWS lambda

amazon-web-services - AWS Pipeline部署cloudformation