我有没有节点的Jenkins安装程序,所有构建都在同一台机器上运行。我想设置一个Groovy脚本来清理旧的工作区,所以我想使用:
proj.scm.processWorkspaceBeforeDeletion(@Nonnull Job<?,?> project,
@Nonnull FilePath workspace,
@Nonnull Node node)
node
当掌握时,我应该赋予什么价值?
执行以下脚本,使用清理所有Jenkins工作区Groovy
:
import hudson.model.* // For each project
for(item in Jenkins.instance.items)
{ // check that job is not building
if(!item.isBuilding())
{
println("Wiping out workspace of job "+item.name)
item.doDoWipeOutWorkspace()
} else {
println("Skipping job "+item.name+", currently building")
}
}
问题内容: 随着我越来越多地将Groovy与Jenkins Workflow插件配合使用,我开始意识到可以在多个脚本中使用的可重用代码。 共享此代码的最佳方法是什么?是否可以使用共享代码生成我自己的.jar并在Workflow脚本中利用它?还是有更简单的方法? 问题答案: 我实际上通过使用我们自己的git repo最终完成了这项工作,但在工作流库/ src中放置了一个符号链接以指向该repo。
问题内容: 我正在使用Groovy脚本控制台在Jenkins上创建和更新作业。使用此处记录的API http://javadoc.jenkins-ci.org/ 我发现了如何通过使用创建工作 但是,如果作业已经存在,则此方法将失败。如何使用新的xml更新现有作业? 更新资料 基于@ogondza的答案,我使用了以下内容来创建然后更新作业 问题答案: 使用AbstractItem#updateByX
问题内容: 但是,我需要从System Groovy脚本读取文件,因此使用Text-finder或Groovy PostBuild插件的解决方案将不起作用。 如何从系统Groovy脚本获取工作区路径?我尝试了以下方法: 谢谢! 问题答案: 每个构建都有一个 工作区 ,因此您需要首先找到所需的项目。(在詹金斯中,术语“工作”和“项目”在API中也是可以互换使用的。) 之后,您可以交叉手指,只需调用已
这个问题似乎被问了多次,但所有答案都与Jenkins Pipeline jobs(插件:workflow job)有关。 我正在将一堆旧的自由式作业从旧的Jenkins独立服务器迁移到分布式Jenkinsenv,我决定将它们转换为Jenkins管道作业(不能使用Blue Ocean,因为SCM是SVN。 无论如何,对于某些作业来说,不希望清理它们的工作空间,因为它们是某种健全/验证作业,而且因为S
问题内容: 我已经在服务器中下载并配置了Jenkins,我的问题是我需要通过Java访问Jenkins来执行一些过程,例如开始工作,返回当前工作任务以及返回服务器中的工作列表(全部使用Json)我试过几个代码,例如这个,但即时得到任何结果,也是我无法找到一个明确的方式来做到这一点,是有任何明确的API和例子办呢? 问题答案: 您可以通过XML 使用Jenkins API: 可以在此处找到完整的示例
我想知道是否有人能帮上忙。清理和构建最简单的项目时出错。(见下文) 导致错误的步骤: 作为一名新员工,也就是一台不超过4个月的机器上的新用户,我从打开NetBeans 8.2开始——一周前为我安装了NetBeans和Android Studio(用于sdk)。 但是没有安装Android插件,所以我实现了nbandroid更新中心来安装插件。然后我连接了sdk——在users\user中找到。us