EF-005
EF-005 – User systemd services must not depend on system services#
Kategorie#
Deployment
Kontext und Beobachtung#
Der erste Testservice wurde als User-systemd-Unit installiert und enthielt After=mariadb.[[EA-GLOSS-SERVICE-001|service]] sowie Requires=mariadb.service.
Symptom#
systemctl --user restart engineering-platform-test.service schlug vor dem eigentlichen Prozessstart fehl. Zunächst entstanden keine Prozesslogs.
Ursache#
User- und System-systemd besitzen getrennte Manager und Lifecycle-Grenzen. Eine User-Unit kann die systemweite MariaDB-Unit nicht als direkte Requires=-Abhängigkeit verwalten.
Engineering Rule#
User-services dürfen keine direkten Lifecycle-Abhängigkeiten auf System-services definieren.
Systemdienste werden vor Deployment beziehungsweise über Health Checks verifiziert.
Architektur-Auswirkung#
Die User-Unit verwendet nur After=network.target. MariaDB-Verfügbarkeit ist Bestandteil der Deployment- und späteren Runtime-Verification.
Implementierung und Verifikation#
Die Unit-Vorlage wurde gehärtet. Ein Unit-Contract-Test verhindert die erneute Aufnahme von Requires=mariadb.service.
Evidence#
Der Testservice startete anschließend als active (running) und /health meldete status=UP.
Beziehungen#
- MeaningADR-009 – Engineering-Roundtrip umfasst Test-Deployment und EvidenceOrdnet Testdeployment, Verification und Evidence als vollständige Engineering Execution ein.Vollständig lesen — informs
Weitere Hinweise#
- EP-002.0B Service Deployment
- EF-006