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())

 

+ Recent posts