group_vars에 정의 된 변수의 값 (True / False)에 따라 vars 파일에서 일부 변수를 정의하려고합니다. 그 값은 var 그룹의 값에 따라 다릅니다.
내 현재 var 파일은 다음과 같습니다
{% if my_group_var %}
test:
var1: value
var2: value
...
varn: value
{% else %}
test:
var1: other_value
var2: other_value
...
varn: other_value
{% endif %}
각 역할마다이 파일에 정의 된 변수를 사용하고 있습니다.
테스트 플레이 북은 다음과 같습니다.
- name: blabla
hosts: blabla
vars_files:
- <path>/test_vars.yml
roles: blabla
플레이 북을 실행 한 후 수신되는 오류는 다음과 같습니다.
{% if my_group_var %}
^ here
exception type: <class 'yaml.scanner.ScannerError'>
exception: while scanning for the next token
found character that cannot start any token
in "<unicode string>"
내가 멍청한 짓을하고 있거나 지원되지 않습니까? 나는이 vars를 정의하는 다른 방법을 찾으려고 노력했지만 (많은 것들이 있습니다) 여기서는 기능적인 것을 얻지 못했습니다. 어떤 제안?
test
그룹에 의존, 그것은 group_vars에 배치해야합니다.
template
모듈 호출의 일부인 경우에는 불필요 할 수 있습니다 .