Задать вопрос
@alvenysh

Как отредактировать nginx с помощью ansible?

Задача отредактировать файл не используя template
условно
ssl_certificate /etc/nginx/ssl/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/privkey.pem;

error_log syslog:server=<Адрес сервера SIEM>:<Порт сервера SIEM>,facility=local6,tag=siemnginxerrlog info;

access_log syslog:server=<Адрес сервера SIEM>:<Порт сервера SIEM>,facility=local6,tag=siemnginxacclog,severity=info combined;

всё это должно происходить в блоке server { }
какие при этом проблемы:
1 нельзя использовать template (а было бы так просто)
2 есть пересекающиеся значения
67d438c12197b912414619.jpeg
3 нельзя использовать ничего не из стандартных репозиториев (т.е. если даже есть в community или galaxy какая-нибудь подходящая коллекция, её использовать нельзя)
Что я пробовал и думал:
грепом найти значения не выйдет, т.к. есть пересекающиеся значения. Искать по полной строчке тоже не вариант, т.к. теоретически может быть такая ситуация, когда в строке у ip будет по ошибке одна цифра отличаться и тот же греп уже не найдет значения и я добавлю строку рядом.
По хорошему наверное нужен либо хороший awk скрипт, который будет искать только в нужном блоке (хотя спасёт ли это от задвоения?), либо что-то что я пропускаю.
Есть идеи как это организовать?
  • Вопрос задан
  • 312 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
может, вынести строки в отдельный файл, инклюдить его в конфиг NGINX, ansible'ом изменять тот отдельный файл.
Ответ написан
ky0
@ky0 Куратор тега Nginx
Миллиардер, филантроп, патологический лгун
Можно реализовать шаблонизацию на Jinja2 и не используя template - прямо внутри таски с set_fact, например. Это костыль, но условиям удовлетворяет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы