Skip to content

Entwicklung

Jens Schwidder edited this page Jan 17, 2022 · 4 revisions

Entwicklung in mehreren Paketen

Manchmal müssen Änderungen in mehreren Repositorien vorgenommen werden, insbesondere beim Abbau von technischen Schulden, beim Aufräumen, um die Abhängigkeiten zwischen den Paketen zu reduzieren. Zum Beispiel kann es notwendig sein in opus4-common ein Interface zu definieren, in opus4-db (framework) zu implementieren und dann in application zu nutzen. Um möglichst einfach über mehrere Pakete hinweg entwickeln zu können, kann man in composer.json lokale Repositorien eintragen. Das entsprechende Paket wird dann lokal verlinkt, anstatt es von Packagist.org zu laden.

WICHTIG! Dieser lokale Eintrag in composer.json sollte nicht committed und zu GitHub gepushed werden. Bei der Entwicklung mit IntelliJ IDEA, lassen sich einzelne Änderungen in Dateien deselektieren. Dadurch kann man einfach andere Änderungen an composer.json committen.

Folgende Einträge in composer.json würden die lokale Version von opus4-common z.B. für die Entwicklung im Framework verfügbar machen, wenn das Git-Repository in das parallele Verzeichnis opus4-common geklont wurde.

"require": {
  "opus4-repo/opus4-common": "*",
},
...
"repositories": [
  {
    "type": "path",
    "url": "../opus4-common"
  }
]

Weiter Informationen finden sich in der Composer Dokumentation.

https://getcomposer.org/doc/05-repositories.md#path

Fehlermeldungen

Fehlermeldungen werden in die Log-Dateien im Verzeichnis workspace/log geschrieben. Es gibt zwei Workspace-Verzeichnisse. Das zweite Verzeichnis, tests/workspace, wird für die Unit-Tests verwendet.

Bei Fehlern in der Installation oder Konfiguration, die verhindern, dass das Logging mit Zend initialisiert werden kann, muss man in die Log-Dateien von Apache2 schauen, in der Regel unter /var/log/apache2.

Die OPUS 4 Application hat unterschiedliche Konfigurationen, abhängig vom Environment. Normalerweise läuft sie im production Modus. Für die lokale Entwicklung sollte auf testing oder development umgeschaltet werden. Dazu kann man in apache.conf, in der OPUS 4 Konfiguration für Apache 2, den entsprechenden Eintrag aktivieren.

SetEnv APPLICATION_ENV testing

Dadurch werden bei Fehlern ausführlicher Informationen im Browser angezeigt.

Clone this wiki locally