W pogoni za wersjami

Frameworki, szczególnie w językach dynamicznych bardzo szybko się rozwijają. Powstaje wersja za wersją. Przy większej liczbie aplikacji może to być uciążliwe.

Aplikacje pisane pół roku temu są kompatybilne z wersją 0.x frameworka, po drodze były wersje 0.x.y, 0.y a teraz jest wersja 0.z. Czy tkwić z jedną ustaloną jako produkcyjna wersją czy używać do nowych projektów aktualnie najnowszej. Przecież na serwerze jest zainstalowana wersja 0.x i nie ma szans na podniesienie i sprawdzenie wszystkich aplikacji.

W rozwiązaniu tego dylematu pomógł pakiet “virtualenv”. Za jego pomocą szybko zrobimy wirtualne środowisko pythona.

Może przykład z Pylonsem: na serwerze jest zainstalowana wersja 0.9.5 a najnowszą wersją jest 0.9.6, która ma sporo zmian.

Więc instalujemy pakiet virtualenv:

easy_install virtualenv

Robimy środowisko:

virtualenv 096

Powstał nowy katalog “096” z binarką pythona. Instalujemy nową wersję Pylonsa:

cd 096
./bin/easy_install Pylons==0.9.6

Wgrywamy naszą aplikację do jakiegoś podkatalogu np. Aplikacja i uruchamiamy:

cd Aplikacja
../bin/paster serve production.ini --daemon start

I gotowe. Możemy sobie dograć niezbędne wersje bibliotek. Trzeba pamiętać aby używać skryptów jawnie podając katalog 096/bin.

This entry was posted on Fri, 28 Mar 2008 07:13:00 GMT and Posted in , . You can follow any any response to this entry through the Atom feed. You can leave a comments, .


Comments

Leave a response

  1. SeeM about 2 hours later:

    Niekiedy programy, które mają troszkę C, można kompilować po prostu : ./configure –prefix=/opt/nowa/wersja –with-python=/opt/stara/wersja : Bardzo mi się to podoba i wygodniejsze to nawet od easy_install. Ale o virtualdev nie wiedziałem, dzięki,

Leave a comment