Was ist das beste System für die Installation einer Perl-Web-App?

Es scheint, dass sich die meisten Installationsprogramme für Perl auf die Installation von Perl-Modulen und nicht auf Anwendungen konzentrieren. Dinge wie ExtUtils :: MakeMaker und Module :: Build eignen sich sehr gut für Module, erfordern jedoch zusätzliche Arbeit für Web-Apps.

Im Idealfall ist es hilfreich, nach dem Auschecken der Quelle aus dem Repository Folgendes ausführen zu können:

Werden fehlende Abhängigkeiten erkannt?Laden Sie Abhängigkeiten von CPAN herunter und installieren Sie sieFühren Sie einen Befehl aus, um die Quelle in einen endgültigen Zustand zu versetzen (führen Sie eine Analyse oder Konfiguration der Quelle durch, die für die lokale Umgebung erforderlich ist).Führen Sie einen Befehl aus, um die erstellten Dateien an den entsprechenden Speicherorten zu installieren. Nicht nur die Perl-Module, sondern auch Dinge wie Template-Dateien (.tt) und CGI-Skripte, JS- und Image-Dateien, auf die über das Internet zugegriffen werden sollte.Stellen Sie sicher, dass für die installierten Dateien (und gegebenenfalls für den SELinux-Kontext) die richtigen Berechtigungen festgelegt sind.

Im Moment haben wir ein System basierend aufModul :: Build das macht das meiste davon. Die Arbeit wurde von meinem Kollegen erledigt, der lernte, zu benutzenModul :: Build Zu dieser Zeit möchten wir Ihnen einige Tipps zur Verallgemeinerung unserer Lösung geben, da sie derzeit ziemlich app-spezifisch ist. Insbesondere erfordert unser System, dass wir Abhängigkeiten von Hand installieren (obwohl es sie erkennt).

Gibt es ein bestimmtes System, das Sie verwendet haben und das besonders erfolgreich war? Müssen Sie einen Installer basierend auf schreibenModul :: Build oderExtUtils :: MakeMaker Das ist speziell für Ihre Anwendung, oder ist etwas allgemeineres verfügbar?

BEARBEITEN: Um brians Fragen zu beantworten:

Wir können uns in die Maschinen einloggenWir haben keinen Root-Zugriff auf die MaschinenDie Maschinen sind alle (angeblich) identische Builds von RHEL5 mit aktiviertem SELinuxGegenwärtig sind die Leute, die die Maschinen installieren, nur Programmierer aus unserer Gruppe, und unsere Quelle ist nicht für die breite Öffentlichkeit zugänglich. Es ist jedoch denkbar, dass unsere Quelle irgendwann auf den Rechnern einer anderen Person in unserer Organisation installiert wird, um von deren Programmierern oder Systemleuten installiert zu werden.Wir installieren durch Auschecken aus dem Repository, möchten jedoch die Möglichkeit haben, ein verteiltes Archiv zu verwenden (siehe oben).

Antworten auf die Frage(4)

Ihre Antwort auf die Frage