Slack용 GitLab 앱
Offering: GitLab.com
이 페이지에는 Slack용 GitLab 앱의 사용자 문서가 포함되어 있습니다. Slack용 GitLab 앱은 Slack 워크스페이스에서 슬래시 명령어와 알림을 제공하는 네이티브 Slack 앱입니다. GitLab 15.0 이상에서 Slack용 GitLab 앱은 세분화된 권한을 사용합니다.
히스토리
- GitLab 16.2에서 GitLab Self-Managed에 대해 도입되었습니다.
이 페이지에는 Slack용 GitLab 앱의 사용자 문서가 포함되어 있습니다. 관리자 문서는 Slack용 GitLab 앱 관리를 참조하세요.
Slack용 GitLab 앱은 Slack 워크스페이스에서 슬래시 명령어와 알림을 제공하는 네이티브 Slack 앱입니다. GitLab은 Slack 사용자를 GitLab 사용자와 연결하여 Slack에서 실행하는 명령어가 연결된 GitLab 사용자에 의해 실행됩니다.
Slack용 GitLab 앱 설치#
사전 요구사항:
- Slack 워크스페이스에 앱을 추가하는 데 적절한 권한이 있어야 합니다.
- GitLab Self-Managed에서는 관리자가 통합을 활성화해야 합니다.
GitLab 15.0 이상에서 Slack용 GitLab 앱은 세분화된 권한을 사용합니다. 기능은 변경되지 않았지만 앱을 재설치해야 합니다.
프로젝트 또는 그룹 설정에서#
히스토리
- 그룹 수준에서의 설치가 GitLab 16.10에서
gitlab_for_slack_app_instance_and_group_level이라는 플래그와 함께 도입되었습니다. 기본적으로 비활성화됩니다. - GitLab 16.11에서 GitLab.com, GitLab Self-Managed 및 GitLab Dedicated에서 활성화되었습니다.
- GitLab 17.8에서 일반적으로 사용 가능합니다. 피처 플래그
gitlab_for_slack_app_instance_and_group_level이 제거되었습니다.
프로젝트 또는 그룹 설정에서 Slack용 GitLab 앱을 설치하려면:
- 상단 바에서 Search or go to를 선택하고 프로젝트 또는 그룹을 찾습니다.
- 왼쪽 사이드바에서 Settings > Integrations를 선택합니다.
- GitLab for Slack app을 선택합니다.
- Install GitLab for Slack app을 선택합니다. Slack 확인 페이지로 리디렉션됩니다.
- Slack 확인 페이지에서:
- 선택사항. 두 개 이상의 Slack 워크스페이스에 로그인한 경우 오른쪽 상단에서 드롭다운 목록에서 앱을 설치할 워크스페이스를 선택합니다. GitLab Self-Managed 및 GitLab Dedicated에서는 관리자가 먼저 여러 워크스페이스 지원을 활성화해야 드롭다운 목록이 나타납니다.
- Allow를 선택합니다.
Slack App Directory에서#
GitLab.com에서 Slack App Directory에서도 Slack용 GitLab 앱을 설치할 수 있습니다.
Slack App Directory에서 Slack용 GitLab 앱을 설치하려면:
- GitLab for Slack 페이지로 이동합니다.
- Slack 워크스페이스와 연결할 GitLab 프로젝트를 선택합니다.
Slack용 GitLab 앱 재설치#
GitLab이 Slack용 GitLab 앱의 새로운 기능을 릴리스하면 해당 기능을 사용하기 위해 앱을 재설치해야 할 수 있습니다.
Slack용 GitLab 앱을 재설치하려면:
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 Settings > Integrations를 선택합니다.
- GitLab for Slack app을 선택합니다.
- Install GitLab for Slack app을 선택합니다. Slack 확인 페이지로 리디렉션됩니다.
- Slack 확인 페이지에서:
- 선택사항. 두 개 이상의 Slack 워크스페이스에 로그인한 경우 오른쪽 상단에서 드롭다운 목록에서 앱을 재설치할 워크스페이스를 선택합니다. GitLab Self-Managed 및 GitLab Dedicated에서는 관리자가 먼저 여러 워크스페이스 지원을 활성화해야 드롭다운 목록이 나타납니다.
- Allow를 선택합니다.
통합을 사용하는 모든 프로젝트에 대해 Slack용 GitLab 앱이 업데이트됩니다.
또는 통합을 다시 구성할 수 있습니다.
슬래시 명령어#
슬래시 명령어를 사용하여 일반적인 GitLab 작업을 실행할 수 있습니다.
Slack용 GitLab 앱의 경우:
- 첫 번째 슬래시 명령어를 실행할 때 Slack 사용자를 인가해야 합니다.
<project>를 프로젝트 전체 경로로 대체하거나 슬래시 명령어에 대한 프로젝트 별칭을 생성할 수 있습니다.
Mattermost 슬래시 명령어를 대신 사용하는 경우:
-
/gitlab을 이 통합에 대해 구성한 트리거 이름으로 교체합니다. -
<project>를 제거합니다.
다음 슬래시 명령어를 GitLab에서 사용할 수 있습니다:
| 명령어 | 설명 |
|---|---|
/gitlab help |
사용 가능한 모든 슬래시 명령어를 표시합니다. |
/gitlab <project> issue show <id> |
ID가 <id>인 이슈를 표시합니다. |
/gitlab <project> issue new <title> Shift+Enter <description> |
제목 <title>과 설명 <description>으로 이슈를 생성합니다. |
/gitlab <project> issue search <query> |
<query>와 일치하는 최대 5개의 이슈를 표시합니다. |
/gitlab <project> issue move <id> to <project> |
ID가 <id>인 이슈를 <project>로 이동합니다. |
/gitlab <project> issue close <id> |
ID가 <id>인 이슈를 닫습니다. |
/gitlab <project> issue comment <id> Shift+Enter <comment> |
ID가 <id>인 이슈에 본문 <comment>으로 댓글을 추가합니다. |
/gitlab <project> deploy <from> to <to> |
<from> 환경에서 <to> 환경으로 배포합니다. |
/gitlab <project> run <job name> <arguments> |
기본 브랜치에서 ChatOps 잡 <job name>을 실행합니다. |
/gitlab incident declare |
Slack에서 인시던트를 생성하기 위한 다이얼로그를 엽니다. |
deploy 명령어#
환경에 배포하기 위해 GitLab은 파이프라인에서 수동 배포 액션을 찾으려고 합니다.
환경에 대해 하나의 배포 액션만 정의된 경우 해당 액션이 트리거됩니다. 두 개 이상의 배포 액션이 정의된 경우 GitLab은 환경 이름과 일치하는 액션 이름을 찾으려고 합니다.
GitLab이 일치하는 배포 액션을 찾을 수 없는 경우 명령어가 오류를 반환합니다.
프로젝트 별칭 생성#
Slack용 GitLab 앱에서 슬래시 명령어는 기본적으로 프로젝트 전체 경로를 사용합니다. 대신 프로젝트 별칭을 사용할 수 있습니다.
Slack용 GitLab 앱에서 슬래시 명령어에 대한 프로젝트 별칭을 생성하려면:
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 Settings > Integrations를 선택합니다.
- GitLab for Slack app을 선택합니다.
- 프로젝트 경로 또는 별칭 옆에서 Edit을 선택합니다.
- 새 별칭을 입력하고 Save changes를 선택합니다.
Slack 워크스페이스에서 별칭 충돌이 발생하면(예: 여러 프로젝트나 그룹이 동일한 별칭 사용 시도) GitLab은 다음 형식으로 대체 별칭을 자동으로 할당합니다:
- 프로젝트의 경우:
p-<project_id>(예:p-12345) - 그룹의 경우:
g-<group_id>(예:g-67890)
기본 별칭을 사용할 수 없을 때 슬래시 명령어에서 이러한 대체 별칭을 사용할 수 있습니다.
Slack 알림#
히스토리
- GitLab 15.9에서 도입되었습니다.
특정 GitLab 이벤트에 대해 Slack 채널로 알림을 받을 수 있습니다.
알림 구성#
Slack 알림을 구성하려면:
-
상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
-
왼쪽 사이드바에서 Settings > Integrations를 선택합니다.
-
GitLab for Slack app을 선택합니다.
-
Trigger 섹션에서:
-
Slack에서 알림을 받을 GitLab 이벤트마다 체크박스를 선택합니다.
-
선택한 각 체크박스에 대해 알림을 받을 Slack 채널 이름을 입력합니다. 쉼표로 구분하여 최대 10개의 채널 이름을 입력할 수 있습니다(예:
#channel-one, #channel-two).[!note] Slack 채널이 비공개인 경우 채널에 Slack용 GitLab 앱을 추가해야 합니다.
-
-
선택사항. Notification settings 섹션에서:
-
Notify only broken pipelines 체크박스를 선택하여 실패한 파이프라인에 대해서만 알림을 받습니다.
-
Notify only when status changes 체크박스를 선택하여 ref에 대한 파이프라인 상태가 변경될 때만 알림을 받습니다.
-
Branches for which notifications are to be sent 드롭다운 목록에서 알림을 받을 브랜치를 선택합니다.
이러한 브랜치에서 생성된 태그에 의해 트리거된 파이프라인에 대한 알림도 전송됩니다.
취약점에 대한 알림은 선택한 브랜치에 관계없이 기본 브랜치에서만 트리거됩니다. 자세한 내용은 이슈 469373을 참조하세요.
-
Labels to be notified에 Slack에서 알림을 받기 위해 GitLab 이슈, 머지 리퀘스트 또는 댓글이 가져야 하는 레이블을 입력합니다. 모든 이벤트에 대한 알림을 받으려면 비워 두세요.
-
-
선택사항. Test settings를 선택합니다.
-
Save changes를 선택합니다.
비공개 채널로 알림 받기#
비공개 Slack 채널로 알림을 받으려면 채널에 Slack용 GitLab 앱을 추가해야 합니다:
@GitLab을 입력하여 채널에서 앱을 언급합니다.- Add to Channel을 선택합니다.
알림 이벤트#
다음 GitLab 이벤트가 Slack에서 알림을 트리거할 수 있습니다:
| 이벤트 | 설명 |
|---|---|
| Push | 리포지터리에 푸시가 발생합니다. |
| Issue | 작업 항목이 생성, 닫힘, 또는 다시 열림. |
| Confidential issue | 기밀 작업 항목이 생성, 닫힘, 또는 다시 열림. |
| Merge request | 머지 리퀘스트가 생성, 머지, 승인, 닫힘, 또는 다시 열림. |
| Note | 댓글이 추가됨. |
| Confidential note | 기밀 작업 항목에 내부 노트 또는 댓글이 추가됨. |
| Tag push | 리포지터리에 태그가 푸시되거나 제거됨. |
| Pipeline | 파이프라인 상태가 변경됨. |
| Wiki page | 위키 페이지가 생성 또는 업데이트됨. |
| Deployment | 배포가 시작되거나 완료됨. |
| Group mention in public | 그룹이 공개 채널에서 언급됨. |
| Group mention in private | 그룹이 비공개 채널에서 언급됨. |
| Incident | 인시던트가 생성, 닫힘, 또는 다시 열림. |
| Vulnerability | 기본 브랜치에 새로운 고유 취약점이 기록됨. |
| Alert | 새로운 고유 알림이 기록됨. |
그룹 언급에 대한 알림 트리거#
히스토리
- GitLab 16.10에서
gitlab_for_slack_app_instance_and_group_level이라는 플래그와 함께 도입되었습니다. 기본적으로 비활성화됩니다. - GitLab 16.11에서 GitLab.com, GitLab Self-Managed 및 GitLab Dedicated에서 활성화되었습니다.
- GitLab 17.8에서 일반적으로 사용 가능합니다. 피처 플래그
gitlab_for_slack_app_instance_and_group_level이 제거되었습니다.
그룹 언급에 대한 알림 이벤트를 트리거하려면 다음에서 @<group_name>을 사용합니다:
- 이슈 및 머지 리퀘스트 설명
- 이슈, 머지 리퀘스트 및 커밋에 대한 댓글
