相关疑难解决方法(0)

如何在Ansible YAML文件中的字符串中转义冒号?

我想在安装期间更改文件/var/www/kibana/config.js中的一行代码

elasticsearch: "http://"+window.location.hostname+":9200"
Run Code Online (Sandbox Code Playgroud)

elasticsearch: "http://192.168.1.200:9200"
Run Code Online (Sandbox Code Playgroud)

在这里,我尝试使用lineinfile来执行此操作,如下所示

- name: Comment out elasticsearch the config.js to ElasticSearch server
  lineinfile:
    dest=/var/www/kibana/config.js
    backrefs=true
    regexp="(elasticsearch.* \"http.*)$"
    line="elasticsearch\: \" {{ elasticsearch_URL }}:{{ elasticsearch_port }} \" "
    state=present
Run Code Online (Sandbox Code Playgroud)

我已经设置的变量{{elasticsearch_URL}},并{{elasticsearch_port}}http://192.168.1.2009200分别.

这是我遇到的错误消息:

ERROR: Syntax Error while loading YAML script, /Users/shuoy/devops_workspace/ansible_work/logging-for-openstack/roles/kibana/tasks/Debian.yml
Note: The error may actually appear before this position: line 29, column 25

regexp="(elasticsearch.* \"http.*)$"
line="elasticsearch\: \" {{ elasticsearch_URL }}:{{ elasticsearch_port }} \" "
                    ^
Run Code Online (Sandbox Code Playgroud)

regex ansible ansible-playbook

28
推荐指数
3
解决办法
5万
查看次数

标签 统计

ansible ×1

ansible-playbook ×1

regex ×1