[英]how to delete a particular file in Jenkins workspace via Jenkins groovy script
[英]How to set subversion workspace format with a Groovy script in Jenkins?
我正在尝试以编程方式( Img )更改 SubversionSCM 插件的 Subversion 工作区格式。 当然,我一直在尝试使用 groovy 脚本,但我找不到任何这样做的方法。
通过在 Groovy 控制台中运行此脚本,我能够检索当前格式:
import jenkins.model.*
def inst = Jenkins.getInstance()
def desc = inst.getDescriptor("hudson.plugins.git.GitSCM")
desc =inst.getDescriptor("hudson.scm.SubversionSCM")
println(desc.getWorkspaceFormat())
这将打印出正确的 31。 它是在“svnkit”的“ISVNWCDb”接口中找到的“WC_FORMAT_18”成员的值。 你可以在这里看到它在插件的 git 存储库中使用。
搜索 subversion 插件的文档,我找不到任何设置它的方法,也找不到SubversionSCM 描述符中的任何公共方法。
有没有办法以编程方式配置该设置。 我更喜欢 groovy 脚本,但目前任何事情都可以。
我正在为同样的事情苦苦挣扎,并找到了一些似乎有效的方法。 正如您已经发现的那样,SubversionSCM 描述符上没有工作区格式的设置器,但工作区格式作为私有字段存在。
这似乎对我有用:
def required_format = 31 //31 is SVN 1.8 WF.
svn_desc = instance.getDescriptor("hudson.scm.SubversionSCM")
if(svn_desc.getWorkspaceFormat() != required_format)
{
Field wf = desc.getClass().getDeclaredField("workspaceFormat")
wf.setAccessible(true) //Private field -- make it public
wf.set(desc, required_format)
wf.setAccessible(false) //And make it private again
}
这在 Jenkins 2.122 和 Subversion Plug-In 2.10.6 中有效
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.