Worum es geht
Manche Vorlagen gehören zu einem Build. Sie liegen im Quellcode einer Anwendung, werden mit ihr geprüft und getestet und sollen nach dem Start einfach da sein. CRMS hat dafür keinen Sonderweg: keinen Vorlagenordner, den es selbst liest, und keine Vorlage, die an der Kette vorbeigeht.
Der Ablauf
-
1Anwendung→CRMSmeldet sich als Plattform-Administrator an: eine feste Kennung als Autor, die Administrator-Rollen aus CIAS, kein Mandant
-
2Anwendung→CRMSlegt die System-Ausgabe an, falls es sie noch nicht gibt, und je Sprache die Variante
-
3Anwendung→CRMSliest die veröffentlichte Revision der Variante
-
4AnwendungIst ihr Quelltext gleich dem aus dem Build?
-
5Anwendunggleich → nichts tun, keine neue Revision
-
6Anwendung→CRMSanders oder noch nichts veröffentlicht → Entwurf speichern und mit Grund einreichen
-
7CRMSdie Freigabekette des Scopes
SYSTEMentscheidet, wie bei jeder VorlageErgebnis: ohne Stufen sofortPUBLISHED, sonstIN_REVIEW
Weil die Anwendung nur bei einem Unterschied einreicht, ändert ein Start mit unverändertem Build nichts an der Kette. Eine geänderte Vorlage im neuen Build wird genau eine neue Revision.
Wann: es gibt die Vorlage noch nicht
Ausgabe und Varianten entstehen, jede Variante bekommt ihre erste Revision.
Ergebnis: Revision 1 je Sprache, ohne Freigabestufen PUBLISHED
Wann: der Quelltext im Build ist gleich der veröffentlichten Revision
Die Anwendung reicht nichts ein.
Ergebnis: keine neuen Einträge
Wann: ein neuer Build bringt einen anderen Quelltext
Nur die geänderte Variante bekommt eine neue Revision. Die übrigen bleiben, wie sie sind.
Ergebnis: neue Revision, die vorige wird SUPERSEDED
Wann: das Projekt hat für SYSTEM eine Freigabekette
Die eingereichte Revision wartet in IN_REVIEW, bis Menschen sie freigeben. Bis dahin rendert die vorige Revision. Solange eine Revision in Prüfung ist, endet ein weiteres Einreichen mit 409 template-review-pending.
Ergebnis: Freigabe wie bei jeder System-Vorlage
Das Beispiel: die Berichte des Hubs
Der Hub rendert seine Projektdokumente mit einem eingebetteten CRMS: die arc42-Architekturdokumentation, die Datenklassifizierung und das Betriebshandbuch. Die Vorlagen liegen im Build unter crms-templates/.
| Bericht | Schlüssel DOCUMENT (PDF, HTML) | Schlüssel WORD (DOCX) | Sprachen |
|---|---|---|---|
| arc42 | arc42 | arc42-word | de (Standard), en |
| Datenklassifizierung | privacy | privacy-word | de (Standard), en |
| Betriebshandbuch | runbook | runbook-word | de (Standard), en |
Jeder Bericht sind zwei Schlüssel, weil die Ausgabeart die Formate festlegt. Die Dateien heißen <schlüssel>/<sprache>.xhtml.ftl für DOCUMENT und <schlüssel>-word/<sprache>.xml.ftl für WORD.
Als Autor steht hub-backend in der Kette, als Grund „Template shipped with the hub-backend build”. Der Hub legt für SYSTEM keine Freigabestufen fest. Seine Vorlagen sind also nach dem Einreichen sofort veröffentlicht. Wie der Hub sie dann rendert, steht unter Beispiel: die Berichte des Hubs.