Jenkins導入から運用⑥ ビルドログの取得+おまけ
Jenkins導入から運用⑤ スレーブノードの設定 - phaaaaantomのメモ帳
の最後で書いた
ビルドして出力されたもの(exeとか)がほしい場合は
「Windowsバッチコマンドの実行」にコピーする内容やら場所やら書いとく必要がある
出力されたもの+ビルドログとかも欲しくなると思う
出力物は実行PCにあるけどビルドログはJenkinsが入ってるPCに出力される
だから取得する場合はそのディレクトリを指定すればいい
Jenkinsのディレクトリ(C:\Program Files\Jenkins)をネットワーク共有に設定して
Jenkins側の環境変数でビルド実行時間も用意されてるので(%BUILD_ID%)
\\[ドメイン名]\Jenkins\jobs\[プロジェクト名]\builds\%BUILD_ID%\Log
みたいな感じでビルドログの取得ができる
おまけ
ログファイルの取得は↑で書いた内容でいいんだけど
スレーブマシン上からマスターマシンのJenkinsフォルダを弄れると楽だったので少し設定を変更
シンボリックリンク
- 作成した先のディレクトリに飛べる
- ショートカットと違って飛ぶ前のディレクトリがパスに含まれる(重要)
左がショートカット、右がシンボリックリンク
作成するのにコマンドプロンプトを使うので
コマンドプロンプトを管理者実行で起動
mklink /d [作成するリンク名] [リンク先] ログの取得の場合 mklink /d [作成するリンク名] \\[ドメイン名]\Jenkins\jobs\[プロジェクト名]\builds\ ※Jenkinsのビルド中じゃないと実行時間の環境変数が取れないのでその手前にリンク作成
リンク先が無くても作成できるのでうち間違いに注意
リンク名を仮に C:\Projects\Log とすると
こんな感じ
見て分かるとおりリンク先が無くても作成できるので間違いに注意
他PCのファイルを自分のPC内にあるかの如くファイルが扱えるようになるので結構便利
多用し過ぎると実データの場所が分かりづらくなるので注意
で作成したリンクを使った形に直すと
C:\Projects\Log\%BUILD_ID%\Log
で取得できるようになる
おまけのほうが長くなったけどこんな感じで