Как правите това чрез git модула в ansible 2.4? Разгледах doco http://docs.ansible.com/ansible/latest/git_module.html няма опция за mirror
клониране.
Има ли някакъв друг начин да го направя, без да се налага да изпълнявам команди направо нагоре.. В момента имам нещо, което изглежда така..
- name: Clone git repo
git:
repo: ssh://[email protected]/foo/bar.git
key_file: /home/deploy/.ssh/id_rsa
dest: /path/to/repo
accept_hostkey: true
update: yes
version: master
bare: no
become_user: deploy
when: repo_created.changed
Харесвам хубавите конфигурационни превключватели за приемане на хост ключове и т.н. Алтернативата според мен е нещо подобно.. (все още нетествано)
- name: Test if github is a known host
shell: ssh-keygen -l -f /home/deploy/.ssh/known_hosts -F github.com
register: github_host_is_known
sudo_user: deploy
ignore_errors: True
changed_when: github_host_is_known.rc != 0
- name: Add githubs key to known hosts
shell: ssh-keyscan -H github.com >> /home/deploy/.ssh/known_hosts
when: github_host_is_known.rc != 0
sudo_user: deploy
- name: "Clone repo"
command: git clone --mirror [email protected]:foo/bar.git /path/to/repo
sudo_user: deploy
when: repo_created.changed
Това ли е единственият/най-добрият ми вариант?