it-at-m / digiwf-core

central workflow automation and integration platform based on the free process framework Camunda.
MIT License
19 stars 7 forks source link

Prozess-Instance-Config überschreibt S3-Default-Config #468

Open darenegade opened 1 year ago

darenegade commented 1 year ago

Describe the bug Obwohl die ursprüngliche Prozess-Config die S3-URL nicht überschreibt, liegt im Prozess eine alte Default-Config vor. Das Problem betrifft nur Prod. Hier wurde in der Process-Config der Wert app_file_s3_sync_config nicht überschrieben.

Vermutung: Die Default-Werte werden beim Start des Prozesses gesetzt und bleiben dann erhalten über die Laufzeit. Änderung der Default-Werte bei einem Release migriert nicht die alten Instanz-Werte

To Reproduce Steps to reproduce the behavior: Siehe internes Ticket

Expected behavior Default-Prozess Config, die nicht überschrieben wird, sollte dynamisch von der Plattform gesteuert werden können

Additional context https://github.com/it-at-m/digiwf-core/blob/dev/digiwf-engine/digiwf-engine-service/src/main/java/io/muenchendigital/digiwf/process/definition/domain/facade/ServiceDefinitionFacade.java#L61

https://git.muenchen.de/digitalisierung/digiwf-support/-/issues/308

darenegade commented 1 year ago

@dominikhorn93 Gibt es einen Grund, warum die Werte beim Start vom Prozess gesetzt werden und nicht dynamisch an der Stelle genutzt werden, wo sie gebraucht werden, wenn sie nicht vorhanden sind?

dominikhorn93 commented 1 year ago

Das ist eine gute Frage. Ich glaube das ursprüngliche Konzept sah so aus, dass gar nichts mehr dynamisch ah-hoc geladen wird. Sondern wir zum Prozesstart die Config als JSON Blob mit rein geben und dann daraus lesen. Wenn wir das anders machen, ist die Nachvollziehbarkeit usw. nicht leicht.

Wenn wir weiter über das Bundle Konzept und die Schema-Registry sprechen, könnten sich da aber auch andere Möglichkeiten ergeben.

darenegade commented 1 year ago

Wenn wir das anders machen, ist die Nachvollziehbarkeit usw. nicht leicht.

Wenn nicht gesetzt als Var, dann Default Werte in Doku nachschauen.

Okay, dann müssen das Thema hier mal strategisch durchleuchten, wie dynamisch wir sein wollen und an welcher Stelle. Aber grundsätzlich ist das Verhalten dann kein Bug, sondern aktuell gewollt.