Neues Admin-Tool: BlackCat Updater (in Arbeit)

Benutzeravatar
shadowcat
Administrator
Beiträge: 5347
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von shadowcat »

Ich möchte Euch ein neues Admin-Tool vorstellen, das ich derzeit in Arbeit habe. Dieses überprüft die lokale BlackCat-Installation auf Aktualität, indem es von GitHub die Release-Informationen abruft.

Vorgehen:

Im ersten Schritt werden von GitHub die Releaseinformationen abgerufen. Hierzu wird die Versionsnummer der lokalen BlackCat-Installation verwendet und mit dem letzten verfügbaren Release bei GitHub verglichen. Standardmäßig werden hierbei Pre-Releases (also Alpha, Beta) aussortiert; wenn man diese auch angezeigt haben möchte, kann man das in der tool.php konfigurieren.
In diesem Beispiel wurde die zu überprüfende Version in der tool.php gezielt auf Alpha gesetzt, obwohl die Beta bereits installiert ist! Daher unterscheiden sich hier "Installierte Version" und "Überprüfte Version".
In diesem Beispiel wurde die zu überprüfende Version in der tool.php gezielt auf Alpha gesetzt, obwohl die Beta bereits installiert ist! Daher unterscheiden sich hier "Installierte Version" und "Überprüfte Version".
2014-11-04_190448.png (46.28 KiB) 7955 mal betrachtet
Wird bei dieser Prüfung festgestellt, daß eine neuere Version verfügbar ist, kann man im zweiten Schritt die Unterschiede herunterladen. Da das sehr lange dauern kann (die Informationen werden von GitHub heruntergeladen), wird danach wieder gestoppt. Zudem funktioniert dieser Schritt nur, wenn die 'max_execution_time' des Webservers mindestens 15 Sekunden beträgt. Die Prüfung erfolgt durch Anklicken des Buttons.
2014-11-04_191100.png
2014-11-04_191100.png (55.4 KiB) 7955 mal betrachtet
Die Seite wird während der Prüfung 2x neu geladen; den Fortschritt sieht man im "PROGRESS INFO" Panel. Nach dem 2. Reload der Seite werden einem die Unterschiede angezeigt, in diesem Fall: keine neuen, 20 geänderte und 2 gelöschte Dateien.

Wurden in diesem Schritt Änderungen festgestellt, kann man im dritten Schritt die neuen und geänderten Dateien herunterladen. Da auch das ziemlich lange dauern kann, werden "Häppchen" herunter geladen; die Seite wird mehrfach neu geladen, wobei man den jeweiligen Fortschritt jeweils im Status-Panel sehen kann. Das geschieht so lange, wie es noch Dateien zum Herunterladen gibt.
2014-11-04_191509.png
2014-11-04_191509.png (46.04 KiB) 7955 mal betrachtet
Die heruntergeladenen Dateien landen erst mal im temp-Verzeichnis. Da man gelöschte Dateien nicht herunterladen kann, fehlen diese natürlich. ;)

Das ist der Teil, der bisher fertig ist. Die nächsten Schritte sehen dann ungefähr so aus:
  • Um die gelöschten Dateien zu löschen, muß eine update.php o.ä. erzeugt werden.
  • Die geänderten Dateien müssen auf Anforderung in die "echten" Verzeichnisse kopiert werden.
  • Die überschriebenen Dateien sollten vorher gesichert werden.
  • Es muß eine Art automatische update.php ausgeführt werden.
Vorschläge und Anmerkungen sind wie immer willkommen!

Konfigurationsmöglichkeiten:
  • Man kann bei Bedarf einen Proxy konfigurieren
  • Wer Pre-Releases herunterladen will (natürlich nicht für Produktivumgebungen empfohlen), kann einen Schalter setzen
  • Für Testumgebungen (wie meine) kann man gezielt eine Version vorgeben, gegen die geprüft werden soll
Alle Einstellungen müssen von Hand in der tool.php vorgenommen werden, es wird dafür keine Klicki-Klacki-Einstellungenseite geben. Das mache ich bewußt so, damit unerfahrene Anwender den Updater nicht versehentlich ver-konfigurieren und sich damit ihre Umgebung versaubaseln. Die Hemmschwelle, in einer Datei rumzufummeln, ist höher, als wenn man das mal eben so in der GUI machen kann. ;)
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
Benutzeravatar
shadowcat
Administrator
Beiträge: 5347
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von shadowcat »

