Wygląda na to, że większość instalatorów dla Perla koncentruje się wokół instalowania modułów Perla, a nie aplikacji. Rzeczy takie jak ExtUtils :: MakeMaker i Module :: Build są bardzo dobrze dopasowane do modułów, ale wymagają dodatkowej pracy dla aplikacji internetowych.Jaki jest najlepszy system do instalowania aplikacji internetowej Perl?
Idealnie byłoby miło, aby móc wykonać następujące czynności po sprawdzeniu źródła z repozytorium: Wykryto
- Czy brakujące zależności
- pobrać i zainstalować zależności od CPAN
- uruchomić polecenie "Zbuduj" źródło do stanu końcowego (przeprowadź analizę źródłową lub konfigurację niezbędną dla lokalnego środowiska).
- Uruchom polecenie, aby zainstalować zbudowane pliki w odpowiednich lokalizacjach. Nie tylko moduły perla, ale także takie pliki szablonów (.tt) i skrypty CGI, JS i pliki obrazów, które powinny być dostępne w Internecie.
- Upewnij się, że ustawione są prawidłowe uprawnienia dla zainstalowanych plików (i jeśli to konieczne, kontekstu SELinux).
W tej chwili mamy system oparty na Module :: Build który robi większość tego. Prace zostały wykonane przez mojego współpracownika, który uczył się korzystać z Module :: Build w tym czasie, i chcielibyśmy poradzić sobie z generalizowaniem naszego rozwiązania, ponieważ jest ono teraz dość specyficzne dla aplikacji. W szczególności nasz system wymaga ręcznego instalowania zależności (chociaż je wykrywa).
Czy istnieje jakiś szczególny system, z którego korzystałeś, który odniósł szczególny sukces? Czy musisz napisać program instalacyjny oparty na Module :: Build lub ExtUtils :: MakeMaker, który jest szczególnie przydatny w twojej aplikacji, czy jest bardziej ogólnie dostępny?
EDIT: Aby odpowiedzieć na pytania Briana poniżej:
- Możemy zalogować się na maszynach
- nie mamy dostępu do katalogu głównego maszyny
- Maszyny są wszystko (pozornie) identyczny buduje RHEL5 z włączonym SELinux
- Obecnie ludzie instalujący maszyny to tylko programiści z naszej grupy, a nasze źródło nie jest dostępne dla ogółu społeczeństwa. Możliwe jest jednak, że nasze źródło może zostać zainstalowane na komputerach innych osób w naszej organizacji, które będą instalowane przez programistów lub użytkowników systemów.
- Instalujemy, wyszukując z repozytorium, chociaż chcielibyśmy mieć opcję korzystania z archiwum rozproszonego (patrz wyżej).