handlers рестарта для apprise, dashboard, transcriber, miniflux
- правка bind-моунтнутого конфига раньше не подхватывалась до пересоздания контейнера; теперь template/secrets шлют notify на рестарт - miniflux: убран recreate: always, вместо него точечный рестарт miniflux_app по изменению файлов секретов, postgres больше не дёргается - goaccess: рестарт не нужен, build: always пересоздаёт контейнер по новому id образа — зафиксировано комментарием
This commit is contained in:
+19
-1
@@ -37,9 +37,13 @@
|
||||
- "{{ postgres_data_dir }}"
|
||||
- "{{ postgres_backups_dir }}"
|
||||
|
||||
# notify на import_role наследуется всеми задачами роли: рестарт нужен,
|
||||
# если изменился любой файл секретов — miniflux читает их через *_FILE
|
||||
# только при старте.
|
||||
- name: "Copy secrets"
|
||||
ansible.builtin.import_role:
|
||||
name: secrets
|
||||
notify: "Restart application"
|
||||
vars:
|
||||
secrets_dest: "{{ secrets_dir }}"
|
||||
secrets_user: "{{ app_user }}"
|
||||
@@ -72,7 +76,21 @@
|
||||
community.docker.docker_compose_v2:
|
||||
project_src: "{{ base_dir }}"
|
||||
state: "present"
|
||||
recreate: "always"
|
||||
remove_orphans: true
|
||||
tags:
|
||||
- run-app
|
||||
|
||||
handlers:
|
||||
# Приложение читает секреты только при старте, а `state: present` не
|
||||
# пересоздаёт контейнер, если docker-compose.yml не изменился, — поэтому
|
||||
# правку применяет только явный рестарт.
|
||||
- name: "Restart application"
|
||||
community.docker.docker_compose_v2:
|
||||
project_src: "{{ base_dir }}"
|
||||
# Только сам miniflux: базу дёргать незачем, пароль postgres читается
|
||||
# из тех же секретов лишь при инициализации кластера.
|
||||
services:
|
||||
- "miniflux_app"
|
||||
state: "restarted"
|
||||
tags:
|
||||
- run-app
|
||||
|
||||
Reference in New Issue
Block a user