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

Ansible:将字符串附加到文件中的现有行,ansible,Ansible,我正在使用ansible模块编辑kube apiserver的清单文件 - --feature-gates=AdvancedAuditing=true 我想添加新功能,比如 - --feature-gates=AdvancedAuditing=true,TTLAfterFinished=true 我试了很多东西,其中一个- - name: append TTLAfterFinished to existing list of feature-gates lineinfil

我正在使用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'

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

您为我做的很好,但我没有
变量。因此我有以下内容:

- 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'

可能是您的
变量出了问题。

下面的内容对我很有用。整个正则表达式应该放在括号内,以便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'

Arghhh-
“{{item.0.item.file_path}}”
有效!谢谢:)不知怎么用
行:'\1-A'
我把文件中的整行替换为
\1-A
…好吧,我忘了背景,我的坏朋友。