2016-02-12 234 views
0

我有一个调用get_url下载文件的剧本,但URL包含反斜杠在Ansible剧本中转义反斜线

http://cijboss:8080/jenkins/job/prod/186/org.myorg\$ear/artifact/org.org/ear/3.0.0-SNAPSHOT/ear-3.0.0-SNAPSHOT.ear" 

我曾尝试双引号,单引号,\转义序列,等试过在Jinja2和YAML转义文档中发现了很多东西,没有任何作用。当我通过ad hoc命令提供URL时,它会很好地下载文件。

ansible <server> -m get_url -u user -a "http://cijboss:8080/jenkins/job/prod/186/org.myorg\$ear/artifact/org.org/ear/3.0.0-SNAPSHOT/ear-3.0.0-SNAPSHOT.ear" dest=/home/user" 

每次playbook运行时,url都包含一个双反斜杠。如何正确地逃避这一点?

更新:下面是yml剧本文件。

--- 
    - hosts: jboss 
     remote_user: jboss 
    tasks: 
     - name: Get Ear file 
     get_url: url="http://cijboss:8080/jenkins/job/prod/186/org.myorg\$ear/artifact/org.org/ear/3.0.0-SNAPSHOT/ear-3.0.0-SNAPSHOT.ear" dest=/home/jboss mode=0755 
+0

后具有此URL – helloV

+0

帖子编辑包含了剧本 – tmcminn

回答

0

你试过percent encode吗? - >%5C

http://example.com/jenkins/../../domain%5C$project/../app.ear 
+0

我做了剧本的部分。输出结果是:..domain%5c $ project/..并且结果为404 – tmcminn