Ansible set_事实值No转换为False

Ansible set_事实值No转换为False,ansible,Ansible,我对set\u fact有一个恼人的问题,我设置了一个值为No的变量,但一旦调用该变量,ansible就会将其转换为False有什么办法吗?我们可以使用YAML语法来解决这个问题,并在文件内容中包含文本No 考虑一个简单的文本文件sample.txt,如下所示: works? Yes 我使用的是lineinfle(Linux)的一个示例,但在Windows上也应该是类似的。包含以下任务的简单剧本: -设置事实: var1:> 不 -线条填充: 路径:/tmp/sample.txt 行:“工作?

我对
set\u fact
有一个恼人的问题,我设置了一个值为
No
的变量,但一旦调用该变量,ansible就会将其转换为
False
有什么办法吗?

我们可以使用YAML语法来解决这个问题,并在文件内容中包含文本
No

考虑一个简单的文本文件
sample.txt
,如下所示:

works? Yes
我使用的是
lineinfle
(Linux)的一个示例,但在Windows上也应该是类似的。包含以下任务的简单剧本:

-设置事实:
var1:>
不
-线条填充:
路径:/tmp/sample.txt
行:“工作?{var1}”
regexp:“^works”
运行此剧本时:

-works? Yes
+works? No

看看亚马尔<代码>是,
都是相同的。如果您想要文本,您可能希望将其设置为文本。我尝试添加“否”,结果是“否”,而我需要一个干净的now当
set\u fact
的值是布尔值
No
,如果它变为
False
,又有什么关系?您可能希望显示一些代码(在问题中),其中您试图使用变量集
set\u fact
。我将它与win\u Lineinfle一起使用,并将其添加到配置文件中,因此False将破坏config@BugsBunny我不知道您是如何尝试的,但是使用引号(单引号或双引号)围绕值给出了准确的预期结果:但这与我所想的做
'No'
完全相同,但使用
set\u fact
它的工作方式不同。如果在
vars:
部分中使用,它将按预期工作。使用>否可修复此问题