Lokale Konfiguration #106

Open
opened 11 months ago by christian.merten · 1 comments

Damit der Kompass bei gleichbleibender Codebase in mehreren Sektionen eingesetzt werden kann, müssen noch weitere personalisierte Daten aus dem settings/local.py extern konfigurierbar werden.

  • Die einfache Lösung ist, die alle auch noch aus environment variablen zu lesen und es dann im lokalen docker.env zu konfigurieren. Das wird aber irgendwann einfach sehr unübersichtlich.
  • Langfristig hätte ich gerne eine schön strukturierte .yaml (oder .toml oder was immer) Konfigurationsdatei (mit .gitignore eintrag), aus der alles ausgelesen wird. Natürlich mit config.yaml.example Datei im repository mit dummy daten.
Damit der Kompass bei gleichbleibender Codebase in mehreren Sektionen eingesetzt werden kann, müssen noch weitere personalisierte Daten aus dem `settings/local.py` extern konfigurierbar werden. - Die einfache Lösung ist, die alle auch noch aus environment variablen zu lesen und es dann im lokalen `docker.env` zu konfigurieren. Das wird aber irgendwann einfach sehr unübersichtlich. - Langfristig hätte ich gerne eine schön strukturierte `.yaml` (oder `.toml` oder was immer) Konfigurationsdatei (mit `.gitignore` eintrag), aus der alles ausgelesen wird. Natürlich mit `config.yaml.example` Datei im repository mit dummy daten.
christian.merten added the
Effekt
Infrastruktur
label 11 months ago
Poster
Owner

Habe gerade den größten Teil davon umgesetzt. Das neue Setup sieht so aus:

  • Lokal existiert ein directory config.
  • Die lokale Konfiguration passiert weitestgehend in config/settings.toml.
  • Zusätzlich kann man ein config/texts.toml anlegen, um alle E-Mail Texte zu verändern.
  • Zusätzlich können alle templates überschrieben werden, indem das entsprechende template mit dem richtigen Dateinamen unter config/templates/<..> angelegt wird. Zum Beispiel verwenden wir das um das Dummy-Anmeldeformular im Kompass repository durch ein customized JDAV Heidelberg Anmeldeformular zu ersetzen. Das liegt dann dementsprechend unter config/templates/members/registration_form.tex. Aber auch das Impressum ist nun unter config/templates/startpage/impressum_content.html.

Mein empfohlenes Setup ist also:

  • Im Ordner, in dem die production docker-compose.yaml liegt, einen Ordner config mit git repository anlegen.
  • Lokale Konfiguration wie oben beschrieben dort vornehmen.
  • das Konfigurations repository privat irgendwo hosten. Ich habe jetzt hierzu für Heidelberg digitales/kompass-dev-config und digitales/kompass-config angelegt.

Damit ist dieses repository nun wieder weitestgehend Heidelberg-frei. Verbleibende Aufgaben:

  • es gibt noch zwei Übersetzungen, die @jdav-heidelberg.de enthalten
  • die JDAV Logos sind noch Heidelberg spezifisch, die werde ich denke ich mit generischen JDAV Logos ersetzen und dann kann man die lokal über das config/templates/ directory überschreiben.
  • Das neue Setup dokumentieren :)
Habe gerade den größten Teil davon umgesetzt. Das neue Setup sieht so aus: - Lokal existiert ein directory `config`. - Die lokale Konfiguration passiert weitestgehend in `config/settings.toml`. - Zusätzlich kann man ein `config/texts.toml` anlegen, um alle E-Mail Texte zu verändern. - Zusätzlich können alle templates überschrieben werden, indem das entsprechende template mit dem richtigen Dateinamen unter `config/templates/<..>` angelegt wird. Zum Beispiel verwenden wir das um das Dummy-Anmeldeformular im Kompass repository durch ein customized JDAV Heidelberg Anmeldeformular zu ersetzen. Das liegt dann dementsprechend unter `config/templates/members/registration_form.tex`. Aber auch das Impressum ist nun unter `config/templates/startpage/impressum_content.html`. Mein empfohlenes Setup ist also: - Im Ordner, in dem die production `docker-compose.yaml` liegt, einen Ordner `config` mit git repository anlegen. - Lokale Konfiguration wie oben beschrieben dort vornehmen. - das Konfigurations repository privat irgendwo hosten. Ich habe jetzt hierzu für Heidelberg `digitales/kompass-dev-config` und `digitales/kompass-config` angelegt. Damit ist dieses repository nun wieder weitestgehend Heidelberg-frei. Verbleibende Aufgaben: - [x] es gibt noch zwei Übersetzungen, die `@jdav-heidelberg.de` enthalten - [ ] die JDAV Logos sind noch Heidelberg spezifisch, die werde ich denke ich mit generischen JDAV Logos ersetzen und dann kann man die lokal über das `config/templates/` directory überschreiben. - [x] Das neue Setup dokumentieren :)
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: digitales/kompass#106
Loading…
There is no content yet.