Hauptmenü

Updates

Begonnen von P.A.Trick, 09 Mai 2021, 09:07:49

Vorheriges Thema - Nächstes Thema

jemu75

Zitat von: Benni am 14 Mai 2021, 22:34:02
Hallo Jens,

genau da sehe ich halt auch das Problem! Das ganze funktioniert erst mal nur auf Linux und ob git und rsync überall auf Anhieb vorhanden sind? Das wäre auf jeden Fall eine zusätzliche Hürde.

Außerdem schaffst du damit quasi eine 3. Update-Variante, abseits von FHEM-update vom Standard SVN (1.) oder durch Einbindung von git repositories in den normalen Update-Prozess (2.)

Weitere Probleme sind damit auch nur bedingt gelöst. Durch das Ausschließen des cfg Verzeichnisses kannst du im Update-Prozess keine neuen Templates in diesem Folder ausliefern. So gesehen ist auch nur der Update-Prozess abgedeckt. Die Erstinstallation muss immer noch von Hand durchgeführt werden. Dies könnte bei der Verwendung von FHEM-Update mit git-Repository (o.g. Methode 2), soweit ich das sehe, mit abgedeckt werden.

Auch sind die Template-Files im cfg-Folder nach wie vor nicht ohne weiteres in FHEM editierbar, auch hier muss weiter manuell Hand angelegt werden.

Was allerdings auch immer in betracht gezogen werden muss, ist der ursprüngliche Ansatz, mit dem fhemapp kam, nämlich der, mit einem beliebigen http-Service unabhängig von FHEM eingesetzt werden zu können. Das ist immer noch eine legitime Anforderung! ;)

Ich denke, mit so einem einfachen (bash-)Skript lässt sich wohl erst mal eine schnelle Interimslösung schaffen, die 80% (+) der Fälle abdeckt. Für's Erste besser als nix und besser, als wenn sich jeder eine eigene Lösung strickt.

Nichts desto trotz glaube ich, dass eine Integration in den FHEM-Update-Prozess langfristig die bessere Lösung ist.

Ich hoffe, es hat sich jetzt nicht zu sehr nach Kritik angehört, in allererster Linie waren das nur mal die Gedanken, die ich so spontan dazu hatte.  :)

gb#

Sehr gutes Feedback. Sowas bringt das Projekt doch letztlich voran! Also dann geht's zurück ans Reisbrett für die nächste (bessere) Lösung.  :)

P.A.Trick

Zitat von: Benni am 09 Mai 2021, 11:53:56
Ich habe mir auch mit git was eingerichtet:

Ich habe einen Clone des FHEMAPP github repository auf meinem FHEM-Server, den ich bei Bedarf einfach per git pull updaten kann.

Den Ordner fhemapp/www/fhemapp habe ich per ln in direkt in meine FHEM-Installation unter www verlinkt.
Meine eigenen Templates (heißen alle templ_my*.json) habe ich in der FHEM-Installation im Verzeichnis conf liegen (s.u.) und dann, ebenfalls per ln ins cfg-Verzeichnis der fhemapp installation rein-gelinkt.
Für meine Änderungen habe ich einen eigenen lokalen branch "my", in dem ich arbeite und der standardmäßig ausgecheckt ist.

Spätestens bei einem Update committe ich alles im Branch "my", checke den "master"-Branch aus, und hole den aktuellen Stand per git pull, danach checke ich wieder meinen branch aus und bringe den mit git rebase master auf den aktuellen Stand.

Eigentlich ziemlich Easy!

Die eigenen Templates liegen bei mir deshalb im conf-Ordner in der FHEM-Installation (normalerweise /opt/fhem/conf), weil ich die dann direkt im FHEMWEB editieren kann.
Damit das klappt, muss ich die nur noch in FHEM bekannt machen. Das habe ich bei mir mit einem einfachen notify geregelt, das genau das beim FHEM-Start für mich übernimmt:


defmod nyFhemAppEditFiles notify global:INITIALIZED {\
$data{confFiles}{'templ_my.*\.json'} = '0';;\
$data{confFiles}{'config.json'} = '0';;\
}


Wie ich gerade sehe, liegt dort aus dem selben Grund auch meine config.json :)

Weiterer Vorteil ist, das conf-Verzeichnis ist standardmäßig Teil des fhem-Backups und somit werden die Dateien bei mir täglich automatisch mit gesichert.

Klingt komplizierter, als es ist.
Wenn es einmal eingerichtet ist, dann ist das flott und einfach.

Ach ja, bei der Ersteinrichtung ggf. auf die Berechtigungen achten. FHEM braucht halt die nötigen Berechtigungen fürs Editieren (chown fhem:dialout ...)

gb#

Super Idee, bin ich gar nicht drauf gekommen. Ich habe das mal eingerichtet und es ist super. Vielen Dank für den Tipp.
PS: Läuft im fhemdocker super, da hat man dann auch keine Rechte Probleme.
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn