[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Deployen einer Anwendung



Du kannst deine Applikation ganz normal als ein Perl-Modul
schreiben. Dies dürfte wohl der Standard weg sein
den viele heutzutage gehen.

Hast du es in einem ganz normalen Modul-Format so kannst
du eine Applikation ganz normal mit "make; make test; make install"
deployen.

Wobei ich hier auf Module::Build setzen würde was dann "perl Build.PL;
./Build; ./Build test; ./Build install" sein würde. Wobei man sich den
letzten Schritt mit install teilweise auch sparen kann. Hängt je nachdem
davon ab was du baust.

Ich selber entwickel zum Beispiel primär Webapplikationen und hier habe
ich Catalyst anwendungen und dort bleibt ein "install" aus. Die
Applikation wird dann direkt aus dem Verzeichniss heraus genutzt. Ein
Installwürde auch gehen, dann wird die Applikation und all seine Module
direkt in das System Perl installiert.

Beim aufbauen eines Modul Grundgerüstes kann dir ansonsten
Module::Starter helfen.

Ebenfalls nutzen mitlerweile viele Dist::Zilla was nochmals beim Module
bauen/Pflegen hilft. Ich selber habe es noch nicht genutzt.

Der Vorteil eines Perl Modules sind halt das du automatisch eine
Umgebung hast in der du alle Abhängigkeiten Pflegen kannst, test
automatisch laufen. Und auch andere Tools wie Devel::Cover sofort heraus
laufen. Mit dem Tools von Module::Build kannst du dann automatisch auch
tar.gz bauen, unnötgen kram löschen etc. Auf dem CPAN musst du es ja
nicht releasen, aber du kannst halt eben die Infrastruktur nutzen.

Wenn du das ganze so aufbaust wäre es rein theoretisch volkommen
Platformunabhängig und auch so auf Windows nutzbar, wenn du dort eine
Perl Umgebung installiert (Strawberry Perl zum beispiel). Und generell
auch für jede Linux Distribution.

Möchtest du daraus ein Debian Packet bauen, dass dann eben auch die
nötigen Debian Packete installierst, wie Datenbank etc. nun das wäre
nochmals eine komplett andere aufgabe, hier musst du dann eben generell
schauen wie man Packete unter Debian baut. Das wäre dann auch Debian
spezifisch.

Ansonsten halt simpel das ganze als ein Perl Modul bauen, und eben eine
Installationsanleitung beilegen welche Teile auserhalb von Perl
gebraucht werden. Die ein Anwender eben durcharbeiten muss. Genauso wie
jede andere Applikation auch. Möchtest du dies halt größtenteils auf
Debian automatisieren. Wie gesagt ein Debian Packet bauen das dies dann
alles macht.

Möchtest du eigenständiges Perl haben das Systemunabhängig ist kann ich
dir App::perlbrew empfehlen. Diese Perl Modul kompiliert dir dein
eigenes Perl in deinem Home Verzeichnis. Von diesen aus kannst du dann
beliebig Module vom CPAN installieren oder Arbeiten ohne das, das ganze
mit deinem System Perl in die quere kommt. Du kannst mit perlbrew auch
gleichzeitig mehrere verschiedene Perl versionen gleichzeitig
installieren und zwischen diesen dann einfach hin und her schalten.

Wenn du deine Applikation mit verschiedenen Perl Versionen testen
musst/willst.


Reply to: