Ansible Git URL中的域反斜杠

Ansible Git URL中的域反斜杠,ansible,ansible-playbook,Ansible,Ansible Playbook,当我尝试使用windows域凭据克隆回购时,反斜杠将被删除 git: repo="http://DOMAIN\\user:password@server/repo" dest=/srv/clone version=develop 错误: failed: [x.x.x.x] => {"cmd": ["/usr/bin/git", "ls-remote", "http://DOMAINuser:password@server/repo", "-h", "refs/head

当我尝试使用windows域凭据克隆回购时,反斜杠将被删除

git: repo="http://DOMAIN\\user:password@server/repo"
     dest=/srv/clone
     version=develop
错误:

failed: [x.x.x.x] => {"cmd": ["/usr/bin/git", "ls-remote", "http://DOMAINuser:password@server/repo", "-h", "refs/heads/develop"], "failed": true, "rc": 128} 
stderr: fatal: Authentication failed for 'http://DOMAINuser:password@server/repo/'

msg: fatal: Authentication failed for 'http://DOMAINuser:password@server/repo/'

FATAL: all hosts have already failed -- aborting

看来转义不起作用了?

据我所知,active directory身份验证与您可以在git中使用HTTP方法的身份验证方案是正交的。因此,
DOMAIN\\USER
只是HTTP客户机(在您的例子中,
git
)发送到服务器的用户字符串<但是,代码>\对客户端来说可能很奇怪。你试过
\\\\\\\
吗?

这可能看起来很有趣,但我已经浪费了足够的时间用Ansible转义来证明这一点。尝试定义一个var(在某个固定的适当位置),比如
反斜杠:“\\”
,并在这样的模板中使用它,
反斜杠*2


至少在
“{{..}}”
中的直接使用和过滤器中的间接使用(如
“{…| some_filter(“…”)})之间可以获得一致性

但是如果我使用'git clone\\user:password@server/回购是有效的,所以我认为这个问题是可以解决的。我没有找到任何关于这个问题的话题。在严格的YAML中尝试同样的事情从来都没有坏处。