私はチュートリアルとこれをフォローしようとしています: Jenkinsユーザーとしてデプロイするか、Jenkinsを別のユーザーとして実行することを許可しますか?
しかし、コンピューティングの神の愛のために、別のユーザーとして実行することはできません。ここに私がしたことのステップがあります:
Jenkinsが匿名で起動し続けるため、クローンできないエラーが発生し続けます。
Started by user anonymous
ジェンキンスが私として実行されるように設定するにはどうすればよいですか?私はジェンキンスのWeb UIを使用していたので、localhost:8080にありました
/ loginを使用してログインしようとしましたが、自分の名前またはルートとしてログインすることもできません。
ピープルタブにはユーザー作成リンクさえありませんので、そうです。助けてください?
問題1:
Started by user anonymous
それはではないは、Jenkinsが匿名ユーザーとして開始したことを意味します。
これは、ビルドを開始した人がログインしていないことを意味します。Jenkinsセキュリティを有効にすると、ユーザーのユーザー名を作成できます。ログインすると、
"Started by anonymous"
に変わります
"Started by < username >".
注:ジェンキンを実行したり、正しくクローンを作成したりするために、セキュリティを有効にする必要はありません。
セキュリティを有効にしてユーザーを作成する場合は、Manage Jenkins > Configure System
。
問題2:
「クローンできない」エラーはまったく別の問題です。 jenkinsへのログインやセキュリティの有効化とは関係ありません。 Jenkinsがgit SCMからクローンを作成するための資格情報を持っていないことを意味します。
Jenkins Gitプラグイン をチェックして、gitリポジトリーで動作するようにJenkinsをセットアップする方法を確認してください。
お役に立てば幸いです。
@Sagarによる「問題2」の回答は、gitoriousなどの大部分のgitサーバーで機能します。
ただし、次のようなシステムでは名前の衝突が発生します ジトライト ここで、公開sshキーは、ユーザー名で名前が付けられたファイル、つまりkeydir/jenkins.pub
としてチェックインされます。同じgitoliteサーバーにアクセスする必要がある複数のjenkinsサーバーがある場合はどうなりますか?
(注:これは、ユーザーとしてビルドジョブを実行せずにJenkinsデーモンを実行することに関するものです(@Sagarの "Issue 1"で対処)。)
そのため、この場合、Jenkinsデーモンを別のユーザーとして実行する必要があります。
2つのステップがあります。
主なことは、JENKINS_USER
環境変数を更新することです。ユーザーをptran
に変更する方法を示すパッチがあります。
--- 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
Jenkinsディレクトリの所有権を更新します。
chown -R ptran /var/log/jenkins
chown -R ptran /var/lib/jenkins
chown -R ptran /var/run/jenkins
chown -R ptran /var/cache/jenkins
ジェンキンスを再起動する
Sudo service jenkins restart
Mac OS Xでは、Jenkinsが(プライベート)Githubリポジトリからプルできるようにする方法は次のとおりです。
まず、ユーザーがJenkinsディレクトリを所有していることを確認します
Sudo chown -R me:me /Users/Shared/Jenkins
次に、JenkinsのLaunchDaemon plist(/Library/LaunchDaemons/org.jenkins-ci.plist)を編集して、ユーザーがGroupNameおよびUserNameになるようにします。
<key>GroupName</key>
<string>me</string>
...
<key>UserName</key>
<string>me</string>
次に、ジェンキンスをリロードします。
Sudo launchctl unload -w /Library/LaunchDaemons/org.jenkins-ci.plist
Sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist
次に、Jenkinsは、あなたと同じように実行されているため、キーがある〜/ .sshディレクトリにアクセスできます。
Jenkinsを実際に実行したい場合は、Jenkins.appをチェックすることをお勧めします。 MacでJenkinsを実行する代替の簡単な方法。
https://github.com/stisti/jenkins-app/ を参照してください
https://github.com/stisti/jenkins-app/downloads からダウンロードしてください