* Fix bug#36595,37109,37110

This commit is contained in:
zenggang
2023-08-08 07:15:45 +00:00
parent 94b7983e66
commit 7db92b122e
5 changed files with 26 additions and 6 deletions
+7 -2
View File
@@ -134,13 +134,18 @@ class compileModel extends model
$url = new stdclass();
$url->userPWD = "$jenkinsUser:$jenkinsPassword";
$detailUrl = strpos($jenkins->pipeline, '/job/') !== false ? sprintf('%s%s/api/json', $jenkinsServer, $jenkins->pipeline) : sprintf('%s/job/%s/api/json', $jenkinsServer, $jenkins->pipeline);
$hasParameterizedBuild = $this->loadModel('job')->checkParameterizedBuild($detailUrl, $url->userPWD);
$buildInterface = $hasParameterizedBuild ? 'buildWithParameters' : 'build';
if(strpos($jenkins->pipeline, '/job/') !== false)
{
$url->url = sprintf('%s%sbuildWithParameters/api/json', $jenkinsServer, $jenkins->pipeline);
$url->url = sprintf("%s%s{$buildInterface}/api/json", $jenkinsServer, $jenkins->pipeline);
}
else
{
$url->url = sprintf('%s/job/%s/buildWithParameters/api/json', $jenkinsServer, $jenkins->pipeline);
$url->url = sprintf("%s/job/%s/{$buildInterface}/api/json", $jenkinsServer, $jenkins->pipeline);
}
return $url;
+2 -2
View File
@@ -4,7 +4,7 @@ function changeEngine(event)
if(engine == 'jenkins')
{
$('.reference').removeClass('hidden');
$('.reference').addClass('hidden');
}
else
{
@@ -82,7 +82,7 @@ function changeRepo(event)
if(data.type.indexOf('git') != -1)
{
var engine = $('[name=engine]').val();
if(engine == 'jenkins') $('.reference').removeClass('hidden');
//if(engine == 'jenkins') $('.reference').removeClass('hidden');
$('.reference').addClass('gitRepo');
$('.svn-fields').addClass('hidden');
+1 -1
View File
@@ -75,7 +75,7 @@ function changeRepo(event)
if(data.type.indexOf('git') != -1)
{
var engine = $('[name=engine]').val();
if(engine == 'jenkins') $('.reference').removeClass('hidden');
//if(engine == 'jenkins') $('.reference').removeClass('hidden');
$('.reference').addClass('gitRepo');
$('.svn-fields').addClass('hidden');
+15
View File
@@ -700,4 +700,19 @@ class jobModel extends model
return true;
}
/**
* Check if jenkins has enabled parameterized build.
*
* @param string $url
* @param string $userPWD
* @access public
* @return bool
*/
public function checkParameterizedBuild($url, $userPWD)
{
$response = common::http($url, null, array(CURLOPT_HEADER => true, CURLOPT_USERPWD => $userPWD));
return strpos($response, 'hudson.model.ParametersDefinitionProperty') !== false;
}
}
+1 -1
View File
@@ -135,7 +135,7 @@ formPanel
),
formGroup
(
$job->engine == 'jenkins' ? setClass('reference') : setClass('reference hidden'),
$job->engine == 'jenkins' ? setClass('reference hidden') : setClass('reference hidden'),
set::labelWidth('5em'),
set::label($lang->job->branch),
set::required(true),