我正在尝试使用subversion为我们的构建环境设置jenkins。我想列出具有构建参数的当前用户凭据的subversion文件夹列表。我搜索了很多,但我找不到用jenkins登录用户凭证列出svn文件夹的方法?我使用List Subversion Tags,ExtendedChoice参数和许多插件来完成这项工作。有没有办法在收集构建参数时使用当前登录的用户凭证连接到subversion?
答案 0 :(得分:3)
下面的groovy脚本解决了这个问题。该脚本可以与任何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