2009-10-30 20 views
9

Jaki jest dobry sposób wdrożenia aplikacji Catalyst na serwerze produkcyjnym? Obecnie po prostu mam skrypt spedycyjny FastCGI w katalogu głównym repozytorium, a kiedy chcę zaktualizować kod serwera, popycham gałąź do serwera. Jest to dość proste, ale nie idealne. Jeśli kod nie przejdzie testów na komputerze serwera (na przykład z powodu niezadowalających zależności), pozostanie mi zepsuta aplikacja. W jaki sposób wdrażasz swoje aplikacje Catalyst? Czy masz lepszy sposób?Jakie są sprawdzone metody wdrażania aplikacji Catalyst na serwerze produkcyjnym?

Odpowiedz

10

Połączenie aplikacji równoważącej obciążenie z dwoma aplikacjami fastcgi typu flip-flop działającymi alternatywnie jako aplikacje produkcyjne i testowe byłoby najlepszym rozwiązaniem. Z jakiego serwera internetowego korzystasz? Jeśli zdarza się Lighttpd, a następnie spojrzeć na te linki:

+0

Niestety używam Apache na współdzielonej maszynie, co oznacza, że ​​brakuje mi opcji, ale i tak dziękuję za wskazówkę. – zoul

2

do czynienia z niezaspokojonego Zależności problemu, używam skrypt, który działa svn export dla całego drzewa aplikacji do osobnego katalogu, odpowiednio ustawia środowisko, a następnie wykonuje:

perl -MMyApp -e '{print "OK"}' 
if [ $? -ne 0 ] 
then 
    echo "MyApp failed compile, not installing." 
    exit 1 
fi 

To wystarcza, aby upewnić się, że wszystkie moduły zainstalowane w dev są dostępne przed recyklingiem Apache i/lub FastCGI. Gdy się powiedzie, wyeksportowany kod zostanie przeniesiony do ostatecznej lokalizacji.

Powiązane problemy