Jenkins远程访问API:检索最新的参数选择
我目前正在根据管道中的可用代理及其标签构建我的选择:Jenkins远程访问API:检索最新的参数选择,jenkins,jenkins-pipeline,jenkins-groovy,Jenkins,Jenkins Pipeline,Jenkins Groovy,我目前正在根据管道中的可用代理及其标签构建我的选择: def loadConfigurations() { def configurations = []; def jenkins = Jenkins.instance; def onlineComputers = jenkins.computers.findAll { it.online }; def availableLabels = onlineComputers.collect {
def loadConfigurations() {
def configurations = [];
def jenkins = Jenkins.instance;
def onlineComputers = jenkins.computers.findAll { it.online };
def availableLabels = onlineComputers.collect {
it.assignedLabels.collect { LabelAtom.escape(it.expression) } }
.flatten().unique(false);
def lineage16Configurations = ['samsung:klte:lineage:16.0'];
if (availableLabels.containsAll(['lineage', '16.0'])) {
configurations.addAll(lineage16Configurations);
}
return configurations;
}
def configurations = loadConfigurations();
pipeline {
agent { label 'master' }
parameters {
choice name: 'CONFIG', choices: configurations, description: 'Configuration containing vendor, device, OS and its version. Each separated by a colon.'
}
//...
现在,假设所有代理都处于脱机状态,当请求远程访问API时,我没有得到最新的选择,因为它们只在启动构建时更新。是否存在通过远程访问API以某种方式检索它们的现有方法,或者我是否需要编写自己的插件,为远程访问API添加新的端点
我已经尝试了Active Choices参数和Extended Choice参数,但没有成功。两者都不会在API中显示任何选项。我在玩弄可扩展选项参数,并创建了一个将choiceList公开给远程访问API的选项列表。然后,API返回更改的选项,而不构建作业。我在玩弄可扩展选项参数,并创建了一个将choiceList公开给远程访问API的选项列表。然后API返回更改的选择,而不构建作业