Java/Jenkins/プラグイン開発のTIPS集/Jenkins CLI
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
// 下階層用テンプレート
#topicpath
----
#contents
**概要・事前準備 [#j11e734f]
Jenkins にはJenkinsの操作をリモートで行うためのコマンドラ...
実際にローカルファイルのプラグインファイルをリモートでイ...
[[ローカルのプラグインをインストール>Java/Jenkins/TIPS集#...
ちなみに、コマンドの一覧は
Jenkinsの管理 >> Jenkins CLI
などにまとまっています。
#ref(pic01.png)
以下、[[ローカルのプラグインをインストール>Java/Jenkins/T...
**自作する [#l1ddf6bd]
さて今回は、このJenkins CLIを自作してみたいと思いますが、...
package nu.mine.kino.jenkins.plugins.projectmanagement.c...
import hudson.Extension;
import hudson.cli.CLICommand;
import hudson.model.AbstractBuild;
import hudson.model.AbstractProject;
import org.kohsuke.args4j.Argument;
/**
* @author Masatomi KINO
* @version $Revision: 863 $
*/
@Extension
public class HelloCommand extends CLICommand {
@Argument(metaVar = "JOB", usage = "プロジェクト名を...
public AbstractProject<?, ?> job;
@Argument(metaVar = "MSG1", usage = "メッセージ指定1...
public String msg1;
@Argument(metaVar = "MSG2", usage = "メッセージ指定2...
public String msg2;
@Override
public String getShortDescription() {
return "Hello Worldなサンプルです";
}
@Override
protected int run() throws Exception {
stdout.println("Hello World, " + msg1 + ", " + m...
final AbstractBuild<?, ?> build = job.getLastSuc...
stdout.println(build.getNumber());
stdout.println(build.getUrl());
return 0;
}
}
こんだけです。コンストラクタで渡される引数にannotationさ...
Jenkinsを再起動し先ほどのコマンドの一覧を見てみると
#ref(pic02.png)
確かに追加されていることが分かります。コマンドの名前はク...
#ref(pic03.png)
こんな感じにusageの画面も追加されています。親切ですね((さ...
**実行してみる。 [#o8b695f5]
usageの通り実行してみます。
c:\tmp>java -jar jenkins-cli.jar -s http://localhost:808...
実行結果は以下の通り。
Hello World, messege1, message2
1
job/Test/1/
c:\tmp>
実行されました!
このメソッドでいろいろ処理を記述すれば、リモートからコマ...
----
この記事は
#vote(おもしろかった[2],そうでもない[0])
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:33:00};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:14};
- 1 -- [[N3dONkZTMk4=]] &new{2024-09-25 (水) 10:24:31};
- 1 -- [[N3dONkZTMk4=]] &new{2024-09-25 (水) 10:23:55};
- 1 -- [[${9999804+9999403}]] &new{2024-09-25 (水) 10:37:...
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:26:29};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:29:20};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:26:26};
- 1 -- [[N3dONkZTMk4=]] &new{2024-09-25 (水) 10:23:37};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:24:30};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:37};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:37};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:24:48};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:26:28};
#comment
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:26};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:24:02};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:17};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:14};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:00};
#topicpath
SI
終了行:
// 下階層用テンプレート
#topicpath
----
#contents
**概要・事前準備 [#j11e734f]
Jenkins にはJenkinsの操作をリモートで行うためのコマンドラ...
実際にローカルファイルのプラグインファイルをリモートでイ...
[[ローカルのプラグインをインストール>Java/Jenkins/TIPS集#...
ちなみに、コマンドの一覧は
Jenkinsの管理 >> Jenkins CLI
などにまとまっています。
#ref(pic01.png)
以下、[[ローカルのプラグインをインストール>Java/Jenkins/T...
**自作する [#l1ddf6bd]
さて今回は、このJenkins CLIを自作してみたいと思いますが、...
package nu.mine.kino.jenkins.plugins.projectmanagement.c...
import hudson.Extension;
import hudson.cli.CLICommand;
import hudson.model.AbstractBuild;
import hudson.model.AbstractProject;
import org.kohsuke.args4j.Argument;
/**
* @author Masatomi KINO
* @version $Revision: 863 $
*/
@Extension
public class HelloCommand extends CLICommand {
@Argument(metaVar = "JOB", usage = "プロジェクト名を...
public AbstractProject<?, ?> job;
@Argument(metaVar = "MSG1", usage = "メッセージ指定1...
public String msg1;
@Argument(metaVar = "MSG2", usage = "メッセージ指定2...
public String msg2;
@Override
public String getShortDescription() {
return "Hello Worldなサンプルです";
}
@Override
protected int run() throws Exception {
stdout.println("Hello World, " + msg1 + ", " + m...
final AbstractBuild<?, ?> build = job.getLastSuc...
stdout.println(build.getNumber());
stdout.println(build.getUrl());
return 0;
}
}
こんだけです。コンストラクタで渡される引数にannotationさ...
Jenkinsを再起動し先ほどのコマンドの一覧を見てみると
#ref(pic02.png)
確かに追加されていることが分かります。コマンドの名前はク...
#ref(pic03.png)
こんな感じにusageの画面も追加されています。親切ですね((さ...
**実行してみる。 [#o8b695f5]
usageの通り実行してみます。
c:\tmp>java -jar jenkins-cli.jar -s http://localhost:808...
実行結果は以下の通り。
Hello World, messege1, message2
1
job/Test/1/
c:\tmp>
実行されました!
このメソッドでいろいろ処理を記述すれば、リモートからコマ...
----
この記事は
#vote(おもしろかった[2],そうでもない[0])
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:33:00};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:14};
- 1 -- [[N3dONkZTMk4=]] &new{2024-09-25 (水) 10:24:31};
- 1 -- [[N3dONkZTMk4=]] &new{2024-09-25 (水) 10:23:55};
- 1 -- [[${9999804+9999403}]] &new{2024-09-25 (水) 10:37:...
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:26:29};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:29:20};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:26:26};
- 1 -- [[N3dONkZTMk4=]] &new{2024-09-25 (水) 10:23:37};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:24:30};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:37};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:37};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:24:48};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:26:28};
#comment
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:26};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:24:02};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:17};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:14};
- 1 -- [[MvEbNNyB]] &new{2024-09-25 (水) 10:23:00};
#topicpath
SI
ページ名: