Mam wymaganie od zespołu programistycznego do skonfigurowania systemu kompilacji, aby każda kompilacja miała unikalny numer kompilacji dla wszystkich oddziałów.Jak przekonać jenkins, aby udostępnił numer kompilacji dla kilku zadań?
Kompilacje są wykonywane przez jenkinsa przy użyciu zadań dla każdego oddziału.
Jest plugin Jenkins, który można ustawić następny buildNumber do pracy, ale jest to trochę bezużyteczne dla co najmniej dwóch powodów:
- będzie ustawić numer kompilacji dla pojedynczego zadania i nie można wiedzieć wszystko jak skonfigurować go do wszystkich oddziałów, ponieważ mogą one być usunięte lub dodane w dowolnym momencie
- nie ustawić go do obecnej wersji
Jak możemy uzyskać numery produkcji: robimy nawiązywać połączenia HTTP z nazwa oddziału i numer rewizji w git/mercurial. Na tej podstawie scentralizowany serwer podał nam numer kompilacji w odpowiedzi. Jeśli wywołasz go dwukrotnie z tymi samymi parametrami, otrzymasz taką samą odpowiedź (pożądane zachowanie).
Teraz, w jaki sposób możemy ulepszyć jenkins, aby używać tych samych numerów budowania co my? Oczywiście mogłem użyć numeru kompilacji zwrócony ze skryptu, ale numer zadania byłby inny i wątpię, aby jenkins wiedział, że dotknąłem zmiennej BUILD_NUMBER wewnątrz mojego skryptu.
Przede wszystkim potrzebuję jakiegoś skryptu przed uruchomieniem zadania, który można uruchomić, który będzie uruchamiany, zanim numer kompilacji zostanie przypisany do zadania.
Dzięki za tonę! Pracował dla mnie. W moim przypadku używam wtyczki do folderu CloudBees, która zaoszczędziła mi problemu ze znalezieniem według wzorca. Zamiast tego użyłem metody getItems() i usunąłem bieżące zadanie za pomocą "currentJob" :-). –