ansible - Ansible Jinja2 for 循环变量在“查找”中失去作用域
问题描述
在 jinja2 模板中,我再次迭代一个已经循环的字典值,该字典值是通过 ansible 任务使用 dict2items 设置的。这是按预期工作的。在 jinja2 'for' 循环中调用该变量有效,除非在文件查找中引用。这是预期的行为吗?如果是这样,我还能怎么做?
{% for filename in item.value.filenames %}
{{ item.value.filenames[filename] }} #works
{{ filename }} #works
{{ lookup('file', '/somedir/{{ item.value.filenames[filename] }}') }} #does not work, variable filename undefined
{{ lookup('file', '/somedir/{{ filename }}') }} #does not work, variable filename undefined
{% endfor %}
解决方案
推荐阅读
- python - ValueError: int() 以 10 为底的无效文字;试图从浮点数中提取整数
- terraform - 如何向外部发送资源模块的块
- file-upload - 无法将文件附件上传到 IIS 上的 phpBB3 论坛
- mongodb - MongoDB 更改流:我可以在更新/删除之前获得价值吗?
- vue.js - 双击样式为“-webkit-app-region:drag;”的元素 最大化窗口会导致“最大化”按钮不改变的错误
- spring-boot - Hystrix javanica缓存和JCache
- python - 无法在 Qt 设计器(macos)中显示自定义 PyQt5 小部件插件
- css - 如何在不使用 styleSheet 原生元素的情况下将 CSS 文件添加到 react-native 应用程序中
- discord.js - 如何创建命令创建角色 | 不和谐机器人
- python - 如何将输出写入csv