Ansible 2.8 Roles-using vars / main directory

问题描述 投票:0回答:2

我正在尝试将Ansible角色变量拆分为多个文件-按照this answer,应该可以创建vars/main目录,并且该目录中的所有.yml文件都应自动加载。

但是,就我而言,这似乎没有发生。

我的目录结构:

vars
└── main
    ├── gce_settings.yml
    └── vsphere_settings.yml

但是,当我尝试使用vsphere_settings.yml中定义的变量时,Ansible抱怨该变量未定义:{"msg": "The task includes an option with an undefined variable. The error was: 'vsphere_user' is undefined

如果将变量声明移至vars/main.yml,则一切都会按预期进行。但是,当然,我希望将变量分成多个文件。

我在Ansible官方文档中找不到对该“功能”的任何引用,而且我不知道如何解决该问题。谁能指出我正确的方向?

我的Ansible版本:[在Ubuntu 16.04上为ansible 2.8.5

并且在您询问之前:是的,我确实确保在尝试加载main.yml时不存在vars/main/*.yml ...>

我正在尝试将Ansible角色变量拆分为多个文件-根据此答案,应该可以创建vars / main目录,并且该目录中的所有.yml文件都应为...

variables ansible roles ansible-2.x
2个回答
1
投票

TL; DR版本:这是一个无法解决的错误,原因是vars/main中存在空的.yml文件。已经有公关了。看到here


0
投票

下面的例子

© www.soinside.com 2019 - 2024. All rights reserved.