:uk: Installing a patch from GitHub


In der Regel werden ca. alle 4 Wochen neue Installation-/Update-Pakete bzw. ein EGroupware-Docker-Container “gebaut”. Wenn einem das zu lang ist oder im Vorfeld getestet werden soll, stehen gefixte Dateien in GitHub zum herunterladen zur Verfügung.

Zu beachten ist:

  • einzelne Commits können aufeinander aufbauen, dh. man kann in der Regel nur einen Commit als patch installieren der nur Dateien modifiziert die seit dem Maintenance Release nicht anderweitig geändert wurden
  • Änderungen an JavaScript oder CSS Dateien funktionieren nur, wenn danach das Minifying unter Admin >> Administration >> Konfiguration der Anwendung ausgeschaltet wird

Vorgehen

Man benötigt die URL des Commits (bevorzugt aus dem aktuellen release Branch). Z.B.


An diese URL muss dann .patch angehangen werden und die folgenden Kommandos ausgeführt werden:

export patch=https://github.com/EGroupware/egroupware/commit/601cf51b7febdf97d2bb0460dd47eeba12449920.patch

cd /etc/egroupware-docker

curl $patch | docker exec -i egroupware patch -p1 -d /usr/share/egroupware-sources

# falls der Patch .ts oder .js Dateien ändert, muss das JavaScript neu gebildet werden:
docker exec egroupware bash -c "cd /usr/share/egroupware-sources; npm run build"

docker-compose restart egroupware

Falls etwas im Container kaputt geht (z.B. Konflikt beim Installieren des Patches) stellt man mit den folgenden Kommandos einfach den ursprünglichen Zustand des Containers wieder her:

cd /etc/egroupware-docker
docker-compose stop
docker-compose rm -f
docker-compose up -d

Für EGroupware <19.1 und Installationen ohne Docker ist die gefixte Datei herunter zu laden und die Datei in der EGroupware-Installation entsprechend zu ersetzen. Danach ist ein Neustart des Webservers und ein löschen des Webbrowser-Caches sinnvoll/notwendig.
Die auszutauschenden Dateien sollten gesichert bzw. umbenannt werden. Somit kann man die Änderungen leicht wieder Rückgängig machen.

Suggested Topics

Want to read more? Browse other topics in Anleitungen or view latest topics.