我想迭代一个ansible playbook的库存文件中定义的vars。实际上,在我的库存中,我定义了一些变量来放入.ini 目标主机上的文件。我的库存文件中有类似的内容:
[myhost:vars]
VAR1=VALUE1
VAR2=VALUE2
我试过这样的事情:
- name: fill ini file with variables
ini_file:
path: "{{ myfile.ini }}"
section: vars
option: "{{ item.key }}"
value: "{{ item.value }}"
create: yes
with_dict: "{{ hostvars[inventory_hostname] }}"
myfile.ini应该在最后看起来像这样:
[vars]
VAR1=VALUE1
VAR2=VALUE2
问题是:我正确地拥有'VAR1'和'VAR2',但所有主机的Ansible变量。我想只迭代那些定义的那些
清单(inventory_vars
?不存在)。
任何帮助将不胜感激:)
答案 0 :(得分:1)
无法确定是否设置了某个事实/变量,或者按原点过滤它们。
相反,您可以在广告资源中定义字典(JSON):
const editorTiker = new PIXI.ticker.Ticker().add((delta) => {
document.title = `(mX: ${mX}) (mY: ${mY}) | (dX: ${~~dX}) (dY: ${~~dY})`;
if(scrollAllowed){
let scrolled = false;
(mX<20 && (dX-=scrollF) || mX>sceneX-20 && (dX+=scrollF)) && (scrolled=true);
(mY<20 && (dY-=scrollF) || mY>sceneY-20 && (dY+=scrollF)) && (scrolled=true);
scrolled && (scrollF+=0.01) || (scrollF=0.01) ;
}
$gameMap._displayX += ((dX-$gameMap._displayX)/scrollSpeed);
$gameMap._displayY += ((dY-$gameMap._displayY)/scrollSpeed);
});
并在迭代器中使用它:
[myhost]
localhost
[myhost:vars]
my_dict={"VAR1": "VALUE1", "VAR2": "VALUE2"}
请注意,在您的示例中with_dict: "{{ my_dict }}"
被错误地缩进。