Ho cercato di ottenere Ansible per il provisioning di una macchina remota e voglio che la macchina remota sia configurata con le proprie chiavi e abbia la possibilità di clonare git repository da Bitbucket.Come utilizzare le chiavi SSH della macchina remota nel modulo git ansable
L'utente è configurato, ha il proprio id_rsa.pub e la chiave è stata registrata con bitbucket.
Tuttavia, quando uso il modulo Ansible Git, sembra che il modulo cerchi sempre di utilizzare i tasti della macchina che esegue il playbook.
Come si ottiene il modulo git per utilizzare id_rsa.pub dal computer remoto?
Il compito rilevante è questo:
- 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'inventario rilevante è questo
# 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
dimenticato di dire ... posso ottenere il clone di lavorare con https (ma che richiede la password nell'URL, che voglio evitare) e quando viene recuperato quel clone, i file sono tutti di proprietà di root sul computer remoto - che non è nemmeno desiderato. – jschank
Incolla nel playbook in uso. Potrebbe essere solo quel git quando è in esecuzione su una macchina remota, chiede di aggiungere bitbucket al prompt known_hosts (yes/no) che fa sempre quando è in esecuzione per la prima volta su una nuova macchina – Zasz
Come sai che git usa la chiave dalla tua macchina da gioco? Tutti i moduli ansibili vengono eseguiti sulla macchina remota a meno che non si esegua esplicitamente su 127.0.0.1 o si contrassegni come local_action o si utilizzi la delega. – Zasz