要在Jenkins中安排构建,我需要添加一个“cron”参数,然后一切正常。但我有很多驴子用户,他们不知道如何安排使用cron。
有没有办法在没有API本身(http://jenkins/job/jobname/build?delay=4000
我不想要这个)或cron的情况下安排Jenkins构建?也许是一些詹金斯插件...
答案 0 :(得分:0)
解决这个问题:
<?php
if($_POST) {
$fields = array(
"POST_PARAMETERS" => $_POST['params']
);
$delay = (int) $_POST['delay'];
$username = "my_username";
$password = "my_password";
$token = "MY_JENKINS_TOKEN_NAME";
$job = "JOB_NAME";
$url = "http://jenkins_host/jenkins/job/".$job."/buildWithParameters?token=".$token."&delay=".$delay;
$process = curl_init($url);
curl_setopt($process, CURLOPT_HEADER, 1);
curl_setopt($process, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($process, CURLOPT_TIMEOUT, 30);
curl_setopt($process, CURLOPT_POST, 1);
curl_setopt($process, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($process, CURLOPT_POSTFIELDS, http_build_query($fields));
curl_setopt($process, CURLOPT_POST, count($fields));
$return = curl_exec($process);
echo http_build_query($fields);
echo curl_error($process);
curl_close($process);
die;
}
?>
我给了JOB_NAME和构建参数,它运行良好。 cURL使用授权令牌为我做了诀窍。
感谢所有试图提供帮助的人。