amazon-web-services - 使用 AWS CloudFormation 更新 SNS 订阅的替代方案

标签 amazon-web-services ansible aws-cloudformation aws-cli

有一个 AWS CloudFormation 堆栈定义 SNS 主题和 SNS 订阅。在另一个 Ansible 任务中,我想更新另一个订阅,但这是不可能的,因为 SNS 订阅无法更新。

使用Ansible执行CloudFormation。有哪些替代方案?

  1. 使用 Ansible 加入 AWS CLI,然后执行包含 AWS CLI 内容的播放?
  2. 使用 botoAnsible 中创建自定义模块?但这会很困难,因为我应该存储 SNS ARN 并将其提供给自定义模块。

最佳答案

Ansible v2.0 添加了对 sns_topic 模块的支持。您可以提供要聚合的现有 SNS 主题的名称或 ARN。您可能还希望将 purge_subscriptions 设置为 False,这样任何现有订阅都不会被删除。

- name: Update SNS topic subscriptions
  sns_topic:
    name: "my-topic"
    purge_subscriptions: False
    subscriptions:
      - endpoint: "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="88fbe7e5eda5ede5e9e1e4c8edf0e9e5f8e4eda6ebe7e5" rel="noreferrer noopener nofollow">[email protected]</a>"
        protocol: "email"

http://docs.ansible.com/ansible/sns_topic_module.html

关于amazon-web-services - 使用 AWS CloudFormation 更新 SNS 订阅的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32883337/

相关文章:

csv - 使用 AWS Data Pipeline 在 CSV/TSV 文件中创建列标题?

spring - 如何使用 AWS CodeDeploy 和/或 CloudFormation 配置 application.properties?

amazon-web-services - NPM Verdaccio - 设置上行链路到自己的远程服务器

ansible - vars 文件夹中的 main.yml 文件在 ansible 角色中的用途是什么?

linux - Ansible ec2_vpc_igw VPC 不存在

aws-cloudformation - Cloudformation 托管服务会定期重新启动,并且应用程序日志会被清除

amazon-web-services - 使用 Init 中的更新文件更新 CloudFormation 堆栈

amazon-web-services - AWS ECS代理在启动时找不到/etc/resolv.conf,也无法将实例添加到ECS集群

amazon-web-services - 如何使用 Jenkinsfile 创建 EC2 实例

Ansible 打印创建的主机