[英]how to get all the jenkins users through api
我試圖通過使用 api 來獲取 jenkins 中的所有用戶。
例如,我在 postman 中點擊了以下命令,它向我顯示 jenkins 中的所有工作。
網址 = 192.168.195.150:8080/api/json?pretty=true
結果:
{
"_class": "hudson.model.Hudson",
"assignedLabels": [
{
"name": "master"
}
],
"mode": "NORMAL",
"nodeDescription": "the master Jenkins node",
"nodeName": "",
"numExecutors": 2,
"description": null,
"jobs": [
{
"_class": "hudson.model.FreeStyleProject",
"name": "Apache_kafka_Consumer_Info",
"url": "http://192.168.192.198:8080/job/Apache_kafka_Consumer_Info/",
"color": "blue"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "Apache_Kafka_Zookeeper_Start",
"url": "http://192.168.192.198:8080/job/Apache_Kafka_Zookeeper_Start/",
"color": "red"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "Apache_Kafka_Zookeeper_Status",
"url": "http://192.168.192.198:8080/job/Apache_Kafka_Zookeeper_Status/",
"color": "blue"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "AWS_Lambda",
"url": "http://192.168.192.198:8080/job/AWS_Lambda/",
"color": "blue"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "Input_Validation",
"url": "http://192.168.192.198:8080/job/Input_Validation/",
"color": "blue"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "loginserver-CI",
"url": "http://192.168.192.198:8080/job/loginserver-CI/",
"color": "blue"
},
{
"_class": "hudson.maven.MavenModuleSet",
"name": "loginserver-CI-1",
"url": "http://192.168.192.198:8080/job/loginserver-CI-1/",
"color": "blue"
},
{
"_class": "hudson.maven.MavenModuleSet",
"name": "loginserver-CI-2",
"url": "http://192.168.192.198:8080/job/loginserver-CI-2/",
"color": "blue"
},
{
"_class": "hudson.maven.MavenModuleSet",
"name": "loginserver-CI-3",
"url": "http://192.168.192.198:8080/job/loginserver-CI-3/",
"color": "blue"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "M_test",
"url": "http://192.168.192.198:8080/job/M_test/",
"color": "blue"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "parameter",
"url": "http://192.168.192.198:8080/job/parameter/",
"color": "blue"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "Remote_Deploy",
"url": "http://192.168.192.198:8080/job/Remote_Deploy/",
"color": "blue"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "Remote_Deploy_1",
"url": "http://192.168.192.198:8080/job/Remote_Deploy_1/",
"color": "blue"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "Tomcat_Status",
"url": "http://192.168.192.198:8080/job/Tomcat_Status/",
"color": "yellow"
},
{
"_class": "hudson.model.FreeStyleProject",
"name": "Version_Check",
"url": "http://192.168.192.198:8080/job/Version_Check/",
"color": "blue"
}
],
"overallLoad": {},
"primaryView": {
"_class": "hudson.model.AllView",
"name": "all",
"url": "http://192.168.192.198:8080/"
},
"quietingDown": false,
"slaveAgentPort": -1,
"unlabeledLoad": {
"_class": "jenkins.model.UnlabeledLoadStatistics"
},
"useCrumbs": true,
"useSecurity": true,
"views": [
{
"_class": "hudson.model.AllView",
"name": "all",
"url": "http://192.168.192.198:8080/"
}
]
}
如何修改該 Url 以便我可以列出 Jenkins 中的所有用戶?
如果列出用戶權限以及分配給每個用戶的作業會更好。
您可以使用以下方法獲取用戶列表:-
https://<yourjenkins>/asynchPeople/api/xml?depth=1
使用 jenkinsfile 中的以下代碼獲取所有 Jenkins 用戶:-
import hudson.model.User
User.getAll().each { user ->
println user
}
請參閱鏈接以獲取更多信息:
可以使用 api4jenkins python 包從Jenkins獲取所有用戶
相關文檔在這里: https : //api4jenkins.readthedocs.io/en/latest/user/example.html#system
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.