web-dev-qa-db-fra.com

Comment l'horaire est-il construit à Jenkins?

Comment planifier une construction Jenkins de telle sorte qu'elle ne puisse construire que des heures précises chaque jour?

Par exemple pour commencer à 16 heures

0 16 1-7 * *

Je comprends que comme: 0 minutes, à 4 heures PM du lundi au dimanche tous les mois, mais cela se construit à chaque minute :(

Je serais reconnaissant pour tout conseil. Merci!

61
deadfish

Veuillez lire les autres réponses et commentaires, il y a beaucoup plus d’informations et de nuances décrites (fonctions de hachage?) Que je ne connaissais pas quand j’ai répondu à cette question.

Selon l'aide propre de Jenkins (le bouton "?") Pour la tâche de planification, 5 champs sont spécifiés:

Ce champ suit la syntaxe de cron (avec des différences mineures). Plus précisément, chaque ligne est composée de 5 champs séparés par une tabulation ou des espaces: MINUTE HOUR DOM MOTH DOW

Je viens d'essayer de lancer un travail à 16h42 (heure locale approximative) et cela a fonctionné comme suit, bien que cela ait pris environ 30 secondes supplémentaires:

42 16 * * *

Si vous voulez plusieurs fois, je pense que ce qui suit devrait fonctionner:

0 16,18,20,22 * * *

pour 4, 6, 8 et 10 heures PM tous les jours.

95
Zachary Young

Dans la configuration du travail, vous pouvez définir différents déclencheurs de construction. Avec la construction périodique, vous pouvez planifier la construction en définissant la date ou le jour de la semaine et l'heure d'exécution de la construction.

Le format est le suivant:

MINUTE (0-59), HEURE (0-23), JOUR (1-31), MOIS (1-12), JOUR DE LA SEMAINE (0-6)

La lettre H, représentant le mot-hachage, peut être insérée à la place de l'une des valeurs. Le paramètre sera calculé en fonction du code de hachage du nom de votre projet. Ainsi, si vous construisez plusieurs projets sur votre construction machine à la même heure, disons à minuit chaque jour, ils ne commencent pas tous là à exécuter la construction en même temps, chaque projet commence son exécution à une minute différente en fonction de son code de hachage. Vous pouvez également spécifier que la valeur doit être comprise entre des nombres, c'est-à-dire que H (0,30) renverra le code de hachage du projet où les hachages possibles sont compris entre 0 et 30

Exemples:

commence la construction tous les jours à 08h30 le lundi au vendredi:

  • 30 08 * * 1-5

construire tous les jours en semaine deux fois par jour, à midi, et de 00h00 à minuit, du dimanche au jeudi:

  • 00 0,12 * * 0-4

commence à construire tous les jours en fin d’après-midi entre 16h00 et 17h00. - 16h59 ou 16:00 - 16: 59 en fonction du hash du projet:

  • H 16 * * 1-5

commence la construction à minuit:

  • @minuit

ou commence la construction à minuit, chaque samedi:

  • 59 23 * * 6

tous les premiers jours de chaque mois entre 2 h et 2 h 30:

  • H (0-30) 02 01 * *

plus d'informations sur les expressions CRON

72
Merav Kochavi

Cet exemple est quotidien, une fois vers 9h et une fois vers 17h. (édité par commentaires).

H 9,17 * * * 
11
captainhero70

Pour construire une fois par jour entre 16h et 18h, vous pouvez utiliser

H H(15-17) * * *

4
primeFactor

Cela semble être un expression cron . Notez que votre exemple repose uniquement sur le premier au septième de chaque mois, à 16h00. Vous avez probablement une autre erreur, ou Jenkins utilise des expressions CRON non standard.

2
Yann Ramin

Jenkins utilise Cron Expressions .

Vous pouvez simplement planifier des constructions horaires en tapant simplement:

@heure

1
Marios Michailidis
H H(5-21)/2 * * 1-5

MON-FRI construit toutes les 2 heures entre

1
user176867

Dans Jenkins, nous avons le format est le suivant:

Minute (0-59) Heure (0-23) Jour (1-7) Mois (1-12) Jour de la semaine

1
LivCool