Comment puis-je utiliser la machine distante SSH clés dans ansible git module

J'ai essayé d'obtenir de l'Ansible à disposition une machine distante, et je veux que la machine distante pour être mis en place avec ses propres clés, et ont la capacité de dépôts git clone de Bitbucket.

L'utilisateur est mis en place, a son propre id_rsa.pub, et la clé a été enregistré avec bitbucket.

Mais, lorsque j'utilise l'Ansible Git module, il semble que le module essaie toujours d'utiliser les touches de la machine qui exécute le playbook.

Comment puis-je obtenir le git module d'utiliser le id_rsa.pub de la machine distante?

Le travail concerné est: est-ce

- name: be sure prom-king has an up-to-date clone of its own repository
  git:
    repo: "ssh://[email protected]/prom-king.git"
    dest: /home/promking/prom-king
    accept_hostkey: yes
    clone: yes
    key_file: /home/promking/.ssh/id_rsa.pub
    update: yes

L'inventaire est ce

# inventory file for use with the vagrant box in the testing directory.
[prom-king]
192.168.168.192 ansible_ssh_host=127.0.0.1 ansible_sudo=true ansible_connection=ssh  ansible_ssh_port=2222 ansible_ssh_user=vagrant ansible_ssh_private_key_file=testing/.vagrant/machines/default/virtualbox/private_key
J'ai oublié de mentionner...je peux obtenir le clone de travailler avec https (mais qui nécessite le mot de passe dans l'url, je veux éviter) et lorsque que le clone est récupéré, les fichiers sont tous la propriété de root sur la machine distante - qui n'est pas souhaité.
Coller dans le playbook vous utilisez. Il pourrait être simplement que git lors de son exécution sur la machine distante, est invite pour ajouter bitbucket pour known_hosts (oui/non) invite qui il le fait toujours quand sa marche pour la première fois sur une nouvelle machine
Comment savez-vous que git utilise la clé de votre playbook machine? Tous les ansible modules exécuter sur la machine distante, sauf si vous explicitement exécuter sur 127.0.0.1 ou la marquer comme local_action ou utiliser la délégation.
J'ai ajouté pertinentes du code à la question. Je sais que les clés sont faux, parce que je obtenir une clé d'erreur lors de l'exécution de la tâche, et ces vagrant touches ne sont pas sur le compte bitbucket. Aussi, lorsque j'ai ssh sur la machine virtuelle, et exécuter la commande git, il fonctionne très bien. Je note que même si c'est un vagabond vm, il n'est pas fourni avec l'ansible. J'utilise la machine virtuelle pour tester la playbook avant je l'utilise sur des serveurs réels. La machine virtuelle utilise le réseau privé, j'ai donc accès comme toute autre machine (sauf par IP) Enfin, lorsque j'utilise le protocole https, qui fonctionne. Les pensions de titres sont détenus par la racine.
Assez sûr, vous devriez être en spécifiant la clé privée et le pas de la clé publique dans key_file.

OriginalL'auteur jschank | 2015-04-19