2012-12-19 8 views
10

Używam Jenkinsa dla CI, mam mistrza i dwóch niewolników, mistrz pracuje dla Jenkinsa i chcę, żeby tylko niewolnicy wykonywali rzeczywiste zadanie budowlane, czy jest gdziekolwiek mogę to skonfigurować? Wiem, że istnieje "executor", jeśli zmienię go na 0 na master, prawdopodobnie mistrz niczego nie zbuduje, ale czy jest jakiś właściwy sposób na zrobienie tego?CI z Jenkinsem: jak wymusić budowanie na niewolnikach zamiast kapitana?

Dzięki

Odpowiedz

19

Można ustawić, gdzie będą prowadzone przy użyciu robota „Ograniczanie gdzie projekt ten może być prowadzony” opcję w swojej pracy. To ustawienie może być używane razem z tagami dodanymi do urządzeń podrzędnych.

Na przykład dwa urządzenia podrzędne, które mają etykietę "Linux-buildserver" i używają tego znacznika, podzielą zadanie na te dwa urządzenia podrzędne. Ustawienie adresu IP jako znacznika w zadaniu spowoduje, że będzie używany tylko ten buildserver/slave.

2

Podczas konfigurowania węzła dostępna jest opcja "zostawiaj ten komputer tylko dla zadań powiązanych" .Jeśli "zostawisz ten komputer tylko dla powiązanych zawodów" opcja jest wybrana Następnie niewolniki będą używane przez zadania, które są ograniczone do uruchomienia na tym.

5

Jednym z moich pierwszych kroków w tworzeniu nowego mistrza Jenkinsa jest zrobienie tego, o czym wspomniałeś w swoim pytaniu, ustawienie "executorów" na zero w konfiguracji serwera głównego.

Zapobiega to tworzeniu dowolnych elementów na master.

+0

Oto, co oznacza ikona małego znaku zapytania obok tego pola: ustaw wartość 0, aby uniknąć budowania na wzorcu. –

0

Lepszym sposobem na to jest nadanie wzorcowi etykiety i ograniczenie tego, co działa na wzorcu w ten sposób, że każda z twoich kompilacji nie musi określać etykiety.

Powiązane problemy