63 lines
2.4 KiB
Markdown
63 lines
2.4 KiB
Markdown
# Portal Sync Flow
|
|
|
|
## Ziel
|
|
|
|
Der Styleguide bleibt in diesem Repository die Source of Truth. Der Sync verteilt den freigegebenen Stand in beide Portal-Repos:
|
|
|
|
- den deploy-relevanten CSS-Upstream versioniert als `public/assets/styleguide.upstream.css`
|
|
- die vollstaendige Styleguide-Dokumentation gespiegelt nach `docs/styleguide`
|
|
- die portal-spezifische Fertig-CSS-Datei als `public/assets/styles.css`
|
|
- die konsumierbare Large-Table-Runtime als `public/scripts/large-table-column-resize.js`
|
|
|
|
Zielrepos:
|
|
|
|
- `WebApp_Aktienberater`
|
|
- `erp_naurua`
|
|
|
|
## Vorbereitung
|
|
|
|
- Version in `VERSION` erhoehen, sobald ein freigegebener Stand vorliegt.
|
|
- Aenderungen im Styleguide committen und pushen.
|
|
|
|
## Sync ausfuehren
|
|
|
|
Beispiel:
|
|
|
|
```bash
|
|
./scripts/sync_styleguide_to_webapp_aktienberater.sh \
|
|
--commit-portal
|
|
```
|
|
|
|
## Ergebnis im Portalrepo
|
|
|
|
- `public/assets/styleguide.upstream.css` aktualisiert
|
|
- `public/assets/styleguide.upstream.meta.json` aktualisiert (Version, Commit, Zeitstempel)
|
|
- `docs/styleguide` gespiegelt (mit `--delete`, ohne `.git`, `.codex`, `AGENTS.md` und interne `scripts/`)
|
|
- `public/scripts/large-table-column-resize.js` aus der Styleguide-Source-of-Truth kopiert
|
|
- `public/assets/styles.css` aktualisiert
|
|
- `public/scripts/large-table-column-resize.js` aktualisiert; lokale Portal-Kopien sind nicht zulässig
|
|
- Optional: automatischer Commit + Push im Portalrepo
|
|
|
|
## Standardprozess je Release
|
|
|
|
1. Styleguide aendern
|
|
2. `VERSION` erhoehen
|
|
3. Styleguide commit + push
|
|
4. Sync-Skript ausfuehren
|
|
5. Beide Portalrepos Smoke-Testen
|
|
|
|
## Large-Table-Runtime
|
|
|
|
Die Runtime liegt ausschließlich im Styleguide unter `scripts/large-table-column-resize.js`.
|
|
Der Sync kopiert nur diese explizit freigegebene Runtime nach `public/scripts/`; andere
|
|
Styleguide-Scripts wie Prüf- und Sync-Shellscripts werden nicht in `docs/styleguide/scripts/`
|
|
gespiegelt. Dadurch bleibt der Styleguide die Source of Truth und ein erneuter Sync
|
|
überschreibt die Portaldatei kontrolliert.
|
|
|
|
Für den Smoke-Test in beiden Portalen ist zu prüfen:
|
|
|
|
- `public/scripts/large-table-column-resize.js` ist vorhanden und unter `/scripts/large-table-column-resize.js` ladbar.
|
|
- Die Large-Table-Seite lädt die Runtime ohne lokale Inline- oder Duplikatimplementierung.
|
|
- Nach einer Spaltenbreitenänderung wird der Eintrag unter `sg:large-table:column-widths:<key>` gespeichert.
|
|
- Ein erneuter Sync ersetzt die Datei aus der Styleguide-Quelle.
|