本文将对Gitlab批量创建用户操作进行说明!
GitLab版本:GitLab Community Edition 13.5.1
思路
调用GitLab提供的API进行用户创建的操作。
操作步骤
一、获取Personal Access Tokens
1、使用有admin权限的账号登录GitLab;
2、单击右上角的头像,点击"Settings"进入设置页面;
3、点击左侧菜单Access Tokens,然后生成 Personal Access Tokens;
4、将生成的personal access token记录下来,后面会用到。
二、准备脚本文件
5、创建userinfo.txt文件,内容格式如下:
12345678 test1@phpsong.com test1 张三
12345678 test2@phpsong.com test2 李四
12345678 test3@phpsong.com test3 测试3
对应字段分别是:密码 邮箱 用户名 别名,字段可以按需调整。
GitLab批量导出用户的操作可以参考:Gitlab批量导出用户
6、创建 gitlabAddUser.sh 文件,内容如下:
#!/bin/bash
# author:test
# 用户信息文件
userinfo="userinfo.txt"
# 读取文件
while read -r line
do
# 去除行首尾空格
l=`echo $line | awk '{gsub(/^\s+|\s+$/, "");print}'`
echo $l
# 按照空格分隔 字段顺序按需调整,但需与userinfo.txt文件一致
password=`echo $l | awk '{print $1}'`
email=`echo $l | awk '{print $2}'`
username=`echo $l | awk '{print $3}'`
name=`echo $l | awk '{print $4}'`
# 发送post请求 token与url需更换为自己的
curl -X POST -H "PRIVATE-TOKEN: xx11xU3zygWPUeXXXMRgM" "http://test.gitlab.com/api/v4/users" -H 'cache-control: no-cache' -H 'content-type: application/json' \
-d '{ "email": "'"$email"'", "username": "'"$username"'", "password": "'"$password"'", "name": "'"$name"'", "skip_confirmation": "true" }'
echo ""
done < $userinfo
其中PRIVATE-TOKEN需要改为第一步获取到的personal access token,
API地址(http://test.gitlab.com/api/v4/users)需要改为自己的gitlab服务器地址,相应的api可查看gitlab的官方文档(https://docs.gitlab.com/ce/api/)
三、执行脚本命令
7、打开shell命令窗口,找到 gitlabAddUser.sh 文件,给此文件添加可执行权限
chmod +x gitlabAddUser.sh
8、执行gitlabAddUser.sh
sh gitlabAddUser.sh
9、至此批量创建用户已完成。