Eine einfache Lösung für Anwendungen mit MySQL-Anbindung
Natürlich braucht ein eigenes Framework auch eine Versionskontrolle über Scripts, Module usw. Revision-Control gibt es natürlich auch in meinem Framework, es ist praktisch eine in das Framework voll integrierte Webanwendung.
Die Lösung ist denkbar einfach, siehe Tabelle untenstehend:
Field | id | ctime | path | content | name | comment |
---|---|---|---|---|---|---|
Type | int(11) | timestamp | varchar(255) | longtext | varchar(48) | varchar(255) |
Null | NO | NO | NO | YES | NO | NO |
Default | CURRENT_TIMESTAMP | |||||
Key | PRI | MUL | ||||
Extra | auto_increment |
Was man dazu nun noch braucht ist ein Script was die einzucheckende Datei schnappt und in diese Tabelle einfügt. Idealerweise wird dieses Script gleich aus dem Editor heraus gestartet. Das Auschecken erfolgt über ein dediziertes Backend als Webanwendung. Nun kann man in einer Anwendung selbst prüfen welche Version vorliegt oder besser sogar prüfen ob die Anwendung auf dem neuesten Stand ist. Hierzu wird in der Anwendung eine MD5-Checksumme der Source (Scriptdatei) gebildet und in die Tabelle geschaut ob es eine solche gibt. Select md5(content) as md5 from rcs
wäre hierzu die Abfrage.
Untenstehende Tabellen vermitteln einen Eindruck vom Backend zu meinem RCS.
Id | Name | LastModified | Zeigen | Deploy |
---|---|---|---|---|
54 | pack.pl | 2022-12-03 12:22:06 | 📃 | ⏬ |
53 | rcs.html | 2022-12-03 12:06:36 | 📃 | ⏬ |
51 | rcs.pl | 2022-12-02 19:02:12 | 📃 | ⏬ |
50 | MyRCS.pm | 2022-12-02 18:40:20 | 📃 | ⏬ |
43 | forum.pm | 2022-12-02 12:34:34 | 📃 | ⏬ |
35 | fwdbf.cgi | 2022-12-01 15:13:05 | 📃 | ⏬ |
13 | t_forum.pm | 2022-11-29 15:26:23 | 📃 | ⏬ |
Id | Kommentar | Datum | Größe | Zeigen | Download |
---|---|---|---|---|---|
50 | throbber() hinzugefügt, betr. Update Kommentar | 2022-12-02 18:40:20 | 3888 | 📃 | 📁 |
48 | Update Template und Kommentare eingebaut | 2022-12-02 15:49:13 | 3827 | 📃 | 📁 |
Aus dem Browser heraus kann nun auch das Checkout der neuesten Version direkt im Original-Pfad erfolgen. Der Werdegang eines Moduls ist also so, daß es nach der lokalen Erprobung in das RCS eingecheckt und vom RCS aus per Mausklick im richtigen Pfad auf dem produktiven Server installiert wird. Damit entfällt eine gesonderte Übertragung (SCP, sFTP) welche die Gefahr inkonsistenter Daten birgt.
Datenschutzerklärung: Diese Seite dient rein privaten Zwecken. Auf den für diese Domäne installierten Seiten werden grundsätzlich keine personenbezogenen Daten erhoben. Das Loggen der Zugriffe mit Ihrer Remote Adresse erfolgt beim Provider soweit das technisch erforderlich ist. sos@rolfrost.de. Entity: 2a027f4ca61964a1749f611ebb3bbb5d