我需要使用ansible替换此<serverurl> https:// localhost:$ {my.port} $ {my.context} services / </serverurl>

时间:2019-03-02 07:10:37

标签: ansible

嗨,我需要在ansible中替换下面的字符串  

'https://localhost:$ {mgt.transport.https.port} $ {carbon.context} services /'

与 '本地主机:2222 /服务'

我已经使用ansible命令了。但它不起作用。

 name: set ServerURL of the  AuthManager  [HUB_HOME]/repository/conf/api-manager.xml
 replace: 
    dest: "{{packFolderNameAM}}/repository/conf/api-manager.xml"
    regexp: '<ServerURL>https://localhost:${my.port}${my.context}services/</ServerURL>'- name: set ServerURL of the  AuthManager  [HUB_HOME]/repository/conf/api-manager.xml
    replace: 'localhost/9444/services'
    before: 'Admin username for the Authentication manager'
    backup: yes

请帮助我。谢谢!!

1 个答案:

答案 0 :(得分:0)

因为api-manager.xml是一个文件。我们可以保留副模板:作为不同的文件,并使用标签动态复制文件:在任务中:

这将阻止脚本编写。

让模板包含上述变量,并在剧本var中定义变量: 要么 基于角色的var /main.yml文件https://localhost:$ {my.port} $ {my.context} services / 然后变量将被填充

示例:  enter image description here