Noch ein Hinweis zu dem "DEBUG INFO" Panel: In der Release-Version wird das standardmäßig ausgeblendet sein. Man kann es dann bei Bedarf (=wenn ich es sage *g*) wieder einschalten.
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
Benutzeravatar
MK70
Beiträge: 238
Registriert: Sa 21. Dez 2013, 15:38
Wohnort: 47809 Krefeld
Kontaktdaten:

Re: Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von MK70 »

Morgen 8-)

Die Idee mit Updates über das System selbst ist sehr gut (macht wbb auch). 8-)
Und es vereinfacht vieles, weil man nicht mehr selbst in den Dateien "rum matschen" muss... ;)

Ob ich nachher alles angezeigt bekommen muss, weiß ich allerdings nicht.
Mir reicht am Ende der Status, dass die Updates runter geladen und installiert wurden. ;)
Mit creativen Grüßen
MK
Benutzeravatar
Morpheus
Beiträge: 1054
Registriert: Do 8. Aug 2013, 10:49
Kontaktdaten:

Re: Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von Morpheus »

Super!

Mit alles sehen finde ich besser!
Man könnte vieleicht eine schalter setzen (details).

Anmerkung für die tool.php. Wäre das nix für den editor im kitframework, dann könnte man sich das ftp "Getönse" sparen.
Keiner ist unnütz, er kann immer noch als schlechtes Beispiel dienen!
Benutzeravatar
shadowcat
Administrator
Beiträge: 5347
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von shadowcat »

AFE?
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
Benutzeravatar
shadowcat
Administrator
Beiträge: 5347
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von shadowcat »

Noch eine Anmerkung zum "internen Update": Das ist nicht ganz ungefährlich, weshalb wir das bisher immer zurückgestellt haben. Denken wir mal an die WB-Downloads, die vor ein paar Monaten gehackt wurden und Schadcode verbreiteten - wenn so ein Hacker eine Update-Quelle infiziert, verteilt sich der Schadcode hübsch vollautomatisch auf die angeschlossenen Systeme. :shock:

Mit GitHub als Quelle hoffen wir, wenigstens einigermaßen sicher zu sein. Zudem muß man das Update immer noch manuell anstoßen und schrittweise durchführen - das ist also nicht ganz ungewollt immer noch ein bißchen "umständlich". ;) Weitere Mechanismen können wir dann nach und nach umsetzen, z.B. ist ja (immer noch) ein RSS-Wigdet für das Dashboard angedacht, wo man dann z.B. auch Sicherheitswarnungen anzeigen kann.
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
Benutzeravatar
shadowcat
Administrator
Beiträge: 5347
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von shadowcat »

Hier mal eine erste Testversion für Mutige. :D Installiert wird nichts, man kommt maximal bis zum Runterladen der Dateien nach ./temp/gittemp/<ID>.

Edit: Anhang entfernt.
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
nicoletta
Beiträge: 139
Registriert: Mi 29. Okt 2014, 17:55
Wohnort: Oldenburg

Re: Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von nicoletta »

Wäre es nicht möglich das eine Prüfsumme erzeugt wird die vom Updatescript verglichen wird?
Bei Nichtübereinstimmung wird das Update mit entsprechender Meldung nicht gestartet.
Benutzeravatar
shadowcat
Administrator
Beiträge: 5347
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von shadowcat »

Schon, aber auch die Prüfsumme muß ja irgendwo stehen, und wenn ein Hacker schon im System ist, kann er die auch gleich mit fälschen. ;)

Wie gesagt, Updates von GitHub halte ich für ziemlich sicher, zumal man es sehr schnell erfahren würde, wenn da was passieren würde.
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
Benutzeravatar
Morpheus
Beiträge: 1054
Registriert: Do 8. Aug 2013, 10:49
Kontaktdaten:

Re: Neues Admin-Tool: BlackCat Updater (in Arbeit)

Beitrag von Morpheus »

Ich war mal mutig!

Installation --> IO
Durchgelaufen, einige Dateien runtergeladen!
files.jpg
files.jpg (38.14 KiB) 7922 mal betrachtet
Sieht doch bis jetzt gut aus :D
Keiner ist unnütz, er kann immer noch als schlechtes Beispiel dienen!
Antworten