유휴 프로젝트 삭제
GitLab v19.4Offering: GitLab Self-Managed, GitLab Dedicated
요약
시간이 지나면 대규모 GitLab 인스턴스의 프로젝트가 유휴 상태가 되어 불필요하게 디스크 공간을 차지할 수 있습니다. 일정 기간 활동이 없는 유휴 프로젝트를 자동으로 삭제하도록 GitLab을 구성할 수 있습니다. GitLab.com의 기본 설정은 GitLab.com 설정을 참고합니다.
히스토리
- GitLab 18.1에서 비활성 프로젝트 삭제에서 이름이 변경되었습니다.
시간이 지나면 대규모 GitLab 인스턴스의 프로젝트가 유휴 상태가 되어 불필요하게 디스크 공간을 차지할 수 있습니다.
일정 기간 활동이 없는 유휴 프로젝트를 자동으로 삭제하도록 GitLab을 구성할 수 있습니다. 정의한 기간 동안 프로젝트에 활동이 없으면 다음과 같이 동작합니다.
- Maintainer에게 삭제 예정을 알리는 경고 알림이 전송됩니다.
- 프로젝트에 활동이 없으면 GitLab은 해당 기간이 만료될 때 프로젝트를 삭제합니다.
- 삭제가 수행되면 GitLab은 @GitLab-Admin-Bot 이 삭제를 수행했음을 보여 주는 감사 이벤트를 생성합니다.
GitLab.com의 기본 설정은 GitLab.com 설정을 참고합니다.
유휴 프로젝트 삭제 구성#
사전 요구 사항:
- 관리자 접근 권한.
유휴 프로젝트 삭제를 구성하려면 다음 단계를 수행합니다.
- 오른쪽 상단에서 Admin을 선택합니다.
- 왼쪽 사이드바에서 Settings > Repository를 선택합니다.
- Repository maintenance를 확장합니다.
- Dormant project deletion 섹션에서 Delete dormant projects를 선택합니다.
- 설정을 구성합니다.
- 경고 이메일은 해당 유휴 프로젝트에서 Owner 및 Maintainer 역할을 가진 사용자에게 전송됩니다.
- 이메일 발송 기간은 Delete project after 기간보다 짧아야 합니다.
- Save changes를 선택합니다.
조건을 충족하는 유휴 프로젝트는 삭제 대상으로 예약되고 경고 이메일이 전송됩니다. 해당 프로젝트가 계속 유휴 상태이면 지정한 기간이 지난 후 삭제됩니다. 이 프로젝트는 프로젝트가 보관된 경우에도 삭제됩니다.
구성 예시#
예시 1#
다음 설정을 사용하는 경우를 가정합니다.
- Delete dormant projects 활성화.
- Delete dormant projects that exceed를
50으로 설정. - Delete project after를
12로 설정. - Send warning email을
6으로 설정.
프로젝트 크기가 50MB 미만이면 해당 프로젝트는 유휴 상태로 간주되지 않습니다.
프로젝트 크기가 50MB를 초과하고 유휴 상태가 다음 기간 동안 지속되면 이렇게 동작합니다.
- 6개월 초과: 삭제 경고 이메일이 전송됩니다. 이 이메일에는 프로젝트가 삭제 예약될 날짜가 포함됩니다.
- 12개월 초과: 프로젝트가 삭제 대상으로 예약됩니다.
예시 2#
다음 설정을 사용하는 경우를 가정합니다.
- Delete dormant projects 활성화.
- Delete dormant projects that exceed를
0으로 설정. - Delete project after를
12로 설정. - Send warning email을
11로 설정.
크기 한도를 0MB로 설정했으므로 인스턴스의 모든 프로젝트가 대상이 됩니다. 프로젝트의 유휴 상태가 다음 기간 동안 지속되면 이렇게 동작합니다.
- 11개월 초과: 삭제 경고 이메일이 전송됩니다. 이 이메일에는 프로젝트가 삭제 예약될 날짜가 포함됩니다.
- 12개월 초과: 프로젝트가 삭제 대상으로 예약됩니다.
이 설정을 구성하는 시점에 이미 12개월 넘게 유휴 상태인 프로젝트가 있으면 이렇게 동작합니다.
- 삭제 경고 이메일이 즉시 전송됩니다. 이 이메일에는 프로젝트가 삭제 예약될 날짜가 포함됩니다.
- 프로젝트는 경고 이메일이 전송되고 1개월(12개월 - 11개월) 후에 삭제 대상으로 예약됩니다.
프로젝트의 마지막 활동 시점 확인#
다음 방법으로 프로젝트의 활동을 조회하고 마지막 활동 시점을 확인할 수 있습니다.
- 프로젝트의 활동 페이지로 이동하여 최신 이벤트의 날짜를 확인합니다.
- Projects API로 프로젝트의 다음 속성을 확인합니다.
last_activity_at은 한 시간에 한 번 갱신되며 주로 이벤트를 추적합니다. 프로젝트 이름과 경로 변경, 설명 편집도 추적합니다.updated_at은 프로젝트가 저장될 때마다 갱신됩니다.
- Events API로 프로젝트의 표시 가능한 이벤트를 조회합니다.
최신 이벤트의
created_at속성을 확인합니다.