2011-01-07 1 views
5

Ce que j'essaie de faire ici consiste à effectuer une sorte d'action SVN en utilisant les informations d'identification qu'Hudson a stockées.Utilisation des informations d'identification SVN dans Hudson pour effectuer des actions SVN personnalisées

E.g.

  1. Lancer une version de projet Foo
  2. Foo projet démarre un script shell
  3. Shell script exécute une étiquette de la source de courant pour le projet Foo en utilisant les informations d'identification définies dans Hudson
  4. Construire continue

Maintenant, je sais qu'il existe plusieurs plugins d'étiquetage, mais ceux-ci ne sont pas tout à fait ce que je veux, car le marquage dépend des options pour la construction plutôt que pour le succès de la construction. Je peux écrire la chose très bien, mais tout tombe en panne sous Hudson car la copie svn ne fonctionnera pas sans les informations d'identification requises - d'où le besoin d'accéder à celui que Hudson a déjà utilisé pour extraire le projet.

+0

Impair. J'ai un script de construction qui fait exactement cela, et je n'ai rien à faire de spécial pour exécuter les commandes svn à partir du répertoire de travail que Hudson a extrait. Peut-être que vous exécutez votre copie à partir de la racine de l'espace de travail, au lieu du répertoire de travail réel? –

+0

@Dave Bacher: votre serveur svn nécessite-t-il une authentification? –

+0

@ Arthur Ulfeldt: oui, oui (et les informations d'identification svn stockées dans Hudson ont un accès en lecture-écriture). Il est possible que j'ai fait une configuration initiale (en tant qu'utilisateur exécutant le processus Hudson) pour configurer svn afin que les commandes svn CLI puissent fonctionner pour l'utilisateur hudson - par ex. 'sudo -u hudson svn info $ repo_url' et laissez svn stocker les informations d'identification. –

Répondre

1

This article mentionne que les scripts peuvent accéder aux informations d'identification Hudson SVN à partir du système de fichiers car ils sont stockés dans un fichier en texte clair. L'article soulève aussi d'autres questions, alors marchez prudemment.

+0

On dirait que c'est dans la bonne direction - mais comment puis-je utiliser le fichier subversion.credentials lui-même? – cyborg

+0

En fait, ils ne sont pas sauvegardés en texte clair, du moins pas pour moi. Mais je me souviens il y a longtemps qu'ils n'étaient pas cryptés. Mais je pense que le correctif vient en 2008 ou 2009. Je ne m'en souviens plus. –

+0

L'article que j'ai référencé a été écrit en octobre 2010. Ne spécifie pas la version de Hudson qu'ils utilisent. – Bernard

0

Ne réinventez pas la roue. Découvrez le Subversion Tagging PLugin. Selon votre description pour 3. ce plugin devrait être suffisant pour vous.

+0

Non, je ne veux pas taguer sur des builds réussis - c'est un peu plus compliqué. Ceci est pour la création de branches de candidat à la libération et doit être une combinaison de l'utilisateur initié et sur une construction réussie. A également besoin d'effectuer d'autres actions. – cyborg

+0

Je ne pense pas que vous ayez beaucoup de chance avec la réutilisation des informations d'identification stockées Hudson .--- Mais si vous utilisez Maven ou au moins avoir Maven disponible, vous devriez être en mesure d'utiliser le plugin m2release. http://wiki.hudson-ci.org/display/HUDSON/M2+Release+Plugin –

Questions connexes