相关疑难解决方法(0)

基于事实的参数化ansible命令,怎么做?

我正在更新我的一些 ansible playbook 以在最新版本的 Fedora 上运行,该版本现在dnf默认使用。

由于我的大部分剧本也应该在 CentOS 上运行,我希望我的脚本yum在对 CentOS 机器运行dnf时运行 ansible 命令,在对 Fedora 运行时运行该命令(Ansible 1.9 中的新功能),但使用其余的角色原样。

换句话说,我想编写一个可以智能地选择正确命令的单个操作(类似于):

- name: Install zsh
  sudo: yes
  yum|dnf: name=zsh state=latest
Run Code Online (Sandbox Code Playgroud)

...而不是复制粘贴相同的命令两次,更换yumdnf两个中的一个,然后执行一些逻辑,说两个不同的角色来运行的一个至极:

- name: Install zsh (yum version)
  sudo: yes
  yum: name=zsh state=latest

- name: Install zsh (dnf version)
  sudo: yes
  dnf: name=zsh state=latest
Run Code Online (Sandbox Code Playgroud)

在有人冲过去之前:我知道yumdnf最新的 Fedora 上有一个别名,并且我可以将剧本保持原样......我的问题不是关于编写 CentOS/Fedora 兼容的剧本,我的问题是关于选择一个根据目标环境,相同参数的不同命令

yum ansible dnf

4
推荐指数
2
解决办法
2049
查看次数

标签 统计

ansible ×1

dnf ×1

yum ×1