在JAVA中通过API更改Jenkins构建名称和描述

我正在尝试使用Java更改Jenkins的构建#并通过REST API构建描述。 我可以看到,在下面的URL中,这些人试图使用一些curl代码更改构建描述,

修改Jenkins描述构建

我不知道他是如何通过curl命令实现它的。 请帮忙!

http://localhost:8080/job///api/ 

 curl -u $USER:$PASSWORD --data-urlencode "description=$new_description" \ --data-urlencode "Submit=Submit" \ "$jenkins_url/job/$job_name/$build_number/submitDescription" 

他正在将网页表单数据提交到"$jenkins_url/job/$job_name/$build_number/submitDescription"
基本上他是模仿用户手动进入构建页面,单击“编辑描述”链接,输入描述并单击“提交”按钮。 这是做到这一点的一种方式。

您也可以从Jenkins CLI执行此操作。
转至: http://localhost:8080/cli/command/set-build-description获取帮助。
一旦有了jenkins-cli.jar ,就可以jenkins-cli.jar执行以下命令:

java -jar jenkins-cli.jar -s http://localhost:8080/ set-build-description YOUR-DESCRIPTION

我需要在Perl(我是新手)中做到这一点并得到以下内容为我工作:

 sub ChangeJobDescription { my $url = 'http://jenkinurl/job///configSubmit'; my $jsonData = '{"displayName" => "", "description" => ""}'; my $ua = LWP::UserAgent->new(); my $req = POST($url, Content_Type => 'application/x-www-form-urlencoded', Content => [ 'Submit' => 'save', 'json' => $jsonData ], ); $req->authorization_basic('user', 'password'); my $response = $ua->request($req); print $response->as_string; } 

我能够在Payload中使用以下URL和“Content-Type”标题作为application / x-www-form-urlencoded进行POST调用。

url: http://:8058/job/MYJOB_NAME/BUILD_NUMBER/configSubmit

表格价值