码迷,mamicode.com
首页 > 其他好文 > 详细

gitlab批量添加用户的方法

时间:2018-01-26 17:08:11      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:log   参数   images   tin   新建   帮助   使用   基础上   获取   

gitlab批量添加用户的方法
要在gitlab中添加新的用户,可以用管理员账户在登录gitlab后进入admin area页面,进行添加用户的操作。但是这样只能手工进行操作,一次只能添加一个用户。如果需要一次添加大量用户,不仅操作速度慢,还很容易出错。
要能够?批量添加用户,一个比较好的解决方案是使用gitlab提供的api接口。gitlab API的使用可以参考的gitlab的帮助文档,gitlab提供了很多语言的api 客户端。这里只介绍最简单的http方法。
所有的api请求都要进行身份验证,需要在url或者header中传递private_token参数。用户的private_token可以在profile settings页面的account settings中找到。使用GET或者curl都可以发送api请求。

技术分享图片

技术分享图片
#获取自己账号的用户信息
curl -X GET http://1.1.1.11/api/v3/user?private_token=uMRTjtFk8fqueB1XfJVH
curl http://1.1.1.11/api/v3/user?private_token=uMRTjtFk8fqueB1XfJVH (当前tokenr的信息既管理员的token,只显示管理员的个人信息)

?#获取所有用户的信息
curl -X GET http://1.1.1.11/api/v3/users?private_token=uMRTjtFk8fqueB1XfJVH
curl http://1.1.1.11/api/v3/users?private_token=uMRTjtFk8fqueB1XfJVH(当前用管理员的token,显示所有用户的信息

#添加用户账户(user2)
curl -d "projects_limit=8&can_create_group=false&password=nihao123&email=user2@newtech.com&username=user2&name=user2&private_token=uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users"

#查询一个用户的信息(root)
curl "http://1.1.1.11/api/v3/users?search=root&private_token=uMRTjtFk8fqueB1XfJVH"
?#删除一个用户,查询到的用户ID信息进行删除
新建一个用户(user3),用来测试删除命令
curl -d "projects_limit=8&can_create_group=true&password=nihao123&email=user3@newtech.com&username=user3&name=user3&private_token=uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users"

记住此用户的ID 后面的删除测试要用到

删除用户user3(两条命令一样)
curl -X DELETE --header "PRIVATE-TOKEN:uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users/7"?

curl -X DELETE http://1.1.1.11/api/v3/users/7?private_token=uMRTjtFk8fqueB1XfJVH

以上就是以http方式使用gitlab api的简单命令,可以在这些命令的基础上制作shell脚本或python脚本,实现批量添加用户。如果要使用api进行更复杂的操作,可以使用gitlab提供的客户端,如:python-gitlab、pyapi-gitlab、libsaas-gitlab。
用一个txt 文件导入批量用户的脚本:
#!/bin/bash
userinfo="userinfo.txt"
while read line
do
name=echo $line | awk ‘{print $1}‘
username=echo $line | awk ‘{print $2}‘
userpass=echo $line | awk ‘{print $3}‘
mail=echo $line | awk ‘{print $4}‘
curl -d "projects_limit=1&can_create_group=false&password=$userpass&email=$mail&username=$username&name=$name&private_token=uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users"
done <$userinfo

##########userinfo.txt################
user4 user4 userpass user4@newtech.com
user5 user5 userpass user5@newtech.com
user6 user6 userpass user6@newtech.com
user7 user7 userpass user7@newtech.com
user8 user8 userpass user8@newtech.com
user9 user9 userpass user9@newtech.com

gitlab批量添加用户的方法

标签:log   参数   images   tin   新建   帮助   使用   基础上   获取   

原文地址:http://blog.51cto.com/onlywyn/2065519

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!