Ansible:将字符串追加到文件中的现有行

时间:2019-05-15 17:31:33

标签: ansible

我正在使用ansible模块来编辑kube-apiserver的清单文件

    - --feature-gates=AdvancedAuditing=true

我想添加新的功能门

    - --feature-gates=AdvancedAuditing=true,TTLAfterFinished=true

我尝试了很多事情,其中​​之一-

- name: append TTLAfterFinished to existing list of feature-gates
  lineinfile:
    path: item.0.item.file_path
    backrefs: yes
    regexp: "^(.*feature-gates.*)$"
    line: '\1,TTLAfterFinished=true'

没有运气.. :(有什么帮助吗?

2 个答案:

答案 0 :(得分:0)

您的工作对我来说很好,但是我没有 $newSubject = $_GET["chooseSubject"]; if ($newSubject == "Math" OR $newSubject == "Chemistry") { echo '<p id="subjectSet1"></p>'; echo '<p class="dates">October 16. 2019 klo 9:00</p>'; } 变量。所以我有这个:

item

问题可能出在您的- name: append TTLAfterFinished to existing list of feature-gates lineinfile: path: "{{ role_path }}/files/file_path" backrefs: yes regexp: "^(.*feature-gates.*)$" line: '\1,TTLAfterFinished=true' 变量上。

答案 1 :(得分:0)

以下内容适用于我。整个正则表达式应放在括号内,以便python将其分组。 使用替换模块也是另一种选择。

 - name: kube-apiserver - append TTLAfterFinished to existing list of feature-gates
   lineinfile:
    path: /etc/kubernetes/manifests/kube-apiserver.yaml
    backrefs: yes
    regexp: '(^    - --feature-gates=.*$)'
    line: '\1,TTLAfterFinished=true'