44 votes

Comment exécuter Jenkins en tant qu'utilisateur différent

J'ai essayé de suivre les tutoriels et celui-ci: Déployer comme Jenkins de l'Utilisateur ou de Permettre Jenkins Pour Exécuter en tant Qu'Utilisateur Différent?

mais je ne peux pas pour l'amour de l'informatique dieux, run comme un autre utilisateur. Voici les étapes de ce que j'ai fait:

  1. télécharger le macosx pkg pour jenkins(LTS)
  2. installation de plugins etc et git
  3. essayez de construire

Je reçois un ne peut pas dupliquer erreur parce que jenkins continue de départ en tant qu'anonyme:

Started by user anonymous

Comment puis-je le configurer de sorte que jenkins s'exécute comme moi? J'ai été en utilisant le web de jenkins de l'INTERFACE utilisateur de sorte qu'il était en localhost:8080

J'ai essayé en connectant également à l'aide de /se connecter, mais je ne peux même pas vous connecter en utilisant mon nom ou en tant que root.

L'onglet personnes n'ont même pas créer de lien, donc oui je suis coincé. De l'aide s'il vous plaît?

44voto

Peter Tran Points 652

Le "Numéro 2" réponse donnée par @Sagar fonctionne pour la majorité des serveurs git comme gitorious.

Cependant, il y aura un conflit de nom dans un système comme gitolite où les clés publiques ssh sont enregistrés en tant que fichiers nommés avec le nom d'utilisateur, c'est à dire keydir/jenkins.pub. Que faire si il y a plusieurs jenkins serveurs qui ont besoin d'accéder à la même gitolite serveur?

(Note: c'est sur l'exécution de l'Jenkins démon pas de l'exécution d'un travail en tant qu'utilisateur (évoqué par @Sagar de "Numéro 1").)

Dans ce cas, vous avez besoin pour exécuter le Jenkins comme un démon d'un autre utilisateur.

Il y a deux étapes:

Étape 1

La chose principale est de mettre à jour l' JENKINS_USER variable d'environnement. Voici un patch montrant comment modifier l'utilisateur ptran.

COMMENCER PATCH

--- etc/default/jenkins.old     2011-10-28 17:46:54.410305099 -0700
+++ etc/default/jenkins 2011-10-28 17:47:01.670369300 -0700
@@ -13,7 +13,7 @@
 PIDFILE=/var/run/jenkins/jenkins.pid

 # user id to be invoked as (otherwise will run as root; not wise!)
-JENKINS_USER=jenkins
+JENKINS_USER=ptran

 # location of the jenkins war file
 JENKINS_WAR=/usr/share/jenkins/jenkins.war
--- etc/init.d/jenkins.old      2011-10-28 17:47:20.878539172 -0700
+++ etc/init.d/jenkins  2011-10-28 17:47:47.510774714 -0700
@@ -23,7 +23,7 @@

 #DAEMON=$JENKINS_SH
 DAEMON=/usr/bin/daemon
-DAEMON_ARGS="--name=$NAME --inherit --env=JENKINS_HOME=$JENKINS_HOME --output=$JENKINS_LOG -   -pidfile=$PIDFILE" 
+DAEMON_ARGS="--name=$JENKINS_USER --inherit --env=JENKINS_HOME=$JENKINS_HOME --output=$JENKINS_LOG --pidfile=$PIDFILE" 

 SU=/bin/su

FIN DE PATCH

Étape 2

Mise à jour de la propriété de jenkins répertoires:

chown -R ptran /var/log/jenkins
chown -R ptran /var/lib/jenkins
chown -R ptran /var/run/jenkins
chown -R ptran /var/cache/jenkins

Étape 3

Redémarrez jenkins

sudo service jenkins restart

29voto

Sagar Points 4883

QUESTION 1:

Started by user anonymous

Qui ne veut pas dire que Jenkins a commencé comme un utilisateur anonyme.

Il signifie simplement que la personne qui a commencé à la construire n'a pas été connecté. Si vous activez Jenkins de sécurité, vous pouvez créer un nom d'utilisateur et lorsqu'ils se connectent, les

"Started by anonymous" 

va changer pour

"Started by < username >". 

Remarque: Vous n'avez pas à activer la sécurité pour exécuter jenkins ou de cloner correctement

Si vous souhaitez activer la sécurité et de créer des utilisateurs, passez à l' Manage Jenkins > Configure System. Vous devriez voir les options.

===========================================================================

QUESTION 2:

Le "ne peut pas cloner" l'erreur est une autre question tout à fait. Il n'a rien à voir avec vous connectant à jenkins ou l'activation de la sécurité. Cela signifie simplement que Jenkins n'a pas les informations d'identification pour cloner votre dépôt git SCM.

Découvrez https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin pour voir comment configurer Jenkins pour travailler avec votre dépôt git.

Espérons que cela aide.

10voto

commanda Points 3450

Sur Mac OS X, la façon dont je l'ai activé Jenkins à tirer de mon (privé) dépôt Github est:

Tout d'abord, vérifiez que votre utilisateur est le propriétaire du répertoire Jenkins

sudo chown -R me:me /Users/Shared/Jenkins

Ensuite, éditez le LaunchDaemon plist pour Jenkins (dans /Library/LaunchDaemons/org.jenkins-ci.plist), de sorte que votre utilisateur est le nom du groupe et le nom de l'utilisateur:

    <key>GroupName</key>
    <string>me</string>
...
    <key>UserName</key>
    <string>me</string>

Puis de recharger Jenkins:

sudo launchctl unload -w /Library/LaunchDaemons/org.jenkins-ci.plist
sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist

Ensuite, Jenkins, car il s'exécute en tant que vous avez accès à votre ~/.ssh répertoire qui a les clés.

9voto

sti Points 4338

Si vous voulez vraiment exécuter Jenkins comme vous, je vous suggère de consulter mon Jenkins.app. Un moyen simple et alternatif d’exécuter Jenkins sur Mac.

Voir https://github.com/stisti/jenkins-app/

Téléchargez-le sur https://github.com/stisti/jenkins-app/downloads

-1voto

sharp Points 118

vous pouvez également intégrer LDAP ou AD. Ça marche bien.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X