Symfony plugins – automatyczne tworzenie paczki PEAR
Wstęp
Wpis nie będzie o tym jak napisać plugin do Symfony ale jak zrobić z już napisanego pluginu, prawie autamtycznie, paczkę PEAR, która wymagana jest przy dodawaniu pluginu do repozytorium pluginow na www.symfony-project.org. Instrukcje dotyczą systemu Windows.
Przygotowania
Po pierwsze, załóż konto na stronie Symfony. Po drugie zainstaluj PHP.
Instalacja PEAR i PFM
W wersji PHP (skompilowanego) dla Windows trzeba zainstalować biblioteki PEAR. Przejdź do katalogu gdzie zainstalowany jest PHP i wykonaj polecenie:
go-pear.bat
Następnie trzeba uaktualnić biblioteki do najnowszej wersji (alpha):
pear channel -update pear.php.net pear upgrade PEAR
Teraz potrzebujemy narzędzia do generowania plików z definicją dla PEAR:
pear install PEAR_PackageFileManager_Cli-0.3.0
W trakcie instalacji mogą wystąpić błęd typu: Failed to download NAZWA_BIBLIOTEKI within preffered state stable, latest realease is ……, use “channel://pear.php.net/NAZWA_BIBLIOTEKI”. Wówczas każdą taką bibliotekę, która jeszcze nie jest w fazie “stable”, instaluj ręcznie za pomocą polecenia:
pear install channel://pear.php.net/NAZWA_BIBLIOTEKI
Po prawidłowej instalacji PFM w katalogu PHP winien być widoczny plik “pfm”. Jest to plik php, warto stworzyć dla niego plik uruchamiający pfm.bat:
"C:\Program Files\PHP5\php.exe" -f "C:\Program Files\PHP5\pfm"
Teraz uruchomienie PFM będzie odbywało się za pomocą jednego polcenia w linii komend: pfm
W miarę automatyczne tworzenie paczki
Dodaj kanał Symfony do PEAR:
pear channel-add http://pear.symfony-project.com/channel.xml
Przejdź teraz do katalogu gdzie przygotowany jest plugin. Nie zapomnij o plikach README i LICENSE, które winny znaleźć się w korzeniu. Przykładowa strukutra powinna wyglądać tak:
2009-07-20 13:44 <DIR> . 2009-07-20 13:44 <DIR> .. 2009-06-18 19:42 <DIR> config 2009-06-18 19:42 <DIR> lib 2009-06-18 19:42 <DIR> web 2009-07-16 11:31 1˙081 LICENSE 2009-07-20 11:59 1˙707 README
Plik README musi być w formacie Markdown. Polecam skorzystanie z narzędziaa “Dingus“, które konwertuje format markdown do html. Więcej o formacie markdown tutaj.