Ansible:git使用任务克隆多个存储库

时间:2019-06-27 16:22:35

标签: git ansible

如果我写:

repo=git@github.com/foo/bar.git
dst=/opt/foobar
host=box

# assume I have ssh permissions
ssh ${host} 'git clone ${repo} ${dst}'

这很容易。好的,现在我想为所有主机执行此操作:

// @hosts/targets
biz
baz
qaz

$: cat hosts/targets | xargs -I host ssh host 'git clone ${repo} ${dst}'

然后我将对所有主机执行此操作。开发人员花了5分钟的时间,除非将其翻译成中文(或更糟糕的是,爱因斯坦符号),否则我将能够阅读。


另一方面,我写:

---
 - hosts: targets
   tasks:
     - name: clone
       git:
         repo: "{{ repo }}"
         version: "{{ vers }}"
         dest: "{{ dst }}" 
         key_file: "{{ keyfile }}"
         accept_hostkey: yes
         force: yes

似乎没有任何效果:git将克隆,是的,但是随后挂起;也没有检出正确的分支。添加-vvv可以显示该玩家正在休息中。


如何调试此Ansible?

0 个答案:

没有答案