Part-DB-server/src/EventSubscriber
Sebastian Almberg d346708150
Add Docker update support via Watchtower integration (#1330)
* Add Docker update support via Watchtower integration

Add web-based Docker container updates using Watchtower HTTP API.
When configured with WATCHTOWER_API_URL and WATCHTOWER_API_TOKEN
environment variables, administrators can trigger container updates
from the Update Manager page.

Features:
- WatchtowerClient service for Watchtower HTTP API communication
- Docker update progress page with animated Docker whale logo
- Real-time step tracking: Trigger, Pull, Stop, Restart, Health Check, Verify
- CSP-compatible progress bar using CSS classes
- Translated UI strings via Stimulus values
- Health endpoint polling to detect container restart
- Watchtower setup documentation for Docker installations
- WatchtowerClient made nullable for non-Docker installations
- Unit tests for WatchtowerClient

* Fixed translation message IDs

* Switch Watchtower docs to maintained nicholas-fedor fork

The original containrrr/watchtower is no longer maintained (last release
Nov 2023). Point users to the drop-in compatible active fork and add an
info note explaining why. No code changes — the HTTP API is identical,
so WatchtowerClient works against either image.

* Fixed exception when github is not reachable

* Only show version string in health endpoint, when user has permissions

* Do not expose watchtower API port in example docker-compose file

* Show if updates, backup restore and backup download are allowed in update manager page

* Report 'not authorized' for version in health endpoint if user lacks permission

---------

Co-authored-by: Jan Böhmer <mail@jan-boehmer.de>
2026-05-03 23:00:31 +02:00
..
LogSystem Moved deprecated doctrine subscribers to doctrine event listeners 2024-06-21 23:41:22 +02:00
UserSystem Ran rector 2026-02-14 23:33:40 +01:00
MaintenanceModeSubscriber.php Add Docker update support via Watchtower integration (#1330) 2026-05-03 23:00:31 +02:00
RedirectToHttpsSubscriber.php Fixed phpunit tests caused by typo in Autowire attribute 2024-01-26 00:12:37 +01:00
SetMailFromSubscriber.php Applied rector with PHP8.1 migration rules 2023-06-11 14:17:19 +02:00
SwitchUserEventSubscriber.php Fixed some deprecations related to missing return types 2023-10-25 17:27:37 +02:00