curl --header "Private-Token: 토큰" \
--header "Content-Type: application/json" \
--request POST \
--data '{"user_id": 1, "access_level": 30}' \
"http://깃랩주소:포트/api/v4/groups/3/members"
access_level 이 접근 권한 이다
- No access (0)
- Minimal access (5)
- Guest (10)
- Reporter (20)
- Developer (30)
- Maintainer (40)
- Owner (50)
이렇게 정할 수 있으며 위 예시에서는 30, developer의 권한을 사용자에게 할당하고 있다.
gitlab 서버의 cli 환경에서 진행했다.
등록하고 싶은 유저가 여러명인 경우 파이썬의 for 문을 이용해서 진행해본다
import requests
gitlab_url = "http://깃랩주소:포트/api/v4"
access_token = "토큰"
# 추가할 멤버와 그룹 ID 설정
user_id = 1 # 사용자의 ID
group_id = 1 # 그룹의 ID
# 멤버 추가 요청을 위한 데이터 설정
user_data = [{
"user_id": user_id,
"access_level": 30 # 액세스 수준
},
{
"user_id": 2,
"access_level": 30 # 액세스 수준
}
]
# API 요청을 보내기 위한 HTTP 헤더 설정
headers = {
"Private-Token": access_token,
"Content-Type": "application/json" # 데이터 형식 지정
}
# 그룹에 멤버 추가 요청 보내기
# 응답 확인
for data in user_data:
response = requests.post(f"{gitlab_url}/groups/{group_id}/members", headers=headers, json=data)
if response.status_code == 201:
print("그룹 멤버 추가가 성공적으로 완료되었습니다.")
else:
print("그룹 멤버 추가에 실패했습니다. 상태 코드:", response.status_code)
print("에러 메시지:", response.json())
'CI-CD > Gitlab' 카테고리의 다른 글
| Kroki 미적용 해결 - diagram proxy 미지원 문제 (0) | 2026.06.01 |
|---|---|
| 별거 아니지만 gitlab 레포지토리 한 번에 clone (2) | 2024.09.04 |
| gitlab api를 이용해 cli 환경에서 유저 정보 추출 및 등록 (1) | 2024.05.03 |