Windows 如何使用groovy脚本为现有jenkins作业添加执行批处理命令
我有超过100个詹金的工作。但我有一个新的要求,我必须在不删除/干扰现有配置的情况下,将额外的windows批处理命令包含到所有作业中 有没有办法将新的execute命令注入jenkins master中的所有作业 有人能解释一下吗Windows 如何使用groovy脚本为现有jenkins作业添加执行批处理命令,windows,jenkins,groovy,Windows,Jenkins,Groovy,我有超过100个詹金的工作。但我有一个新的要求,我必须在不删除/干扰现有配置的情况下,将额外的windows批处理命令包含到所有作业中 有没有办法将新的execute命令注入jenkins master中的所有作业 有人能解释一下吗 提前谢谢 首先,需要注意的是,这些脚本会修改正在运行的Jenkins实例中的底层结构,请在执行此操作之前进行备份 您可以在“Manage Jenkins”(您需要管理员访问)下的“脚本控制台”中执行以下脚本 以下脚本在所有自由样式作业中插入批处理命令作为第一步: i
提前谢谢 首先,需要注意的是,这些脚本会修改正在运行的Jenkins实例中的底层结构,请在执行此操作之前进行备份 您可以在“Manage Jenkins”(您需要管理员访问)下的“脚本控制台”中执行以下脚本 以下脚本在所有自由样式作业中插入批处理命令作为第一步:
import java.util.ArrayList;
import hudson.tasks.BatchFile;
for (job in Jenkins.getInstance().getAllItems(FreeStyleProject.class)) {
def buildersList = job.getBuildersList()
def oldBuilders = new ArrayList(buildersList); // Take a copy of existing steps so that we can insert them later
buildersList.clear() // We need to clear the list first, add at index is not supported
buildersList.add(new BatchFile("""\
echo "Windows batch command"
"""));
buildersList.addAll(oldBuilders)
job.save();
}
并在末尾插入以下内容:
import java.util.ArrayList;
import hudson.tasks.BatchFile;
for (job in Jenkins.getInstance().getAllItems(FreeStyleProject.class)) {
def oldBuilders = job.getBuildersList().add(new BatchFile("""\
echo "Windows batch command"
"""));
job.save();
}