团队,我有两个变量映射到两个环境。我想在剧本中使用它们,但根据剧本运行的环境,只能应用一个值。
前任:
var = test1 > should be loaded when env1
var = test2 > should be loaded when env2
任何提示我如何在 ansible 中实现这一点?
我想以这样的方式编写我的任务,即当在 env1 上运行时,此变量 var 携带 test1 值,反之亦然。是否有我可以在任务级别使用的登录名?我的任务如下,当我在 clusterA 上运行我的剧本时,它应该使用 var=test1,而在 clusterB 上运行时,它应该使用 var=test2
- name: Add persistent ddn volume
mount:
path: "{{ lustre_client_path }}"
src: "{{ var }}"
fstype: lustre
state: mounted
答案1
其实我已经搞明白了。我只需要创建一个单独的文件并将其命名为 configs.yml,然后将其直接放在每个集群环境剧本中。这有效。因此现在正在加载基于环境的内容。