Возможно с упаковщиком - PullRequest
0 голосов
/ 24 ноября 2018

Я пытаюсь заставить упаковщика и провайдера ANSI использовать имя пользователя и пароль, но конфигурация с 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 Ответ

0 голосов
/ 24 ноября 2018

Сверху документации поставщика ansible:

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

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

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

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

...