Предложение Try / Except в пакере Prover Packer Ansible с VSphere-iso builder - PullRequest
0 голосов
/ 08 февраля 2019

Я создаю шаблоны в VMWare, используя Packer с поставщиком Ansible.В подсети, в которой я работаю, очень мало (2 или 3) доступных IP-адресов.Когда провайдер Ansible дает сбой, упаковщик в конечном итоге отключается, а виртуальная машина уничтожается - без возможности освободить свой арендованный IP-адрес DHCP с помощью (это Linux) dhclient -r.После часто только одного сбоя единственный способ продолжить - найти mac-адрес последней сборки, которая была успешной из журнала, и изменить сетевую карту на виртуальной машине, чтобы иметь этот mac-адрес (и перезагрузить его).Успешная сборка запускает dhclient -r для освобождения аренды, чтобы последующие сборки могли получить аренду.

Я не могу изменить сервер dhcp, чтобы ни сократить время аренды (это день), ни предложить больше IPадреса - это невозможно в моей среде.

Простым решением было бы иметь предложение try / catch для поставщика Ansible в Packer, который запускал dhclient -r в случае сбоя.

Я не могу найти ничего в документации Packer, чтобы сделать это - хотя, кажется, есть опция "не разрывать при сбое", которая может позволить мне войти в систему вручную и освободить аренду.Любые идеи, как я могу автоматизировать это?

...