Jenkinsプラグインのエラーがなかなかわからなかった(こちら)のでとりあえずログだしするために微妙に改造。
対象はssh-agent。
とりいそぎレポジトリからクローン
STSにインポートしたかったけどMavenのライフサイクル周りが色々エラーを出していたのでVSCode(実質ターミナルしか使っていないのでコマンドラインと同じ程度)で作業。
Java/Mavenもなかったりパス通っていなかったのでダウンロード&パス通し(こちらの感じ)
C:\Users\kitam\git\ssh-agent-plugin> mvn install
おもむろにパッケージ化したくて上記コマンドを打ったがテストでひっかかった。
とりいそぎログ出しが目標なのでテストケースをコメントアウト(クラスは残し殻だけの状態)し再度実行。
targetディレクトリにssh-agent.hpiができている
これをジェンキンス管理画面のプラグイン->高度な設定->ファイルを指定->デプロイ
でインストールできることを確認
とりあえず動くこと確認したので次はログの埋め込み。
launcher.launch().stdout(listener.getLogger()).cmds("id").quiet(true).start().joinWithTimeout(1, TimeUnit.MINUTES, listener);
launcher.launch().stdout(listener.getLogger()).cmds("env").quiet(true).start().joinWithTimeout(1, TimeUnit.MINUTES, listener);
int status = launcher.launch().stdout(listener.getLogger()).cmds("ssh-agent", "-k").quiet(true).start().joinWithTimeout(1, TimeUnit.MINUTES, listener);
listener.getLogger().println("status: " + status);
hudson.Launcherやhudson.model.TaskListenerにログ出し機能、パイプ機能的なものがあるので適宜埋め込んでもう一回ビルド~デプロイ。
(デフォルト設定だと?)管理画面のコンソールに出力される。