From f505e9ebeb528721cb34047e8e48a79eb9a8df47 Mon Sep 17 00:00:00 2001 From: Anton Vakhrushev Date: Sat, 25 Jul 2026 12:30:41 +0300 Subject: [PATCH] =?UTF-8?q?backlog:=20=D0=BE=D1=82=D0=BC=D0=B5=D1=87=D0=B5?= =?UTF-8?q?=D0=BD=20=D1=81=D0=B4=D0=B5=D0=BB=D0=B0=D0=BD=D0=BD=D1=8B=D0=B9?= =?UTF-8?q?=20=D1=88=D0=B0=D0=B3=20=D1=81=20no=5Flog?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Первый шаг задачи закрыт коммитом b7b1f49; остались вынос секретов в файлы и проверка от дрейфа. - Записано исключение: compose miniflux оставлен без no_log, из vault он тянет только имя пользователя и имя базы. --- docs/backlog/no-secrets-in-playbook-output.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/docs/backlog/no-secrets-in-playbook-output.md b/docs/backlog/no-secrets-in-playbook-output.md index 4768615..53315c6 100644 --- a/docs/backlog/no-secrets-in-playbook-output.md +++ b/docs/backlog/no-secrets-in-playbook-output.md @@ -55,8 +55,12 @@ dozzle, goaccess, rssbridge, homepage. ## Порядок -1. `no_log: true` на весь инвентарь выше — дёшево, закрывает целиком и сразу, - независимо от того, поедут ли структурные задачи. +1. ~~`no_log: true` на весь инвентарь выше~~ — **сделано** (коммит `b7b1f49`, + 2026-07-25): пятнадцать задач-рендеров и три `docker_login`, всего 13 + плейбуков. Не под `no_log` осталась одна задача — compose miniflux: он тянет + из vault только `miniflux_postgres_user` и `miniflux_postgres_database`, а это + имя пользователя и имя базы, не секреты (в `secrets_vars` роли `secrets` их + нет). Дифф образцового файла оставлен читаемым сознательно. 2. Где файл смешанный (compose, конфиг authelia) — вернуться и вынести секреты в отдельные файлы, сняв `no_log` с основного: он нужен ради диффа, который сейчас и теряется. Что именно умеет каждое приложение — матрица в @@ -71,7 +75,10 @@ dozzle, goaccess, rssbridge, homepage. 3. Защита от дрейфа: проверка в lefthook или CI — если шаблон ссылается на переменную, которой нет в открытых `group_vars`/`vars`, задача, которая его рендерит, обязана иметь `no_log`. Иначе следующее приложение заведут по - образцу без него. + образцу без него. Единственное исключение на сегодня — miniflux (см. шаг 1); + чище не заводить исключение в правиле, а перенести `miniflux_postgres_user` и + `miniflux_postgres_database` из vault в `group_vars/all/main.yml` — секретами + они не являются. Правка в зашифрованном файле, поэтому за пользователем. Готово, когда первый (создающий все файлы) прогон любого плейбука не печатает ни одного значения из vault, и это держится проверкой, а не вниманием.