Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#27

AW: 10.4 Sydney IDEFixpack kommt da noch was ?

  Alt 1. Okt 2020, 01:17
So wie es viele große Projekte machen, wie z.B. Firefox.

Niemand kompiliert selbst, sondern es wird regelmäßig durch einen Build-Server erledigt und das Ergebnis dann irgendwo bereit gestellt.

Nightly Build, bzw. Daily Build usw.
https://de.wikipedia.org/wiki/Nightly_Build
https://de.wikipedia.org/wiki/Testautomatisierung




PS: Zwar noch nicht für den Delphi-Code, aber schonmal für den Datenbank-Teil,
hängt am GIT-Push (damals SVN-Commit) ein Event, welches einen Build-Server (CI / Continuous Integration) angestoßen, welcher eine Test-Datenbank erzeugt und verschiedene Tests laufen lässt.
Sowas kann man auch für das Erstellen machen. Bei uns werden die paar Mio Zeilen (noch mit XE, aber ich bin gerade damit beschäftigt es auf 10.4 umzustellen) eigener und fremder Code im FinalBuilder erzeugt, samt den Setups und der Hilfedateien.,
und sowas geht auch in einem Server.

Inzwischen haben wir auch ein paar GUI-Tests (noch als eigenständiges Programm > TestComplete von Smartbear).
Jetzt könnte man also automatisch in einem Server den Quellcode auschecken, über das Build-Script die Delphi-Projekte (EXE/DLL/BPL) erzeugen, jede Nacht einmal alles Tests ausführen und hätte morgens die Ergesnisse ... geht durch eine kleine Änderung irgendeine bekannte Funktion kaputt, für die es auch einen Test gibt, dann bekommt es nicht erst der Kunde mit.




Wenn das Build/Compile dann aber nur noch über den Server liefe, dann mußt du nach einer Änderung erst bis morgen warten, bis du siehst, ob ein z.B. Semikolon fehlt.

Wir kompilieren den Großteil lokal über FinalBuilder und jeder nur noch die eine DLL/BPL/EXE im Delphi, an welcher gerade gearbeitet wird.
Das dauert im Delphi (XE mit IDESpeedPack) einige Minuten und im FinalBuilder in unter 2 Minuten (nur der Delphi-Code), da dort alle Fremdkomponenten und mehrere eigene DLL/EXE und viele der BPL parallel (multithreated) kompiliert werden.
$2B or not $2B

Geändert von himitsu ( 1. Okt 2020 um 02:11 Uhr)
  Mit Zitat antworten Zitat