问题标签 [troposphere]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-web-services - Troposphere 将 S3 LifecycleRule 添加到类 LifecycleConfiguration
方法签名:我尝试以一些不同的方式更改实现,但没有帮助。
测试实施
错误签名
python - 使用对流层形成云,如何将“发射时传播”添加到标签
我正在使用 python 模块对流层在我的云形成模板中生成标签。当前脚本生成:
但我需要生成
适用的脚本部分是:
python - 如何使用对流层将一组 RecordSet 添加到 Cloud Formation?
我正在使用 python 模块对流层来创建我的云形成模板。其中大部分是完整的,但我似乎对如何使用 RecordSets 方法/函数为负载均衡器创建我的 DNS 条目感到困惑。本节的输出应该如下所示:
我开始了:
但是我不清楚应该如何输入 RecordSets 值。
我想我可以直接用
只需将 json 放在适当的位置,但这似乎有点像滥用对流层的最初目的。
更新:放入 json 会导致此错误
AttributeError:AWS::Route53::RecordSet 对象不支持属性 RecordSets
然后我尝试了这个:
未找到 HostedZoneId
python - 在 python 中,Jinja2 模板在双引号前返回一个反斜杠,我需要删除它
我的 jinja2 模板中的一行需要返回
将上述内容放入模板返回
我尝试创建一个变量
并将模板设置为
但结果仍然在 {{DQ}} 变量前面放置一个反斜杠
我还尝试输入一个唯一的字符串 %%%DQ%%% ,然后获取结果,然后进行字符串替换,但它仍然给了我反斜杠。
如何获得我想要的结果?
更新:我很抱歉。事实证明,返回转义引号的不是 jinja2 模板。我稍后在脚本中调用:
正是对 Base64 和/或 Join 的对流层模块的调用导致了问题并插入了转义。
进一步测试明确表明,是 Base64 进行了转义。
python - 在 python 模块对流层中,我收到错误“AttributeError:‘模块’对象没有属性‘EBSBlockDeviceMapping’”
我正在遵循已编写的其他一些代码的示例。有问题的代码如下所示:
python-2.7 - AWS CloudFormation 使用对流层在 s3bucket 中添加条件
以下代码正在工作EC2
,它正在输出中添加条件语句,但S3
它不生成条件语句。我可以手动添加此语句以使其工作,但这有很多缺点。
OUT-PUT-RESULT 此结果在 S3 模板部分中缺少条件语句
python - 如何将扩展策略添加到具有对流层的 cloudformation 中?
我创建了一个 python 对流层脚本,总体上运行良好。我刚刚添加了一段新代码,以将策略添加到自动缩放组以发出警报。
代码如下所示:
错误是:
回溯(最后一次调用):文件“inPowered.py”,第 395 行,在 tintScaleDown.AutoScalingGroupName(Ref("tintASG")) 文件“ /usr/lib/python2.7/site-packages/troposphere/init .py ",第 79 行,在getattr中 引发 AttributeError(name)
参考应该已经建立在这一行:
CloudFormation 脚本的部分应如下所示:
建议?
json - 试图将参数从主模板传递给子模板
我正在尝试将列表参数从主模板传递到子模板,但是我遇到了两个错误。这些是我在主模板上的当前参数。
当传递给子模板时,它们在同一模板上的此方法中被引用。
在子模板上,它们的声明完全相同。
并且它们在子模板中的此方法中被引用。
这是模板的另一部分。
当我尝试在主模板上使用 fn::join 时,它说
“模板验证错误:模板错误:每个 Fn::Join 对象都需要两个参数,(1) 字符串分隔符和 (2) 要连接的字符串列表或返回字符串列表的函数(例如 Fn:: GetAZs) 加入。”
当我不在主模板上使用 fn::join 时,错误是
属性参数的值必须是具有字符串(或简单类型)属性的对象
无论我是否在子模板中的相同参数上有 fn::join。
两个模板都可以在这里找到: https ://github.com/slimg00dy/Troposphere-CloudformationTests
python - 对流层,将堆栈的输出作为输入传递给另一个
假设我定义了两个堆栈,A 和 B。
在堆栈 A 中,我定义了一个 VPC 和一个子网,并输出了该子网的 ID
在堆栈 B 中,我希望将这些实例置于堆栈 A 中定义的子网中。我该如何实现呢?
python - 如何有条件地传递对流层对象属性?
我正在使用Troposphere构建 CloudFormation 堆栈,并且希望ConnectionSettings
仅在我的配置中设置了 Elastic Load Balancer 属性时才传递它,否则我不想指定它。
如果我将其设置为默认值,None
则会收到有关该值不是预期类型的错误troposphere.elasticloadbalancing.ConnectionSettings
。
我宁愿尽量避免在调用中设置显式默认值,因为它可能会覆盖其他设置。
理想情况下,我希望能够向现有对象添加属性,例如:
有没有办法做到这一点?
更新:我使用隐藏的Troposphere
方法实现了它,该方法有效,但我不满意:
我仍然对不涉及从模块外部使用私有方法的解决方案感兴趣。