Automatyczny build po commit na SVN

0

Temat raczej z szeroko pojętej organizacji pracy.

Mam skrypt który buduje projekt, kompresuje nowa wersje (+ dodatkowe pliki wymagana przez aplikację) i wrzuca na serwer gdzie z którego użytkowcy(testerzy) ściągają UPDATE.

Teraz chciałbym to trochę zautomatyzować :
Commit na serwerze SVN powinien jakoś uruchomić zbudowanie projektu

Przychodzą mi do głowy dwa pomysły:

  • CommitMonitor
  • albo co minute uruchomić jakiś skrypt svn i sprawdzić czy jest nowa wersja i odpowiednia na nią zareagować (co w sumie zrobi to samo co CommitMonitor )

Ewentualnie jak to mozna zrobić lepiej ?

1

Szybko ci się odechce automatycznego builda po KAŻDYM commicie, jak tylko zauważysz że zrobiłeś literówkę i trzeba zacommitować jeszcze raz...

0

W sumie to najbardziej boje sie o miejsce bo zapisuje dużo małych zmian a każda wersja to 50MB :) Chyba musze pomyslec o troche lepszym update który jednak działał by rocznicowo a nie aktywizował wszystko

Co do "Server side hook scripts" to mam serwer na Linux , wiec troche ciężko bedzie uruchomić po stronie serwera SVN skrypt który uruchomi mi kompilacje projektu na Windows

0

Polecam Jenkins: https://jenkins.io/

0

Jeżeli używasz Jenkinsa to np. w MultiBranch pipeline możesz ustawić trigger, który będzie puszczał joba np. co godzinę (czy tam częściej, zależy jak potrzebujesz). Oczywiście możesz to też "wyklikać", ale nie polecam tego podejścia (trudniej panować nad zmianami w infrastrukturze). Dodaj sobie plik konfiguracyjny (jenkinsfile) do repozytorium i tam zestaw wszystkie potrzebne Ci akcje. Możesz też wywołać swoje gotowe skrypty.

Zastanów się jednak, czy takie automaty mają sens. Może build+testy+deploy dla testerów powinien być np. codziennie po pracy, tak żeby testerzy rano działali na świeżej wersji. A jeżeli potrzeba częściej - developer po skończeniu zadania może zawsze ręcznie odpalić joba.

Tak jak kolega wyżej napisał, budowanie po absolutnie każdym commicie może być problematyczne i marnować zasoby (czas, miejsce na build agencie itd.).

1 użytkowników online, w tym zalogowanych: 0, gości: 1