会社でJenkinsを触る機会が増えてきました。
今回は環境構築からやってみたんですが、そこまでは普通にネットの海に転がってる情報でできたんです…
問題はUnity+Jenkinsのビルドで勃発した
環境はこんな感じ
Unity : 5.5.0f3
Jenkins : 2.45
OS : macOS Sierra 10.12.2
Java : 1.8.0_121
概要
インストーラでJenkinsをインストールすると
user : jenkins
group : LaunchDaemons
これで実行されてしまう。
このユーザーではアクセス権限のない、Provisioning profileとか,AndroidSDKとかにアクセスできず、ビルドが通らないというエラーですね。。
さらに、Unityはビルド時にEnlightenのためにGPUを使用するが、LaunchDaemonsではGPUを使用できないのでLaunchAgentsとして実行する必要あり。
参考 : http://qiita.com/MARQUE/items/a26f84cc310c7291ab77
直しかた
$ sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
$ mkdir ~/Library/LaunchAgents
$ sudo mv /Library/LaunchDaemons/org.jenkins-ci.plist ~/Library/LaunchAgents/
$ sudo chown -R hoge:staff /var/log/jenkins/
$ sudo chown -R hoge:staff /Users/Shared/Jenkins/
$ launchctl load ~/Library/LaunchAgents/org.jenkins-ci.plist
説明
・実行中のJenkins停止
・LaunchDaemonsの設定ファイルをLaunchAgentsとして起動するためにLaunchAgentsフォルダに移動
・ログファイルフォルダとワークフォルダの所有権をJenkinsを実行させたいユーザーに変更
id -p //これでユーザーとグループ確認できる
・LaunchAgentsとして再起動
これで解決。。。結局参考させていただいたサイト通りですね。。
参考サイトではnewsyslogの権限も変更してました
最近のコメント