2016-01-23 4 views
3

L'objectif final est de rechercher tous les fichiers n sous-répertoires dans un dossier a sur une boîte Linux pour les caractères m de contrôle. Si oui, ne poursuivez pas le build ANT et échouez le travail. Sinon, continuez avec la compilation ANT.Échec d'un travail Jenkins sur une condition

Dans un travail Jenkins j'écrire ce script outline of the script:

Cd lot Grep -r "\ r"> fichier texte \ trouver ctrl m omble chevalier et rediriger vers un fichier texte le cas échéant.

Ensuite, comparez le contenu. Si le fichier texte est vide, build else échoue le travail.

Si le [-s] échoue, le travail est créé.

  1. Est-ce une bonne approche de l'utilisation du script Linux? Sinon, quelle est la meilleure façon? Comment configurer un travail Jenkins à l'aide de l'exécution de shell et pour faire échouer l'interpréteur de commandes et que le travail Jenkins échoue à condition?

Merci

+0

Quel est le problème avec ça? – Jayan

+0

Ouais ... Je peux utiliser la sortie 1. Cela devrait faire je suppose. J'ai l'intention de tester sur le travail de production Jenkins et voir si cela fonctionne. Merci – sumant

+0

_J'ai l'intention de tester sur la production Jenkins job_. Pourquoi? Il est préférable de lancer Jenkins sur votre machine locale, de tester des choses de base ... puis de les déployer. – Jayan

Répondre

3

Option 1: Quittez vos scripts avec non la valeur zéro. Jenkins, par défaut, détecte cela comme un échec.

Option 2: Utilisez Console Parser plugin pour rechercher des modèles d'erreur.

Les deux peuvent être combinés avec Build failure analyser pour un message propre à l'utilisateur. Si vous quittez votre script avec une valeur non nulle, Jenkin le traitera comme un échec.