Я пытаюсь использовать Ansible для замены образца текста переменной. Я пробовал использовать кавычки, "" и '', но, похоже, ничего не работает. Я также пробовал использовать модуль replace и модуль lineinfile.
Пожалуйста, дайте мне знать, что я делаю не так.
- hosts: 10.1.1.10
become: yes
vars:
server1:
1a: "ED:5A:13:AA:34:20"
2a: "ED:5A:13:AA:34:21"
tasks:
- name: Replace mac address in file
lineinfile:
path: /tmp/file.json.j2
regexp: 'FILL_THIS_IN'
line: "{{ server1.1a }}"
Отрывок из документация о переменных:
Имена переменных должны состоять из букв, цифр и знаков подчеркивания. Переменные всегда должны начинаться с буквы.
Итак, вам следует провести рефакторинг, чтобы:
server1:
a1: "ED:5A:13:AA:34:20"
a2: "ED:5A:13:AA:34:21"
и в коде:
line: "{{ server1.a1 }}"