我在Jenkins控制台中使用以下代码提取Jenkins已知的所有用户的列表
import hudson.model.User
def users = User.getAll()
for (User u : users) {
def userid = u.getId()
def fullname = u.getFullName()
println("User ID - " + userid + ", Full Name - " + fullname)
}
据我所知,这个哈德逊.model.User模块不包含任何“上次提交活动”,如这里的asynchpeople API页面所示-https://JenkinsURL/asynchPeople/
如果查看Jenkins示例的asynchPeople URL,它包含用户ID、名称、上次提交活动以及提交所在的管道。我希望从脚本/插件/管道提取所有这些信息,而不是导航到URL进行手动提取
我已经浏览了文档,但没有找到任何对“上次提交活动”的引用,因此我不确定Jenkins. https://javadoc.jenkins-ci.org/hudson/model/User.html是如何生成此活动的
有人知道如何提取这些信息吗?谢谢!
1条答案
按热度按时间daolsyd01#
是的,你的观察是正确的,提交活动总是绑定到一个构建/运行,因此它不是在User对象中维护的。当你进入
asynchPeople
页面时,数据是动态地处理在一起的。所以没有直接的方法(除非你调用API http://localhost:8080/asynchPeople/api/xml)。上面就是Jenkins得到这些数据的方法。看看这个。