리눅스 패키지 사용 중단 정책

Tier: Free, Premium, Ultimate Offering: Self-managed

리눅스 패키지는 사용자에게 다양한 구성 옵션을 제공하는 여러 라이브러리 및 서비스로 구성되어 있습니다.

라이브러리와 서비스가 업데이트됨에 따라 구성 옵션이 변경되고 구식이 됩니다. 유지 관리성을 높이고 작동하는 설정을 보존하기 위해 다양한 구성을 제거해야 합니다.

구성 사용 중단

정책

리눅스 패키지는 최소한 한 개의 주요 버전에 대해 구성을 유지합니다. 사용 중단된 구성이 다음 주요 릴리스에서 제공된다고 보장할 수 없습니다. 자세한 내용은 예시를 참조하세요.

공지

구성이 구식이 되면 사용 중단을 발표합니다:

  • https://about.gitlab.com/blog/의 릴리즈 블로그 게시물을 통해. 블로그 아이템에는 사용 중단 공지와 함께 목표 제거 날짜가 포함됩니다.
  • 설치/재구성 출력(해당되는 경우)을 통해.
  • https://docs.gitlab.com/의 공식 문서를 통해. 문서 업데이트에는 수정된 구문(해당되는 경우) 또는 구성 제거 날짜가 포함됩니다.

절차

이 섹션에서는 구성 사용 중단 및 제거에 필요한 단계를 나열합니다.

우리는 두 가지 유형의 구성을 구별할 수 있습니다:

  • 민감한 구성: 주요 서비스 중단을 초래할 수 있는 구성(예: 데이터 무결성, 설치 무결성 또는 사용자가 설치에 접근하지 못하게 하는 등)
  • 일반 구성: 기능을 사용할 수 없게 만들 수 있지만 여전히 설치를 사용할 수 있게 하는 구성(예: 기본 프로젝트/그룹 설정의 변경 또는 다른 구성 요소와의 통신 오류)

우리는 사용 중단 절차와 제거 절차를 또한 구별해야 합니다.

구성 사용 중단

사용 중단 절차는 민감일반 구성 모두에 대해 비슷합니다. 유일한 차이점은 제거 목표 날짜입니다.

공통 단계:

  1. omnibus-gitlab 이슈 트래커에서 사용 중단 유형 및 기타 필요한 정보에 대한 세부 정보를 포함하여 이슈를 생성합니다. ‘사용 중단’ 레이블을 적용합니다.
  2. 사용 중단된 구성의 제거 목표를 결정합니다.
  3. 공지 섹션에 명시된 각 항목에 대한 사용 중단 공지를 작성합니다.

제거 목표:

일반 구성에 대해서는 제거 목표가 항상 다음 주요 릴리스 날짜여야 합니다. 날짜가 알려져 있지 않다면 다음 주요 버전을 참조할 수 있습니다.

민감한 구성은 상황이 조금 더 복잡합니다. 다음 주요 릴리스가 2개의 마이너 릴리스 후에 있다면 다음 주요 릴리스에서 민감한 구성을 제거하지 않도록 목표를 설정해야 합니다(이 숫자는 우리의 보안 백포트 릴리스 정책에 맞추기 위해 선택됨).

아래의 표는 몇 가지 예시를 보여줍니다:

구성 유형 사용 중단 발표 마지막 마이너 릴리스 제거
민감한 10.1.0 10.9.0 11.0.0
민감한 10.7.0 10.9.0 12.0.0
일반 10.1.0 10.9.0 11.0.0
일반 10.8.0 10.9.0 11.0.0

구성 제거

사용 중단이 발표되고 제거 목표가 설정되면, 이슈의 마일스톤은 제거 목표 버전과 일치하도록 변경되어야 합니다.

이슈의 마지막 댓글에는 반드시 다음이 포함되어야 합니다:

  1. 릴리스 블로그 포스트 섹션에 대한 텍스트 스니펫
  2. 변경 사항을 소개하는 문서 MR(또는 스니펫)
  3. 구성을 제거하는 초안 MR 또는 수행해야 할 작업에 대한 세부정보. 사용 중단 메시지 추가하기에 대한 자세한 내용은 이곳을 참조하세요.

예시

사용자 구성은 /etc/gitlab/gitlab.rb에 있으며, GitLab 버전 10.0에서 도입되었습니다. gitlab_rails['configuration'] = true입니다. GitLab 버전 10.4.0에서는 이 구성 옵션의 이름 변경이 필요하다는 새로운 변경 사항이 도입되었습니다. 새로운 구성 옵션은 gitlab_rails['better_configuration'] = true입니다. 개발 팀은 이전 구성을 새로운 것으로 변환하고 사용 중지 절차를 시작합니다.

이것은 이 두 구성 옵션이 GitLab 버전 10에서 유효하다는 것을 의미합니다. 다시 말해, 만약 당신이 여전히 GitLab 10.8.0에서 gitlab_rails['configuration'] = true를 설정했다면, 이 기능은 gitlab_rails['better_configuration'] = true가 설정된 것처럼 동일하게 작동합니다. 그러나 이전 버전의 구성을 설정하면 설치/업그레이드/구성 재설정 실행이 끝날 때 사용 중지 알림이 출력됩니다.

GitLab 11에서는 gitlab_rails['configuration'] = true가 더 이상 작동하지 않으며, /etc/gitlab/gitlab.rb에서 구성을 수동으로 새로운 유효한 구성으로 변경해야 합니다.
참고 이 구성 옵션이 민감하며 설치나 데이터의 무결성을 위협할 수 있는 경우, 설치나 업그레이드가 중단됩니다.