web-dev-qa-db-fra.com

Comment planifier des emplois à Jenkins?

J'ai ajouté un nouvel emploi à Jenkins, que je souhaite programmer périodiquement.

De Configure job, je coche la case "Construire périodiquement" et dans le champ de texte Calendrier, a ajouté l'expression:

15 13 * * *

Mais il ne s'exécute pas à l'heure prévue.

Est-ce la bonne procédure pour planifier un travail?

Enter image description here

Le travail doit être exécuté à 4h20, mais il ne s'exécute pas.

240
Sangram Anand

En réglant la période de planification sur 15 13 * * *, vous indiquez à Jenkins de planifier la construction chaque jour de chaque mois de chaque année à la 15e minute de la 13e heure du jour.

Jenkins a utilisé un expression cron , et les différents champs sont:

  1. MINUTES Minutes en une heure (0-59)
  2. HEURES Heures en une journée (0-23)
  3. DAYMONTH Journée dans un mois (1-31)
  4. MOIS Mois de l'année (1-12)
  5. DAYWEEK Jour de la semaine (0-7) où 0 et 7 sont le dimanche

Si vous voulez planifier votre construction toutes les 5 minutes, cela fera le travail: */5 * * * *

Si vous voulez planifier votre construction tous les jours à 8h00, cela fonctionnera: 0 8 * * *

Pour les dernières versions (2014), Jenkins a un nouveau paramètre, H (extrait de documentation du code Jenkins ):

Pour permettre aux tâches planifiées périodiquement de produire une charge uniforme sur le système, le symbole H (pour "hash") doit être utilisé chaque fois que possible.

Par exemple, utiliser 0 0 * * * pour une douzaine de tâches quotidiennes provoquera un pic important à minuit. En revanche, l’utilisation de H H * * * exécuterait toujours chaque travail une fois par jour, mais pas tous en même temps, il serait préférable d’utiliser des ressources limitées.

Notez également que:

Le symbole H peut être considéré comme une valeur aléatoire sur une plage, mais il s’agit en fait d’un hachage du nom du travail, et non d’une fonction aléatoire, de sorte que la valeur reste stable pour un projet donné.

Plus exemple d'utilisation de 'H'

426
Cédric Julien

Jenkins vous permet de configurer plusieurs fois, séparées par des sauts de ligne.

Si vous avez besoin de construire tous les jours à 7 heures, et tous les dimanches à 16 heures, le tableau ci-dessous fonctionne bien.

H 7 * * *

H 16 * * 0
31
Pawan Gaitonde

*/5 * * * * signifie toutes les 5 minutes

5 * * * * signifie la 5ème minute de chaque heure

26
Nikul Padhya

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 , un hachage peut être insérée à la place de n'importe laquelle des valeurs. Il calculera le paramètre en fonction du code de hachage de votre nom de projet.

C’est pourquoi si vous construisez plusieurs projets à la fois sur votre machine de compilation, disons minuit chaque jour, ils ne commencent pas tous l’exécution de la compilation en même temps. Chaque projet commence son exécution à une minute différente selon 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:

  1. Commencez à construire tous les jours à 8h30 du lundi au vendredi: 08 * * 1-5

  2. Jour de semaine, construction quotidienne deux fois par jour, à midi, de midi à minuit, du dimanche au jeudi: 0,12 * * 0-4

  3. Commencez à 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

  4. Début de la construction à minuit: @ minuit ou début des constructions à minuit, tous les samedis: 59 23 * * 6

  5. Tous les premiers jours de chaque mois entre 2 h et 2 h 30: H (0,30) 02 01 * *

16

Pour planifier un travail cron toutes les 5 minutes, vous devez définir les paramètres cron comme suit:

*/5 * * * *
7
fduff

Essayez d’utiliser 0 8 * * *. Ça devrait marcher

3
user1815823

Les étapes pour les travaux de planification dans Jenkins:

  1. cliquer sur "Configurer" du travail requis
  2. faites défiler jusqu'à " Construire des déclencheurs " - sous-titre
  3. Cliquez sur la case à cocher de Construire périodiquement
  4. Ajouter une planification dans le champ Planification, par exemple, @midnight

enter image description here

Remarque : sous le champ de planification, vous pouvez voir la dernière et la prochaine exécution date-heure.

1
Gavriel Cohen

Jenkins utilise le format Cron pour la planification. Vous pouvez vous référer à ce lien pour plus de détails sur http: //en.wikipedia.org/wiki/Cron. Une dernière chose, Jenkins nous fournit un aperçu très utile. S'il vous plaît jeter un oeil sur la capture d'écran. enter image description here

J'espère que cette aide. Merci

1
Thuong Vo