파일 (예 : NEWVALUE
포함)에서 값을로드하여 이전에 정의한 변수 my_var
(이 값을 LATEST
으로 설정 한 경우)을 덮어 쓰려고합니다.파일에서 가능한 변수 덮어 쓰기 오류가 발생했습니다.
- name: Load from file
vars:
my_var: "{{ lookup('file', '~/file.txt') }}"
my_var2: "{{ lookup('file', '~/file.txt') }}"
debug: msg="my_var is {{ my_var }} my_var2 is {{ my_var2 }}"
when: "{{ my_var=='LATEST' }}"
이
ok: [host] ==> {
"msg": "my_var is LATEST my_var2 is NEWVALUE"
}
그래서 나는 내가 제대로 값을로드하고있어 것을 확인했다고 느낄 인쇄 ..하지만 어떤 이유로 나는 이전에 lookup
의 결과를 설정할 수 없습니다 변수를 설정하십시오. when
절을 사용 중지해도 아무런 차이가없는 것처럼 보입니다.
해야할까요? 대안으로 나는 세 번째 변수를 사용하여 기존 값이나 파일의 값으로 설정하려고합니다. 그러나 이것은 나에게 불필요한 단계처럼 보입니다.
해당 버전 2.1.0.0 b.t.w.
'set_fact'를 사용해야했지만 사실은 명령 줄 환경 변수로 제공 되었기 때문에 동일한 문제가 여전히 존재했습니다. 재정의 할 수 없습니다. –