Dodałem nową pracę w Jenkins, którą chcę okresowo planować.
Z Konfiguruj zadanie zaznaczam pole wyboru „Kompiluj okresowo” iw polu tekstowym Harmonogram dodałem wyrażenie:
15 13 * * *
Ale nie działa w zaplanowanym czasie.
Czy to właściwa procedura, aby zaplanować pracę?
Zadanie powinno zostać uruchomione o 04:20, ale nie jest uruchomione.
Odpowiedzi:
Ustawiając dla
15 13 * * *
ciebie okres harmonogramu , powiedz Jenkinsowi, aby planował kompilację każdego dnia każdego miesiąca każdego roku, w 15 minucie 13 godziny dnia.Jenkins użył wyrażenia cron , a różne pola to:
Jeśli chcesz zaplanować kompilację co 5 minut, spełni to zadanie:
*/5 * * * *
Jeśli chcesz zaplanować kompilację codziennie o 8.00, wykona to zadanie:
0 8 * * *
W ostatnich kilku wersjach (2014) Jenkins ma nowy parametr
H
(wyciąg z dokumentacji kodu Jenkins ):Uwaga:
Więcej przykładów użycia „H”
źródło
* */6 * * *
zadziała?Jenkins pozwala na wielokrotne konfigurowanie, oddzielone podziałami linii.
Jeśli potrzebujesz, aby budować codziennie o 7 rano, w każdą niedzielę o 16:00, poniżej działa dobrze.
źródło
H(0-0)
możesz po prostu skorzystać0
z zalet korzystania zH
tego, że nie wszystkie zadania będą próbowały uruchomić się dokładnie w tym samym czasie, ale raczej postarają się uzyskać „następny dostępny przedział czasowy”*/5 * * * *
oznacza co 5 minut5 * * * *
oznacza piątą minutę każdej godzinyźródło
Format jest następujący:
MINUTA (0-59), GODZINA (0-23), DZIEŃ (1-31), MIESIĄC (1-12), DZIEŃ TYGODNIA (0-6)
Zamiast dowolnej wartości można wstawić literę H reprezentującą słowo Hash . Obliczy parametr na podstawie kodu skrótu nazwy twojego projektu.
Dzieje się tak, ponieważ jeśli budujesz kilka projektów na komputerze kompilacji w tym samym czasie, powiedzmy, że o północy każdego dnia, nie wszystkie rozpoczynają wykonywanie kompilacji w tym samym czasie. Każdy projekt rozpoczyna się od innej minuty, w zależności od kodu skrótu.
Możesz także podać wartość między liczbami, tj. H (0,30) zwróci kod skrótu projektu, w którym możliwe skróty to 0-30.
Przykłady:
Zacznij budować codziennie o 08:30 rano, od poniedziałku do piątku: 30 08 * * 1-5
Codziennie buduj codziennie dwa razy dziennie, w porze lunchu 12:00 i północy 00:00, od niedzieli do czwartku: 00 0,12 * * 0-4
Rozpocznij kompilację codziennie późnym popołudniem w godzinach 16: 00–16: 59 lub 16: 00–16: 59 w zależności od skrótu projektu: H 16 * * 1-5
Rozpocznij kompilację o północy: @ midnight lub rozpocznij kompilację o północy, w każdą sobotę: 59 23 * * 6
Każdy pierwszy dzień każdego miesiąca między 2:00 a 02:30: H (0,30) 02 01 * *
źródło
Kroki dotyczące harmonogramu zadań w Jenkins:
@midnight
Uwaga : w polu harmonogramu można zobaczyć ostatnie i następne uruchomienie daty i godziny.
@hourly
,@daily
,@weekly
,@monthly
,@midnight
@hourly
-> Buduj co godzinę na początku godziny ->0 * * * *
@daily, @midnight
-> Buduj codziennie o północy ->0 0 * * *
@weekly
-> Buduj co tydzień o północy w niedzielę rano ->0 0 * * 0
@monthly
-> Buduj co miesiąc o północy pierwszego dnia miesiąca ->0 0 1 * *
źródło
Aby zaplanować zadanie cron co 5 minut, musisz zdefiniować ustawienia cron w następujący sposób:
źródło
Spróbuj użyć 0 8 * * *. To powinno działać
źródło
Jenkins używa formatu Cron do planowania. Możesz zapoznać się z tym linkiem, aby uzyskać więcej szczegółów https://en.wikipedia.org/wiki/Cron. Jeszcze jedno, Jenkins zapewnia nam bardzo przydatny podgląd. Spójrz na zrzut ekranu.
Mam nadzieję, że ta pomoc. Dzięki
źródło
Spróbuj tego.
Sprawdź poniższy zrzut ekranu
Polecany adres URL - https://www.lenar.io/jenkins-schedule-build-periodically/
źródło
Dla każdego, kto nie chce czekać całą godzinę, aby sprawdzić, czy uruchomi się konkretna kompilacja:
Aby uzyskać skrót, możesz pobrać skrót tutaj . Użyj pełnej nazwy projektu podanej na stronie oddziału i wydrukuj ją w następujący sposób:
źródło