我正在尝试通过颠覆为我们的构建环境工作设置詹金斯。我想用当前用户的build参数列出Subversion文件夹列表。我为此做了很多搜索,但是我找不到从jenkins登录的用户credentail列出svn文件夹的方法吗?我使用了List Subversion Tags,ExtendedChoice参数和许多插件来做到这一点。在收集构建参数时,有什么方法可以使用当前登录的用户凭据连接到Subversion?
下面的常规脚本解决了该问题。该脚本可与任何支持groovy的参数插件一起使用。
def user = hudson.model.User.current(); def a = jenkins.model.Jenkins.getAuthentication() def userId = user.getId() def pass =a.getCredentials() def svnurl = 'http://yoursvnurl' def dirs = [] def command = ['svn', 'list', svnurl , '--username' , userId , '--password' , pass ] def proc = command.execute() print command proc.in.eachLine {dirs.add(it) } return dirs