我有多台主机,当我检测到安装了run_once
的主机时,我想运行我的任务。
我可以以某种方式将when
与when
一起使用吗?
基本上,在应用run_once
部分之前,我需要先将run_once
用作初始的“过滤器”。
不幸的是,我在https://github.com/ansible/ansible/issues/23594阅读...
FYI we are able to do the desired behavior using include_tasks: driver.yml: - include_tasks: tasks_to_include.yml when: conditional_matching_multiple_hosts tasks_to_include.yml: - debug: msg="only run on one of the matching hosts" run_once: true
仅适用于第一个主机进入循环,如果when条件为False,则将跳过任务。当时间为True时,它不会在第一台主机上运行。
那么有没有一种简单而惯用的方式,也许结合以上方法使用delegate_to
?
我看到上述问题有建议:
yumdownloader --destdir=/etc/LinuxRepos/DOTNETSDK2.2.402 dotnet-host-3.0.0-x64.rpm
yumdownloader --destdir=/etc/LinuxRepos/DOTNETSDK2.2.402 dotnet-runtime-deps-2.2.7-rhel.7-x64.rpm4.
yumdownloader --destdir=/etc/LinuxRepos/DOTNETSDK2.2.402 dotnet-runtime-2.2.7-x64.rpm
yumdownloader --destdir=/etc/LinuxRepos/DOTNETSDK2.2.402 aspnetcore-runtime-2.2.7-x64.rpm
yumdownloader --destdir=/etc/LinuxRepos/DOTNETSDK2.2.402 dotnet-sdk-2.2.402-x64.rpm
但是我想要一个更简单的方法放在一个yaml文件中。