2010-10-01 6 views
1

En supposant que les vérifications d'emploi Hudson sur 2 svn:Impossible d'obtenir les exclusions SVN à Hudson pour travailler

https://foo.com/packages (root is https://foo.com/packages) -> "packages" in workspace 
https://bar.com/temp/Hudson (root is https://bar.com/temp) -> "Hudson" in workspace 

J'ai essayé différentes choses, consulté en ligne pour trouver des réponses, mais je ne peux toujours pas obtenir ces 2 choses pour travailler:

1) Empêcher toute validation dans "Hudson" de déclencher une génération: J'ai essayé plusieurs combinaisons de chemins dans les "régions exclues" sans succès. 2) Empêcher toute validation contenant "CR:" dans le message de déclencher une génération: J'ai essayé "\ bCR: \ b" et d'autres dans le champ "Messages de validation exclus", mais cela ne fonctionne pas.

Merci! Pourquoi ne pas essayer l'autre direction?

Répondre

0

L'expression régulière doit correspondre complètement au chemin qui est exclu. Cela ne peut pas être juste le nom du répertoire. De plus, il doit également inclure une barre oblique. Par exemple, supposons qu'une build valide des bibliothèques et que commit ne déclenche pas une autre construction.

Emplacement du répertoire SVN:

http://subversion.xyz.com/MyProject/lib 

Ce qui se passe dans la zone Exclure les régions:

/MyProject/lib/.* 
0

Écrire un script hook dans SVN qui appelle Hudson uniquement lorsque cela est nécessaire. Pour les validations provenant d'Hudson, ne déclenchez pas du tout de génération.

+1

Bon point, qui fonctionnerait probablement, mais 1) Je ne dispose pas de droits d'administration sur le repo et 2) SVN ne devrait pas avoir à connaître ou traiter avec le système de construction (ce sont des systèmes vraiment séparés et je préfère ne pas ajouter plus de dépendances que nécessaire) .Hudson offre ce qui semble être une solution propre, je J'aimerai l'utiliser. – Pol

0

1-1) Un moyen facile, mais plutôt sale, est d'avoir deux tâches, la première détecte les changements dans l'un de vos dépôts et déclenche le deuxième travail. Le deuxième travail télécharge toutes les sources nécessaires et exécute la génération. Pro: facile à comprendre, pas trop tripoter. par contre: vous devez soit extraire deux fois un référentiel, soit trouver un moyen fiable de copier les sources de job1 vers job2 (par exemple Clone Workspace SCM), deux tâches

1-2) Configurer un référentiel dans Hudson et cocher la case sources à partir du deuxième référentiel dans la première étape de construction. Pro: un travail, solution facile con: vous devrez peut-être coder en dur les mots de passe, manque la beauté de l'utilisation du support Hudson pour subversion.

2) \bCR:\b ne ressemble pas à une expression régulière. Je vous suggère d'essayer quelque chose comme .*CR:.* et si CR: doit être au début de la ligne ^CR.*

This page about regular expressions m'a aidé à plonger plus profondément dans les expressions régulières, mais il contient également un guide de débutants.

+0

Pour n ° 1, encore une bonne idée de contournement, j'attendrai un peu plus pour voir si quelqu'un peut trouver la bonne syntaxe pour "Excluded Regions". Pour # 2, je vais essayer votre suggestion. – Pol

+0

Votre regex suggéré semble fonctionner, tout bon! – Pol

+1

Essayez une syntaxe similaire pour vos régions exclues. Selon les exemples, vous devez utiliser le chemin du référentiel (à l'exclusion de l'URL du référentiel). J'ai ajouté un lien pour les expressions régulières à ma réponse. –

Questions connexes