如何使用Ansible git模块克隆空的裸存储库?

时间:2016-07-03 10:46:47

标签: git ansible

我有一个空的裸存储库,我试图用Ansible克隆,但是git模块正在尝试检出master因此失败,因为空存储库中没有这样的refspec。

我唯一的方法是使用shell命令来克隆repo。

1 个答案:

答案 0 :(得分:4)

我尝试过各种方式,唯一有效的方法是添加ignore_errors: true,然后检查是什么让Ansible模块失败。 我知道这不是最佳的,但它有效,我们不会让所有的错误通过:

- git: repo=<YOUR REPO> dest=<DEST>
  ignore_errors: true
  register: output
- name: check the error that failed the git module
  fail: msg="{{ output.msg }}"
  when: "'Failed to checkout branch master' not in output.msg"

BTW我过滤了output.msg而不是output.stderr,因为出于某种原因,该特定错误会导致.msg但不会移至.stderr