2010-04-19 6 views
31

Je suis en train de mettre en place hudson avec git selon this article, mais je reçois encore des erreurs git lors de la construction:hudson + git FATAL: Impossible appliquer tag

FATAL: Could not apply tag-PROJECTNAME-ID 
... 
Caused by: hudson.plugins.git.GitException: Command returned status code 128: 
*** Please tell me who you are. 

fonctionnement: git config --global user.name affiche les données valides, est accessible.

Comment faire pour corriger ces erreurs?

Répondre

26

Si besoin à la fois user.name et user.email.
Il existe actuellement un open ticket to set them automatically.

Il pourrait aussi être un Hudson server issue:

j'étais un peu confus pour voir ce message depuis que je l'avais déjà configuré git avoir mon nom d'utilisateur et votre email.
Ensuite, je me suis souvenu que Hudson est en cours d'exécution sur tomcat qui est en cours d'exécution avec l'utilisateur tomcat6.
J'avais besoin de configurer l'utilisateur tomcat6 pour avoir la configuration git nécessaire pour marquer sur les dépôts git.

procéder à la configuration git pour l'utilisateur tomcat6 en procédant comme suit:

sudo -s -H -u tomcat6 
git config --global user.name "Hudson" 
git config --global user.email "[email protected]" 
exit 

Comme une note, si vous utilisez Hudson pour engager et pousser à un autre référentiel ces paramètres de configuration seront utilisés pour tous les commits effectués par Hudson.

L'étape suivante consiste à indiquer à Hudson où se trouve le HOME pour l'utilisateur de tomcat6.
Sur la page Hudson/configure, il y a une case à cocher pour définir les variables d'environnement.
Une fois cochée, vous serez en mesure de mettre une paire clé-valeur. Ajouter la paire suivante et enregistrer votre configuration:

name: HOME 
value: /usr/share/tomcat6/ 

La prochaine fois qu'un projet Hudson est construit, vous devriez voir la ligne suivante près du haut de la sortie de la console:

Env: HOME=/usr/share/tomcat6/ 

Le plugin git devrait maintenant être capable d'étiqueter avec succès le référentiel et de poursuivre la construction.


Comme mentioned here, vous pourriez avoir un utilisateur spécial tomcat6 sans compte (pas de login permis, sans shell: je cite « tomcat6 は ロ グ イ ン 不 許可 (シ ェ ル は/bin/false) っ て な って い る "), auquel cas vous devez configurer l'utilisateur.nom et e-mail au niveau du système)

git config - system user.email "kompiro @ ..." 
git config --system user.name " kompiro... " 

Si vous utilisez l'utilisateur tomcat6 à Hudson, Hudson aura besoin de voir que l'utilisateur dans le répertoire/etc/passwd, as mentioned here:

Plus précisément, dans le /etc/passwd. Pour une raison quelconque, le GIT a besoin d'une entrée dans le champ pour le nom complet. Sous Ubuntu l'utilisateur Tomcat a placé par défaut, rien ("Unter Ubuntu chapeau de Tomcat-User dort standardmäßig nichts gesetzt.").
Ajoute un là maintenant simplement 'Tomcat 6,,, a', il fonctionne aussi avec les voisins CI.
("l'homme Fügt jetzt Dort einfach 'Tomcat 6,,,' ein, läuft es auch mit dem CI-Nachbarn")

+1

Voir aussi un autre tutoriel avec http://www.softwarebloat.com/2008/11/19/continuous-integration-blueprints-how-to-build-an-army-of -killer-robots-avec-hudson-et-concombre/ – VonC

+0

Merci VonC pour les informations détaillées. Sur mon Ubuntu Hudson fonctionne sur l'utilisateur hudson. Je viens de configurer le nom et l'email de git pour l'utilisateur d'hudson et cela fonctionne maintenant. – takeshin

+1

mais je ne veux pas que le plugin Git ajoute des tags à mon dépôt Git pour chaque compilation (toutes les 15 minutes environ). c'est très bizarre, ça tag automatiquement par défaut .. – Alex

33

Après avoir installé le plugin git, vous pouvez configurer le nom git et email Jenkins page "Configurer système". ..

git options in jenkins

+2

Le plugin git résout ce problème beaucoup plus rapidement que de lire les commentaires dans la réponse. –

2

Dans la nouvelle version d'Hudson avec le plugin git, vous pouvez définir à la fois: le nom d'utilisateur et l'email de l'utilisateur via les options d'interface Web Hudson.

2

Ou vous pouvez simplement désactiver le marquage. Dans les configurations de projet, sous Gestion du code source, accédez à Avancé. Là, vous pouvez cocher "Passer le marquage interne"

+0

Mise à jour des plugins doit avoir ajouté cela en quelque sorte, il n'était pas là avant tout de même. Après l'avoir enlevé comme vous l'avez dit, cela a encore fonctionné. – JugsteR

Questions connexes