Возможно с упаковщиком

Я пытаюсь заставить упаковщиков ansible Provider использовать имя пользователя и пароль, но конфигурация с ansible продолжает останавливаться, потому что этап аутентификации завершается неудачно.

Вот мой скрипт Packer Ansible.

    {
  "type": "ansible",
  "user": "pi",
  "playbook_file": "playbook.yml",
  "extra_arguments": [
    "--extra-vars",
    "ansible_python_interpreter=/usr/bin/python3",

    "--extra-vars",
    "ansible_user=pi",

    "--extra-vars",
    "ansible_ssh_pass=raspberry",

    "-vvv"
  ]
}

Я полная потеря, почему это не работает.

Выход, где он застревает, выглядит следующим образом.

    armpi: ==> arm-image: Executing Ansible: ansible-playbook --extra-vars packer_build_name=arm-image packer_builder_type=arm-image -i /tmp/packer-provisioner-ansible288108417 playbook.yml -e ansible_ssh_private_key_file=/tmp/ansible-key528332842 --extra-vars ansible_python_interpreter=/usr/bin/python3 --extra-vars ansible_ssh_user=pi --extra-vars ansible_ssh_pass=raspberry -vvv

похоже, что он пытается использовать ansible_ssh_private_key_file=/tmp/ansible-key528332842 но я не хочу использовать это, я действительно хочу, чтобы он вошел с именем пользователя и паролем.

1 ответ

Решение

С вершины ansible Поставочная документация:

Поставщик ansible Packer запускает книги воспроизведения Ansible. Он динамически создает файл инвентаризации Ansible, настроенный для использования SSH, запускает сервер SSH, запускает ansible-playbook и маршалы Ansible воспроизводят через сервер SSH на машину, предоставляемую Packer.

Примечание: любой remote_user определенные в задачах будут игнорироваться. Packer всегда будет связываться с пользователем, указанным в конфиге json для этого провайдера.

То, что вы пытаетесь сделать, невозможно с ansible Provisioner. Но вы можете достичь того, что вы пытаетесь сделать, запустив ansible с помощью shell-local Provisioner.

(Чтобы получить IP-адрес виртуальной машины для использования в инвентаризации Ansible, вы можете следовать общей схеме, которую я рекомендую в этом посте.)

Другие вопросы по тегам