Получение одной большой трассировки стека ошибки недоступной переменной, исключение не найдено
ansible.errors.AnsibleUndefinedVariable: 'facter_ipaddress_eth1'
пока я запускаю книгу Ansible Play.
значение, которое устанавливается здесь и в других местах.
https://github.com/vfarcic/docker-swarm-networking/blob/master/ansible/group_vars/all
ЗАДАЧА [docker: файлы Debian присутствуют] *********************************************** ******************************************************* ******************************************************* **********путь к задаче: /vagrant/ansible/roles/docker/tasks/main.yml:76
<10.100.192.200> УСТАНОВИТЬ SSH-СОЕДИНЕНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЯ: бродяга
<10.100.192.200> SSH: EXEC ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'IdentityFile="/vagrant/.vagrant/machines/swarm-master/virtualbox/private_key"' -o KbdInteractiveAuthentication=no - o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o 'User="vagrant"' -o ConnectTimeout=10 -o ControlPath=/home/vagrant/.ansible/cp/ceb9f96da5 10.100.192.200 '/bin/sh -c '"'"'echo ~vagrant && sleep 0'"'"''
<10.100.192.200> (0, б'/дом/бродяга\n', б'')
<10.100.192.200> УСТАНОВИТЬ SSH-СОЕДИНЕНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЯ: бродяга
<10.100.192.200> SSH: EXEC ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'IdentityFile="/vagrant/.vagrant/machines/swarm-master/virtualbox/private_key"' -o KbdInteractiveAuthentication=no - o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o 'User="vagrant"' -o ConnectTimeout=10 -o ControlPath=/home/vagrant/.ansible/cp/ceb9f96da5 10.100.192.200 '/bin/sh -c '"'"'( umask 77 && mkdir -p "` echo /home/vagrant/.ansible/tmp `"&& mkdir "` echo /home/vagrant/.ansible/tmp /ansible-tmp-1640389849.3916476-93636-106822855105481 `" && echo ansible-tmp-1640389849.3916476-93636-106822855105481="` echo /home/vagrant/.ansible/tmp/ansible-tmp-1640389849.3916476-93636-106822855105481 `" ) && спать 0'"'"''
<10.100.192.200> (0, b'ansible-tmp-1640389849.3916476-93636-106822855105481=/home/vagrant/.ansible/tmp/ansible-tmp-1640389849.3916476-93636-1068228551054b)
<10.100.192.200> УСТАНОВИТЬ SSH-СОЕДИНЕНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЯ: бродяга
<10.100.192.200> SSH: EXEC ssh -C -o ControlMaster=auto -o ControlPersist=60s -o 'IdentityFile="/vagrant/.vagrant/machines/swarm-master/virtualbox/private_key"' -o KbdInteractiveAuthentication=no - o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o 'User="vagrant"' -o ConnectTimeout=10 -o ControlPath=/home/vagrant/.ansible/cp/ceb9f96da5 10.100.192.200 '/bin/sh -c '"'"'rm -f -r /home/vagrant/.ansible/tmp/ansible-tmp-1640389849.3916476-93636-106822855105481/ > /dev/null 2>&1 && sleep 0'"'"''
<10.100.192.200> (0, б'', б'')
Полная трассировка:
Traceback (последний последний вызов):
Файл "/usr/lib/python3/dist-packages/ansible/template/__init__.py", строка 1139, в do_template
разрешение = j2_concat (rf)
Файл "<шаблон>", строка 11, в корне
Файл "/usr/lib/python3/dist-packages/jinja2/runtime.py", строка 639, в _fail_with_undefined_error
поднять self._undefined_exception(подсказка)
jinja2.exceptions.UndefinedError: 'factor_ipaddress_eth1' не определен
Во время обработки вышеупомянутого исключения произошло другое исключение:
Traceback (последний последний вызов):
Файл "/usr/lib/python3/dist-packages/ansible/template/vars.py", строка 98, в __getitem__
значение = self._templar.template (переменная)
Файл "/usr/lib/python3/dist-packages/ansible/template/__init__.py", строка 869, в шаблоне
результат = self.do_template(
Файл "/usr/lib/python3/dist-packages/ansible/template/__init__.py", строка 1176, в do_template
поднять AnsibleUndefinedVariable(e)
ansible.errors.AnsibleUndefinedVariable: 'facter_ipaddress_eth1' не определен
Во время обработки вышеупомянутого исключения произошло другое исключение:
Traceback (последний последний вызов):
Файл "/usr/lib/python3/dist-packages/ansible/template/__init__.py", строка 1139, в do_template
разрешение = j2_concat (rf)
Файл "<шаблон>", строка 9, в корне
Файл "/usr/lib/python3/dist-packages/ansible/template/__init__.py", строка 404, в resolve_or_missing
val = super(AnsibleContext, self).resolve_or_missing(key)
Файл "/usr/lib/python3/dist-packages/jinja2/runtime.py", строка 217, в resolve_or_missing
вернуть resolve_or_missing (я, ключ)
Файл "/usr/lib/python3/dist-packages/jinja2/runtime.py", строка 129, в resolve_or_missing
вернуть context.parent [ключ]
Файл "/usr/lib/python3/dist-packages/ansible/template/vars.py", строка 100, в __getitem__
поднять AnsibleUndefinedVariable("%s: %s" % (to_native(переменная), e.message))
ansible.errors.AnsibleUndefinedVariable: {{ facter_ipaddress_eth1 }}: 'facter_ipaddress_eth1' не определен
Во время обработки вышеупомянутого исключения произошло другое исключение:
Traceback (последний последний вызов):
Файл "/usr/lib/python3/dist-packages/ansible/plugins/action/template.py", строка 150, выполняется
результирующий = templar.do_template (template_data, save_trailing_newlines = True, escape_backslashes = False)
Файл "/usr/lib/python3/dist-packages/ansible/template/__init__.py", строка 1176, в do_template
поднять AnsibleUndefinedVariable(e)
ansible.errors.AnsibleUndefinedVariable: {{ facter_ipaddress_eth1 }}: 'facter_ipaddress_eth1' не определен
фатальный: [10.100.192.200]: НЕУДАЧА! => {
«изменено»: ложь,
"msg": "AnsibleUndefinedVariable: {{ facter_ipaddress_eth1 }}: 'facter_ipaddress_eth1' не определено"
}
ОБЗОР ИГРЫ ******************************************************* ******************************************************* ******************************************************* *************************************10.100.192.200 : ok=14 изменено=6 недостижимо=0 не удалось=1 пропущено=0 спасено=0 проигнорировано=0
Следуя совету @alexD, я добавил задачу для установки facter, но все равно получаю ту же ошибку:
- имя: Установить фактор
raw: apt install -y facter
стать истинным
теги: [докер]
- название: Проверить фактор
команда: "фактор ipaddress_eth1"
регистрация: результат
теги: [докер]