FriendsOfREDAXO / developer

Ermöglicht die Bearbeitung von Templates, Modulen und Aktionen im Dateisystem (also mit einem beliebigen Editor).
MIT License
90 stars 11 forks source link

Neuer Modus FORCE_FILES #66

Closed gharlan closed 6 years ago

gharlan commented 6 years ago

Bisher gibt es zwei Modi für die Synchronisation. Der normale Modus, wo je nach Zeitstempel der DB-Datensatz oder die Datei gewinnt. Und dann gibt es den force-Mode, wo immer die DB gewinnt. Dieser wird zum Beispiel nach einem Backup-Import ausgeführt.

Für YDeploy benötigt ich aber das Gegenteil, einen force-Mode, wo die Dateien gewinnen: https://github.com/yakamara/ydeploy/issues/7 Beim Deployen soll der per Dateien aufgespielte Stand garantiert werden.

Daher schlage ich vor, den force-Mode zu trennen in FORCE_DB und FORCE_FILES. YDeploy würde dann redaxo/bin/console developer:sync --force-files nutzen.

staabm commented 6 years ago

Ggf wäre es sinnvoll diesen mode generell für eine redaxo instanz festzulegen statt nur für einen commando aufruf...?

Aktuell stehst du in meinen augen vor dem problem dass du ggf. Jmd anderem seine arbeit überschreibst, die via webinterface gemacht wurde (oder umgekehrt).

Wenn man den mode in der instanz einstellt könnte man in der redaxo oberfläche das editieren sperren/eine warnung ausgeben, wenn via files gearbeiten werden soll/muss etc

gharlan commented 6 years ago

Aktuell stehst du in meinen augen vor dem problem dass du ggf. Jmd anderem seine arbeit überschreibst, die via webinterface gemacht wurde (oder umgekehrt).

Konkret in meinem/unseren Use case besteht das Problem nicht. Auf den Servern ist das Syncing im Backend und Frontend komplett ausgeschaltet, wird immer nur einmalig beim Deployen gesynct. Im Backend blenden wir da auch bereits die Module- und Template-Verwaltung aus.

Ganz allgemein magst du eventuell Recht haben. Finde es aber trotzdem gut, im Kommando diese Force-Options zu haben, und würde es daher erst mal so belassen, da uns das so erstmal reicht. Kann man ggf. wann anders aber so erweitern, dass der Default-Modus eingestellt werden kann.

staabm commented 6 years ago

Konkret in meinem/unseren Use case besteht das Problem nicht. Auf den Servern ist das Syncing im Backend und Frontend komplett ausgeschaltet, wird immer nur einmalig beim Deployen gesynct.

vllt würde es sinn machen ein initiales setup commando mit ydeploy zu haben, was einem diese einstellung vorschlägt? generell wäre vermutlich ein setup commando gut um die "remote-infos" vom user interaktiv zusammenzutragen, wenn sie noch nicht vorhanden sind?

gharlan commented 6 years ago

vllt würde es sinn machen ein initiales setup commando mit ydeploy zu haben, was einem diese einstellung vorschlägt? generell wäre vermutlich ein setup commando gut um die "remote-infos" vom user interaktiv zusammenzutragen, wenn sie noch nicht vorhanden sind?

Ja, ist geplant. https://github.com/yakamara/yak/issues/7 https://github.com/yakamara/ydeploy/issues/11