写在前面
坦白讲,写下此篇博客的时候我正痛苦万分,悔恨不已,为什么早些时候没有在Python上多下功夫,以致于面临现在的窘境。公司几百个Gitlab项目,领导为了方便内部不同小组之间的技术交流,让我对Gitlab的权限做一个规整,将敏感项目设为member可见,非敏感项目设为登录可见。这么多项目如果挨个手动去改,手估计得废掉,所以只能利用GItlab API去批量修改,网上有找到类似的Python脚本,然而我照葫芦画瓢都画不下来,着实蠢的一笔,写不来Python,就只能用其它的方法咯。
Gitlab权限
Gitlab的项目访问类型有三种:
- Public:任何人可见
- Internal:登录Gitlab的用户可见
- Private:授权的member可见
修改Gitlab项目权限时需要注意(项目和其所属组都是Private类型的情况):
- 如果想要将Private类型的项目修改为Internal,需要先修改项目所属组的Visibility。
- 如果项目所属组还有父组,则需要先修改父组的Visibility,就好比俄罗斯套娃一样,要先拿掉最外层,才能看见里面的一层。
实施步骤
1. 首先要设置一个access token,创建完成后要记录一下token,否则离开此页面token就不可见了。