在需求中指定版本时 ansible-galaxy 安装失败

ansible-galaxy install fails when specifying a version in requirements

不确定这是否是 ansible-galaxy 中的错误,但我正在尝试从 requirements.yml 文件 (related ansible documentation) 安装角色。正在提取其中一个角色来自 git,具体 version 像这样:

requirements.yml:

---
- src:  https://github.com/thom-nic/ansible-shell
  name: thom-nic.shell
  version: develop

当我 运行 ansible-galaxy install 我得到以下输出:

± ansible-galaxy install -r requirements.yml --force
- executing: git clone https://github.com/thom-nic/ansible-shell thom-nic.shell
- executing: git archive --prefix=thom-nic.shell/ --output=/var/folders/cw/9vh4w77n4vb_bchhsxnglrcm0000gn/T/tmpF4GAqD.tar develop
- command git archive --prefix=thom-nic.shell/ --output=/var/folders/cw/9vh4w77n4vb_bchhsxnglrcm0000gn/T/tmpF4GAqD.tar develop failed
  in directory /var/folders/cw/9vh4w77n4vb_bchhsxnglrcm0000gn/T/tmpIyYaJz
- thom-nic.shell was NOT installed successfully.

如果我将 version 更改为 master,它就会起作用。我在 git 回购协议中用其他角色尝试过这个,结果相同。

奇怪的是,ansible-galaxy 本身似乎没有 --version 输出,但是 ansible --version 报告 v1.8.3.

这是一个known issue。同时,作为解决方法,修改 requirements.yml 中的版本,如下所示:

---
- src:  https://github.com/thom-nic/ansible-shell
  name: thom-nic.shell
  version: remotes/origin/develop