Gitlab 批量操作

创建用户

Gitlab除了可以通过Web页面添加用户,但这种方法对用户数量太多时非常不方便。Gitlab提供了接口可以实现批量创建用户。

curl 方式

curl -d "password=12345678&email=test@exam.cn&username=test&name=张三&private_token=your_private_token" "http://your_ip/api/v3/users"
参数说明
password新建用户的密码
email新建用户的邮件地址
username新建用户的登录名
name新建用户的用户名称
private_token管理员的Private token

可以通过上面的shell命令将用户的信息格式化后,实现用户批量创建。

python

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import requests

url = "http://your_ip/api/v3/users"
private_token = 'your_private_token'

user_info = [
    ('12345678', 'test123@qq.com', 'test123', 'test123'),
    ('12345678', 'test34@qq.com', 'test34', '王五')
]

payload = "password=%s&email=%s&username=%s&name=%s&"

for item in user_info:
    req = (payload % item) + "private_token=" + private_token;
    response = requests.request("POST", url, data=req)

创建仓库

#!/bin/bash

projects="sdc1 \
          sdc2  \
          sdc3"
for project in $projects
do
    info="name=$project&private_token=your_private_token"
    curl -d $info "http://your_ip/api/v3/projects"
done

删除仓库

删除仓库操作通过 CURL 命令无法正常删除,因此使用 Python 实现。

#!/bin/env python
# -*- coding: utf-8 -*-

import requests

base_url = "https://your_ip/api/v3/projects/"

headers = {
    'private-token': "your_private_token"
}

projects = [
    "sdc1",
    "sdc2",
    "sdc3"
]

for project in projects:
    url = base_url + project
    response = requests.request("DELETE", url, headers=headers, verify=False)
    print(response.text)

参考

[1] Gitlab API
[2] Remove a project by API using /projects/{NAMESPACE}%2F{PROJECTNAME}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值