Ansible lineinfile экранировать специальные символы

Я пытаюсь заменить строку в удаленном файле, используя ansible,

Это php файл, содержащий:

'cache' => true,

Я пробовал много разных решений, но никто не работал. Я чувствую, что слишком близко, но не могу этого сделать. Не могли бы вы мне помочь?
Вот что я сделал:

lineinfile: "dest=/home/ubuntu/www/2.5.0/app/config/preprod/app.php regexp=^\'cache\'=> line=\'cache\' => {{ var }}"

var либо true, либо false, это параметр, установленный через командную строку. Вывод показывает, что строка добавлена. но это не то, что я хочу. Заранее спасибо.

1

Решение

Избегать использования param=value в сложных случаях используйте вместо этого стиль dict, его намного легче читать:

 - lineinfile:
dest: "/home/ubuntu/www/2.5.0/app/config/preprod/app.php"regexp: "^'cache' =>"line: "'cache' => {{ var | string | lower }},"
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]