CI/CD projektów PHP na Jenkinsie – Automatyzacja

Mimo, że PHP jest językiem interpretowanym a kod PHP nie wymaga kompilacji, to developerzy przeprowadzają np. generację lub transformację kodu autoloadera. Doskonałym narzędziem służącym do zautomatyzowania procesu budowy oprogramowania jest Apache Ant. To co różni Ant i np.  znany z Linuksa Make jest to, że Ant używa plików w formacie XML do opisu procesu budowy i jego zależności, podczas gdy Make ma własny format Makefile. Projekt Ant jest w związku z tym przenośny, Make nie. Domyślnie plik XML  w Ant nazywa się build.xml.

Continue reading “CI/CD projektów PHP na Jenkinsie – Automatyzacja”

CI/CD projektów PHP na Jenkinsie – Instalacja

Praktyka ciągłej integracji (CI) wymaga pełnej automatyzacji tworzenia buildów oraz efektywnego systemu kontroli wersji. Automatyzacja tworzenia buildów to praktyka oskryptowania różnych zadań, które muszą wykonywać developerzy w czasie ich codziennej pracy. Do zadań tych należy z reguły kompilacja kodu źródłowego, testy automatyczne, pakietyzacja binarek a finalnie deployment aplikacji na serwerach.

Continue reading “CI/CD projektów PHP na Jenkinsie – Instalacja”

Język DSL Puppeta cz.1

Załóżmy, że mamy do postawienia kilkaset wirtualnych serwerów z określonym oprogramowaniem i konfiguracją. Jeżeli chcielibyśmy wykonać to zadanie ręcznie byłoby to bardzo pracochłonne. W instalacji wirtualnych maszyn pomoże nam z pewnością Kickstart, a z konfiguracją tych maszyn może nam pomóc dowolny menadżer konfiguracji. Najbardziej znanym takim menadżerem jest z pewnością Puppet. Puppet odczytuje konfiguracje serwera zawartą w tzw. manifeście. Zazwyczaj jest to plik tekstowy z rozszerzeniem .pp.

Continue reading “Język DSL Puppeta cz.1”