InfoGrab DocsInfoGrab Docs

외부 상태 확인

외부 상태 확인은 서드파티 도구와 통합하여 머지 리퀘스트에 통과 또는 실패 상태를 표시하고 확인이 실패하면 병합을 차단할 수 있습니다.

상태 확인은 외부 요구 사항의 상태를 조회하기 위해 외부 시스템에 보내는 API 호출입니다. 머지 리퀘스트 데이터를 서드파티 도구로 보내는 상태 확인을 만들 수 있습니다. 사용자가 머지 리퀘스트를 생성, 변경, 종료하면 GitLab이 알림을 보냅니다. 그러면 사용자나 자동화된 워크플로가 GitLab 외부에서 머지 리퀘스트의 상태를 업데이트할 수 있습니다. 이 통합을 사용하면 ServiceNow 같은 서드파티 워크플로 도구나 직접 선택한 도구와 연동할 수 있습니다. 서드파티 도구는 해당 상태를 응답으로 보냅니다. 이 상태는 머지 리퀘스트 안에 머지를 막지 않는 위젯으로 표시되어, 머지 리퀘스트 작성자나 검토자가 머지 리퀘스트 화면에서 바로 상태를 확인할 수 있습니다. 머지 리퀘스트 상태 확인은 프로젝트별로 구성합니다. 프로젝트 간에는 공유되지 않습니다. 상태 확인이 2분을 넘겨 pending 상태로 남아 있으면 실패합니다. 접근 권한 # 외부 상태 확인 응답은 다음 사용자가 확인할 수 있습니다. 프로젝트에서 Reporter, Developer, Maintainer 또는 Owner 권한을 가진 사용자 프로젝트 공개 범위가 internal인 경우 머지 리퀘스트를 볼 수 있는 인증된 모든 사용자 즉, 프로젝트가 internal이면 머지 리퀘스트에 접근할 수 있는 로그인 사용자는 모두 외부 상태 확인 응답을 볼 수 있습니다. 사용 사례, 기능 탐색, 개발 일정에 관한 자세한 내용은 에픽 3869 를 참고합니다. 모든 상태 확인을 통과하지 않은 머지 리퀘스트의 머지 차단 # 기본적으로 프로젝트의 머지 리퀘스트는 외부 상태 확인이 실패해도 머지할 수 있습니다. 외부 상태 확인이 실패했을 때 머지 리퀘스트의 머지를 차단하려면 다음 절차를 따릅니다. 상단 바에서 Search or go to 를 선택하고 프로젝트를 찾습니다. 왼쪽 사이드바에서 Settings > Merge requests 를 선택합니다. Status checks must succeed 체크박스를 선택합니다. Save changes 를 선택합니다. 라이프사이클 # 외부 상태 확인은 비동기 워크플로로 동작합니다. 머지 리퀘스트는 다음과 같은 경우 외부 서비스로 머지 리퀘스트 웹훅 페이로드 를 보냅니다. 머지 리퀘스트가 업데이트, 종료, 재오픈, 승인, 승인 취소 또는 머지된 경우. 머지 리퀘스트의 소스 브랜치에 코드가 푸시된 경우. 페이로드에는 상태 확인의 id , name , external_url 을 담은 external_approval_rule 객체도 포함됩니다. Mermaid 다이어그램 (8줄) 소스 코드 보기 %%{init: { "fontFamily": "GitLab Sans" }}%% sequenceDiagram accTitle: Workflow for external status checks accDescr: Merge request sends payload to external service and receives status check response Merge request