可能之前有人问过这个问题,但目前还找不到任何有用的东西。
我的任务是:
- name: Create folder if not exists
win_file:
path: '{{ folder }}'
state: directory
when: my_dir.stat.exists == false << this stat has been previously created
- Debug: msg"folder already exists"如果我执行此命令,输出将以Ans格式显示。塔看起来像这样(文件夹已经存在):
TASK [playbook : Create folder if not exists] ***
17:51:00
23
skipping: [host]
TASK [playbook : debug] ***************************************
18:16:07
26
ok: [host] => {
27
"msg": "Folder already exists"Ik希望在创建文件夹任务中打印此消息,而不是在单独的任务中打印。
如果能帮上忙,我们将不胜感激
发布于 2018-12-17 02:24:47
我会建议一种不同的策略:
- win_file:
...
register: create
- debug:
msg: Folder already exists
when: create.changed == false这可能在您的实际用例中不起作用,但从给定的示例来看,它是有意义的。file/win_file已经检查了文件/目录是否已经存在。
关于您的实际问题:我认为不可能将两个任务(win_file和debug)放在一个任务中。如果你想避免两次写条件,你可以使用块:https://docs.ansible.com/ansible/latest/user_guide/playbooks_blocks.html
https://stackoverflow.com/questions/53804697
复制相似问题