InfoGrab Docs

지원 중단

요약

다음 GitLab 기능들은 지원이 중단되었으며 더 이상 사용을 권장하지 않습니다. 이 지원 중단 정보를 고급 검색 및 필터링하려면 Customer Success 팀이 만든 도구를 사용해 보세요. REST API 지원 중단은 별도로 문서화되어 있습니다.

다음 GitLab 기능들은 지원이 중단되었으며 더 이상 사용을 권장하지 않습니다.

  • 각 지원 중단 기능은 향후 릴리스에서 제거될 예정입니다.
  • 일부 기능은 제거 시 호환성 변경(breaking change)을 유발합니다.
  • GitLab.com에서는 지원 중단된 기능이 릴리스 전 한 달 이내에 언제든지 제거될 수 있습니다.
  • 제거된 기능의 문서를 확인하려면 GitLab Docs 아카이브를 참조하세요.
  • GraphQL API 지원 중단의 경우, 지원 중단 항목 없이 API 호출이 작동하는지 확인해야 합니다.

이 지원 중단 정보를 고급 검색 및 필터링하려면 Customer Success 팀이 만든 도구를 사용해 보세요.

REST API 지원 중단은 별도로 문서화되어 있습니다.

[rss] 향후 호환성 변경 사항 알림을 받으려면, 이 URL을 RSS 피드 리더에 추가하세요: https://about.gitlab.com/breaking-changes.xml

GitLab 20.0#

컴플라이언스 파이프라인#

  • GitLab 17.3에서 발표
  • GitLab 20.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

현재 프로젝트 파이프라인에서 컴플라이언스 또는 보안 관련 작업이 실행되도록 하는 방법은 두 가지가 있습니다:

프로젝트의 모든 파이프라인에서 필수 작업이 실행되도록 하는 단일 위치를 제공하기 위해, GitLab 17.3에서 컴플라이언스 파이프라인을 지원 중단하고 GitLab 20.0에서 이 기능을 제거할 예정입니다.

고객은 가능한 한 빨리 컴플라이언스 파이프라인에서 새로운 파이프라인 실행 정책 유형으로 마이그레이션해야 합니다.

자세한 내용은 다음을 참조하세요:

레거시 그룹 수준 감사 이벤트 스트리밍 대상 GraphQL API#

  • GitLab 18.10에서 발표
  • GitLab 20.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

다음 감사 이벤트 스트리밍 대상을 위한 그룹 수준 GraphQL API는 지원이 중단되며 GitLab 20.0에서 제거될 예정입니다.

지원 중단된 뮤테이션:

  • externalAuditEventDestinationCreate — 대신 groupAuditEventStreamingDestinationsCreate를 사용하세요.
  • externalAuditEventDestinationDestroy — 대신 groupAuditEventStreamingDestinationsDelete를 사용하세요.
  • externalAuditEventDestinationUpdate — 대신 groupAuditEventStreamingDestinationsUpdate를 사용하세요.
  • googleCloudLoggingConfigurationCreate — 대신 gcpLogging 카테고리와 함께 groupAuditEventStreamingDestinationsCreate를 사용하세요.
  • googleCloudLoggingConfigurationDestroy — 대신 groupAuditEventStreamingDestinationsDelete를 사용하세요.
  • googleCloudLoggingConfigurationUpdate — 대신 groupAuditEventStreamingDestinationsUpdate를 사용하세요.
  • auditEventsAmazonS3ConfigurationCreate — 대신 amazonS3 카테고리와 함께 groupAuditEventStreamingDestinationsCreate를 사용하세요.
  • auditEventsAmazonS3ConfigurationDelete — 대신 groupAuditEventStreamingDestinationsDelete를 사용하세요.
  • auditEventsAmazonS3ConfigurationUpdate — 대신 groupAuditEventStreamingDestinationsUpdate를 사용하세요.
  • auditEventsStreamingHeadersCreategroupAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingHeadersDestroygroupAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingHeadersUpdategroupAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingDestinationEventsAdd — 대신 auditEventsGroupDestinationEventsAdd를 사용하세요.
  • auditEventsStreamingDestinationEventsRemove — 대신 auditEventsGroupDestinationEventsRemove를 사용하세요.
  • auditEventsStreamingHttpNamespaceFiltersAdd — 대신 auditEventsGroupDestinationNamespaceFilterCreate를 사용하세요.
  • auditEventsStreamingHttpNamespaceFiltersDelete — 대신 auditEventsGroupDestinationNamespaceFilterDelete를 사용하세요.

지원 중단된 그룹 필드:

  • Group.externalAuditEventDestinations — 대신 Group.externalAuditEventStreamingDestinations를 사용하세요.
  • Group.googleCloudLoggingConfigurations — 대신 gcpLogging 카테고리와 함께 Group.externalAuditEventStreamingDestinations를 사용하세요.
  • Group.amazonS3Configurations — 대신 amazonS3 카테고리와 함께 Group.externalAuditEventStreamingDestinations를 사용하세요.

새로운 통합 스트리밍 대상 API는 단일 엔드포인트 세트와 category 매개변수를 통해 모든 대상 카테고리(HTTP, Google Cloud Logging, Amazon S3)를 지원합니다.

레거시 인스턴스 수준 감사 이벤트 스트리밍 대상 GraphQL API#

  • GitLab 18.10에서 발표
  • GitLab 20.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

다음 감사 이벤트 스트리밍 대상을 위한 인스턴스 수준 GraphQL API는 지원이 중단되며 GitLab 20.0에서 제거될 예정입니다.

지원 중단된 뮤테이션:

  • instanceExternalAuditEventDestinationCreate — 대신 instanceAuditEventStreamingDestinationsCreate를 사용하세요.
  • instanceExternalAuditEventDestinationDestroy — 대신 instanceAuditEventStreamingDestinationsDelete를 사용하세요.
  • instanceExternalAuditEventDestinationUpdate — 대신 instanceAuditEventStreamingDestinationsUpdate를 사용하세요.
  • instanceGoogleCloudLoggingConfigurationCreate — 대신 gcpLogging 카테고리와 함께 instanceAuditEventStreamingDestinationsCreate를 사용하세요.
  • instanceGoogleCloudLoggingConfigurationDestroy — 대신 instanceAuditEventStreamingDestinationsDelete를 사용하세요.
  • instanceGoogleCloudLoggingConfigurationUpdate — 대신 instanceAuditEventStreamingDestinationsUpdate를 사용하세요.
  • auditEventsInstanceAmazonS3ConfigurationCreate — 대신 amazonS3 카테고리와 함께 instanceAuditEventStreamingDestinationsCreate를 사용하세요.
  • auditEventsInstanceAmazonS3ConfigurationDelete — 대신 instanceAuditEventStreamingDestinationsDelete를 사용하세요.
  • auditEventsInstanceAmazonS3ConfigurationUpdate — 대신 instanceAuditEventStreamingDestinationsUpdate를 사용하세요.
  • auditEventsStreamingInstanceHeadersCreateinstanceAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingInstanceHeadersDestroyinstanceAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingInstanceHeadersUpdateinstanceAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingDestinationInstanceEventsAdd — 대신 auditEventsInstanceDestinationEventsAdd를 사용하세요.
  • auditEventsStreamingDestinationInstanceEventsRemove — 대신 auditEventsInstanceDestinationEventsRemove를 사용하세요.

지원 중단된 쿼리 필드:

  • instanceExternalAuditEventDestinations — 대신 auditEventsInstanceStreamingDestinations를 사용하세요.
  • instanceGoogleCloudLoggingConfigurations — 대신 gcpLogging 카테고리와 함께 auditEventsInstanceStreamingDestinations를 사용하세요.
  • auditEventsInstanceAmazonS3Configurations — 대신 amazonS3 카테고리와 함께 auditEventsInstanceStreamingDestinations를 사용하세요.

새로운 통합 스트리밍 대상 API는 단일 엔드포인트 세트와 category 매개변수를 통해 모든 대상 카테고리(HTTP, Google Cloud Logging, Amazon S3)를 지원합니다.

NGINX Ingress, HAProxy, Traefik 차트 지원#

  • GitLab 18.9에서 발표
  • GitLab 20.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm 차트는 Kubernetes Gateway API를 사용하는 기본 Envoy Gateway의 대안으로 여러 Ingress 컨트롤러를 번들로 제공합니다.

이러한 번들 Ingress 컨트롤러, 즉 NGINX Ingress, HAProxy, Traefik은 GitLab Helm 차트와 GitLab Operator에서 제거될 예정입니다. Ingress 사용은 GitLab Helm 차트와 GitLab Operator에서 계속 지원되지만, 외부 Ingress 컨트롤러를 배포해야 합니다.

번들 Envoy Gateway와 Gateway API로 마이그레이션하는 것을 권장합니다. 또는 외부 Ingress 컨트롤러 및 클래스를 배포하고 구성할 수 있습니다.

GitLab 19.1#

고급 검색을 위한 Elasticsearch 7.x 지원 종료#

  • GitLab 18.10에서 발표
  • GitLab 19.1에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Elasticsearch 7.x의 유지 관리 기간이 2026-01-15에 종료되었습니다. GitLab Self-Managed의 경우, 관리자는 고급 검색을 사용하려면 Elasticsearch 인스턴스를 업그레이드해야 합니다.

Amazon Linux 2에 대한 Linux 패키지 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.1에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.1에서 Linux 패키지의 Amazon Linux 2(AL2) 패키지 빌드를 제거할 예정입니다.

Amazon Linux 2는 2026년 6월에 수명이 종료되며, 그 이후에는 더 이상 보안 업데이트를 받지 못합니다. Linux 패키지 지원 플랫폼 정책에 따라, 최소 6개월의 공지 기간을 두고 벤더가 운영 체제 지원을 중단하면 패키지 빌드를 중단합니다.

현재 Amazon Linux 2에서 GitLab을 실행 중이라면, GitLab 19.1로 업그레이드하기 전에 Amazon Linux 2023(AL2023) 또는 다른 지원되는 운영 체제로 마이그레이션해야 합니다. Amazon은 AL2에서 AL2023으로 이전하는 데 도움이 되는 마이그레이션 문서를 제공합니다.

GitLab 19.0#

컨테이너 레지스트리용 Azure 스토리지 드라이버#

  • GitLab 17.10에서 발표
  • GitLab 19.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리의 레거시 Azure 스토리지 드라이버는 GitLab 17.10에서 지원이 중단되었으며 GitLab 19.0에서 제거될 예정입니다. 컨테이너 레지스트리에 Azure 오브젝트 스토리지를 사용 중이며 새 드라이버를 일찍 사용하려면, 새 azure_v2 드라이버를 사용하도록 구성을 업데이트해야 합니다. GitLab 19.0에서는 지원 중단된 Azure 드라이버가 azure_v2 드라이버의 별칭이 되며 수동 작업이 필요하지 않습니다.

azure_v2 스토리지 드라이버는 레거시 드라이버에 비해 향상된 안정성, 더 나은 성능, 유지 관리가 쉬운 코드베이스를 제공합니다. 이러한 개선 사항은 레지스트리 사용량이 확장될 때 성능 문제를 예방하는 데 도움이 됩니다.

azure_v2 드라이버로 마이그레이션하려면:

  1. 레거시 azure 드라이버 대신 azure_v2 드라이버를 사용하도록 레지스트리 설정 파일을 업데이트하세요.
  2. 새 드라이버에 맞게 필요한 구성 설정을 조정하세요.
  3. 프로덕션에 배포하기 전에 비프로덕션 환경에서 새 구성을 테스트하세요.

스토리지 드라이버 구성 업데이트에 대한 자세한 내용은 오브젝트 스토리지 사용을 참조하세요.

컨테이너 레지스트리 AWS S3 서명 버전 2 지원#

  • GitLab 17.8에서 발표
  • GitLab 19.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리에서 Amazon S3 서명 버전 2를 사용한 요청 인증 지원은 GitLab 17.8에서 지원이 중단되었으며 GitLab 19.0에서 제거될 예정입니다.

AWS SDK v2 기반의 새 S3v2 스토리지 드라이버(GitLab 17.10부터 베타로 제공, 19.0에서 기본값이 됨)는 서명 버전 4만 지원합니다. S3v2 드라이버가 기본값이 되면, 서명 버전 2 설정(예: v4auth: false)은 자동으로 무시됩니다.

기본 드라이버가 S3v2로 변경되는 GitLab 버전으로 업그레이드하기 전에 서명 버전 4로 마이그레이션할 수 있습니다. 이 변경에는 S3 버킷 설정 업데이트와 GitLab 컨테이너 레지스트리 설정이 서명 버전 4와 호환되는지 확인이 필요합니다.

마이그레이션하려면:

  1. GitLab 컨테이너 레지스트리 설정의 S3 스토리지 백엔드 구성을 확인하세요.
  2. v4authfalse로 설정되어 있다면 옵션을 제거하세요.
  3. 기존 자격 증명이 v4 인증으로 작동하는지 확인하세요.

변경 후 문제가 발생하면 AWS 자격 증명을 재생성해 보세요.

Design Management 지원 중단#

  • GitLab 18.6에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 GitLab은 Design Management의 지원 중단을 시작합니다. Design Management를 사용하면 사용자가 협업을 위해 와이어프레임 및 목업과 같은 디자인 자산을 GitLab 이슈에 업로드할 수 있습니다. 기존 사용 현황과 예상 고객 영향을 신중히 고려한 후 이 결정을 내렸습니다. Design Management에 필요한 지속적인 유지 관리가 현재 사용량보다 많았으며, 현대적인 디자이너 워크플로우에 더 잘 맞는 솔루션에 노력을 집중하고 있습니다. GitLab 19.0 이후에는 새 디자인을 업로드할 수 없습니다. 기존 디자인은 GitLab 20.0까지 읽기 전용 모드로 사용 가능하여 사용자가 필요에 따라 디자인을 저장할 수 있는 시간을 제공합니다. GitLab은 디자이너가 이미 사용하는 도구와 더 잘 통합되는 대안을 모색하고 있습니다.

감사 이벤트 API에 키셋 페이지네이션 강제 적용#

  • GitLab 17.8에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

인스턴스, 그룹, 프로젝트의 감사 이벤트 API는 현재 선택적 키셋 페이지네이션을 지원합니다. GitLab 18.0에서 이러한 API에 키셋 페이지네이션을 강제 적용할 예정입니다.

비인증 Projects API 요청에 페이지 제한 강제 적용#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

모든 고객에게 플랫폼 안정성을 유지하고 최적의 성능을 보장하기 위해, 비인증 Projects API 요청에 최대 오프셋 제한을 강제 적용합니다. 오프셋 제한은 GitLab.com에만 적용됩니다. GitLab Self-Managed 및 GitLab Dedicated에서는 기본적으로 기능 플래그 뒤에서 오프셋 제한이 비활성화됩니다.

변경 사항

Projects List REST API에 대한 모든 비인증 요청에 최대 오프셋 제한 50,000이 적용됩니다. 예를 들어, 페이지당 20개 결과를 검색할 때 page 매개변수는 2,500 페이지로 제한됩니다.

더 많은 데이터에 대한 액세스가 필요한 워크플로우는 키셋 기반 페이지네이션 매개변수를 사용해야 합니다.

중요한 이유

이 제한은 리소스 활용을 효과적으로 관리하여 GitLab.com 전반에 걸쳐 일관된 서비스 품질과 성능을 보장합니다.

SUSE 배포판에 대한 Linux 패키지 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 SUSE 배포판 지원을 종료합니다. 영향을 받는 배포판:

  • openSUSE Leap 15.6
  • SUSE Linux Enterprise Server 12.5
  • SUSE Linux Enterprise Server 15.6

openSUSE Leap 15.6은 수명 종료에 가까워지고 있습니다. SUSE Linux Enterprise Server는 SUSE의 장기 서비스를 통해 계속 지원되지만, GitLab 고객들 사이의 채택율이 너무 낮아 상업적으로 지원을 지속하기 어렵습니다.

Linux 패키지를 사용하는 SUSE 배포판 고객은 18.11.x 버전 이후로 GitLab을 업그레이드할 수 없습니다.

이러한 배포판 중 하나를 사용하는 고객에게는 기존 배포판에서 GitLab의 Docker 배포로 마이그레이션하는 것을 권장합니다. 이렇게 하면 GitLab 업그레이드를 계속 받기 위해 다른 Linux 배포판으로 마이그레이션할 필요가 없습니다.

Ubuntu 20.04에 대한 Linux 패키지 지원#

  • GitLab 17.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Ubuntu 20.04에 대한 Ubuntu 표준 지원이 2025년 5월에 종료되었습니다.

Linux 패키지 지원 플랫폼 정책에 따라, 벤더가 운영 체제 지원을 중단하면 패키지 빌드를 중단합니다.

GitLab 19.0부터 Linux 패키지 설치의 Ubuntu 20.04 배포판에 대한 패키지를 더 이상 제공하지 않습니다. GitLab 18.11이 Ubuntu 20.04용 Linux 패키지가 포함된 마지막 GitLab 버전이 됩니다.

현재 Ubuntu 20.04에서 GitLab을 실행 중이라면, GitLab 19.0으로 업그레이드하기 전에 Ubuntu 22.04 또는 다른 지원되는 운영 체제로 업그레이드해야 합니다. Canonical은 마이그레이션을 도와주는 업그레이드 가이드를 제공합니다.

Linux 패키지에 번들된 Mattermost#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 Linux 패키지에서 번들 Mattermost를 제거할 예정입니다.

Mattermost는 2015년에 GitLab SSO를 포함한 오픈 소스 팀 메시징 솔루션으로 GitLab에 처음 번들되어 통합을 지원했습니다. 그 이후 Mattermost는 자체적인 패키징 및 배포 옵션을 크게 성숙시켰으며, GitLab 고객들 사이에서 번들 Mattermost의 채택율은 상대적으로 낮게 유지되었습니다.

Mattermost v11에서 Mattermost가 무료 제공에서 GitLab SSO를 지원 중단했습니다. 이 변경, Mattermost 독립 배포 옵션의 성숙도, 고객 기반에서의 낮은 채택율을 고려하여 Linux 패키지에서 Mattermost를 제거합니다.

현재 GitLab에 번들된 Mattermost를 사용 중이라면, 마이그레이션 지침과 사용 가능한 Mattermost 에디션은 Mattermost 문서의 GitLab Omnibus에서 Mattermost 독립 실행형으로 마이그레이션을 참조하세요.

리소스 소유자 암호 자격 증명 부여 지원 중단#

  • GitLab 18.0에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OAuth 플로우로 리소스 소유자 암호 자격 증명(ROPC) 부여를 사용하는 것이 지원 중단되며, GitLab 19.0에서 지원이 완전히 제거됩니다. 관리자가 인스턴스에서 클라이언트 자격 증명만으로 이 부여 유형을 사용할 수 있도록 활성화하거나 비활성화할 수 있는 설정이 추가되었습니다. 이를 통해 19.0 이전에 클라이언트 자격 증명 없이 ROPC 사용을 선택적으로 해제하려는 사용자가 그렇게 할 수 있습니다. ROPC는 19.0에서 완전히 제거되며 그 이후에는 클라이언트 자격 증명을 사용해도 사용할 수 없습니다.

GitLab은 보안상의 이유로 2025년 4월 8일부터 GitLab.com에서 ROPC에 클라이언트 인증을 요구했습니다. ROPC 지원을 완전히 제거하면 OAuth RFC 버전 2.1과 보안 수준이 일치합니다.

컨테이너 레지스트리용 S3 스토리지 드라이버(AWS SDK v1)#

  • GitLab 17.10에서 발표
  • GitLab 19.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

AWS SDK v1을 사용하는 컨테이너 레지스트리의 S3 스토리지 드라이버는 지원이 중단되었으며 GitLab 19.0에서 제거될 예정입니다. 컨테이너 레지스트리에 S3 오브젝트 스토리지를 사용 중이며 새 드라이버를 빨리 사용하려면, 새 s3_v2 드라이버를 사용하도록 구성을 업데이트해야 합니다. GitLab 19.0에서는 지원 중단된 s3 드라이버가 s3_v2 드라이버의 별칭이 되며 수동 작업이 필요하지 않습니다.

s3_v2 스토리지 드라이버는 AWS SDK v2를 기반으로 하며 향상된 성능, 더 나은 보안, AWS의 지속적인 지원을 제공합니다. 2025년 7월 31일에 지원이 종료되는 지원 중단된 AWS SDK v1을 대체하기 위해 2025년 5월부터 제공될 예정입니다.

s3_v2 드라이버는 서명 서명 알고리즘 v2를 더 이상 지원하지 않습니다. 설정에 v4auth: false 옵션이 설정된 경우, s3_v2 드라이버에서 자동으로 무시되며 더 안전한 V4 알고리즘이 사용됩니다. s3_v2 드라이버로 마이그레이션하려면:

  1. s3 대신 s3_v2 구성을 사용하도록 레지스트리 설정 파일을 업데이트하세요.
  2. AWS SDK v2는 서명 버전 4만 지원하므로, 아직 전환하지 않았다면 인증에서 서명 버전 2에서 서명 버전 4로 이동하세요.
  3. 프로덕션에 배포하기 전에 비프로덕션 환경에서 구성을 테스트하세요.

스토리지 드라이버 구성 업데이트에 대한 자세한 내용은 오브젝트 스토리지 사용을 참조하세요.

Slack 슬래시 명령#

  • GitLab 18.7에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Slack 슬래시 명령 통합은 동일한 기능을 제공하는 더 안전한 통합 방식인 GitLab for Slack 앱을 지원하기 위해 지원이 중단됩니다.

GitLab 19.0부터 사용자는 Slack 슬래시 명령 통합을 구성하거나 사용할 수 없습니다. 이 통합은 GitLab Self-Managed 및 GitLab Dedicated 인스턴스에서만 사용 가능합니다. GitLab.com을 사용 중이라면 아무것도 할 필요가 없습니다.

GitLab Self-Managed 또는 GitLab Dedicated를 사용 중이라면, 영향을 받는지 확인하려면 이슈 569345를 참조하세요.

Linux 패키지 및 GitLab Helm 차트에서의 Spamcheck 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 Linux 패키지와 GitLab Helm 차트에서 Spamcheck를 제거합니다.

Spamcheck는 공개적으로 노출된 GitLab 인스턴스의 스팸에 대응하는 서비스입니다. 그 특성상, 이 기능은 주로 대형 공개 인스턴스와 관련이 있으며, 이는 고객 기반에서 예외적인 경우입니다.

낮은 채택율과 독립 배포 옵션의 가용성을 고려하여, Linux 패키지와 GitLab Helm 차트에서 Spamcheck를 제거합니다. Spamcheck를 사용하지 않는 고객은 이 변경의 영향을 받지 않습니다. 제거로 인해 대부분의 고객의 패키지 크기와 의존성 설치 공간(및 보안)이 줄어듭니다.

현재 번들 Spamcheck를 사용 중이라면, Docker를 사용하여 별도로 배포할 수 있습니다.

데이터 마이그레이션은 필요하지 않습니다. 구성 지침은 링크된 문서에서 제공됩니다.

NGINX Ingress 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm 차트는 현재 NGINX Ingress를 기본 네트워킹 구성 요소로 번들 제공합니다. NGINX Ingress가 2026년 3월에 수명이 종료됨에 따라, Gateway API와 Envoy Gateway로 전환하고 있습니다.

GitLab 19.0부터 Gateway API와 번들 Envoy Gateway가 기본 구성이 됩니다. 배포에 Envoy Gateway로의 마이그레이션이 불가능하다면, GitLab 20.0에서 전체 제거가 계획될 때까지 계속 사용 가능한 번들 NGINX Ingress를 명시적으로 다시 활성화할 수 있습니다.

이 변경은 Linux 패키지의 NGINX, 또는 외부에서 관리되는 Ingress나 Gateway API 컨트롤러를 사용하는 GitLab Helm 차트와 GitLab Operator 인스턴스에는 영향을 미치지 않습니다.

전체 제거까지 포크된 NGINX Ingress 차트와 빌드에 대해 최선의 보안 유지 관리를 제공할 것입니다. 원활한 전환을 보장하기 위해 제공되는 Gateway API 솔루션 또는 외부에서 관리되는 Ingress 컨트롤러로의 마이그레이션을 계획하는 것을 권장합니다.

PostgreSQL 16 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 PostgreSQL의 연간 업그레이드 주기를 따릅니다.

PostgreSQL 16 지원은 GitLab 19.0에서 제거될 예정입니다. GitLab 19.0에서 PostgreSQL 17이 최소 필요 PostgreSQL 버전이 됩니다.

PostgreSQL 17은 GitLab 18.9부터 사용 가능하며, GitLab 19.0에서 PostgreSQL 16이 제거되기 전에 언제든지 업그레이드할 수 있습니다.

Linux 패키지를 사용하여 설치한 단일 PostgreSQL 인스턴스를 실행 중이라면, 18.11에서 자동 업그레이드가 시도될 수 있습니다. 업그레이드를 수용할 충분한 디스크 공간이 있는지 확인하세요.

자세한 내용은 패키지된 PostgreSQL 서버 업그레이드를 참조하세요.

Redis 6 지원#

  • GitLab 18.10에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 안전하고 지원 가능한 인프라 스택을 유지하는 노력의 일환으로 Redis 6 지원을 제거할 예정입니다.

GitLab 19.0으로 업그레이드하기 전에 다음 중 하나를 실행해야 합니다:

  • Redis 7.2.
  • Valkey 7.2 (GitLab 18.9부터 베타로 사용 가능하며 GitLab 19.0에서 일반 제공 예정).

Linux 패키지에 포함된 번들 Redis는 GitLab 16.2부터 Redis 7을 사용하고 있으므로 영향을 받지 않습니다. 외부 Redis 6 배포를 사용하는 GitLab Self-Managed 인스턴스만 마이그레이션해야 합니다.

외부 Redis 6 배포를 마이그레이션하기 위한 다음 리소스를 참조하세요:

  • AWS ElastiCache: Redis 6 인스턴스를 Redis 7.2 또는 Valkey 7.2로 업그레이드하세요. 사용 가능한 업그레이드 경로는 AWS ElastiCache 문서를 참조하세요.
  • GCP Memorystore: Redis 6 인스턴스를 Redis 7.2 또는 Valkey 7.2로 업그레이드하세요. 사용 가능한 업그레이드 경로는 GCP Memorystore 문서를 참조하세요.
  • Azure Cache for Redis: Azure에서는 현재 관리형 Redis 7.2 또는 Valkey 7.2 옵션을 사용할 수 없습니다. Azure VM 또는 AKS에서 Redis 7.2 또는 Valkey 7.2를 직접 호스팅할 수 있습니다. GitLab 19.0에서 일반 제공이 계획된 Valkey 7.2를 지원하는 GitLab Linux 패키지 설치 방법을 사용할 수도 있습니다.
  • 자체 호스팅: Redis 6 인스턴스를 Redis 7.2 또는 Valkey 7.2로 업그레이드하세요.

자세한 내용은 요구 사항 문서를 참조하세요.

GitLab Helm 차트에서 번들 PostgreSQL, Redis, MinIO 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm 차트는 GitLab 설정을 더 쉽게 하기 위해 Bitnami PostgreSQL, Bitnami Redis, 공식 MinIO 차트 포크를 번들로 제공합니다. 라이선스, 프로젝트 유지 관리, 공개 이미지 가용성에 대한 여러 변경으로 인해 이러한 구성 요소는 대체 없이 GitLab Helm 차트와 GitLab Operator에서 제거될 예정입니다.

이러한 차트는 현재 기본으로 활성화되어 있지만 프로덕션 사용에는 권장하지 않는다고 명시적으로 문서화되어 있습니다. 그 유일한 목적은 빠른 설정 개념 증명 및 테스트 환경을 가능하게 하는 것이었습니다.

번들 PostgreSQL, Redis, MinIO가 포함된 인스턴스를 실행 중이라면, 마이그레이션 가이드를 확인하세요.

Linux 패키지가 제공하는 Redis 및 PostgreSQL은 이 변경의 영향을 받지 않습니다.

ci_job_token_scope_enabled 프로젝트 API 속성 지원 중단#

  • GitLab 16.4에서 발표
  • GitLab 19.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이 프로젝트에서 액세스 제한 CI/CD 작업 토큰 프로젝트 설정은 18.0에서 제거되었습니다. 프로젝트 API의 관련 ci_job_token_scope_enabled 속성은 이제 지원이 중단되었으며 항상 false를 반환하므로 19.0에서 제거될 예정입니다. 작업 토큰 액세스를 제어하려면 CI/CD 작업 토큰 프로젝트 설정을 사용하세요.

heroku/builder:22 이미지 지원 중단#

  • GitLab 17.4에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

클라우드 네이티브 빌드팩(CNB) 빌더 이미지가 Auto DevOps Build 프로젝트에서 heroku/builder:24로 업데이트되었습니다. 대부분의 경우 변경 사항이 큰 영향을 미치지 않을 것으로 예상되지만, 일부 Auto DevOps 사용자, 특히 Auto Build 사용자에게는 호환성 변경이 될 수 있습니다. 워크로드에 대한 영향을 더 잘 이해하려면 다음을 검토하세요:

이러한 변경 사항은 Auto DevOps의 Auto Build 단계가 제공하는 auto-build-image를 파이프라인에서 사용하는 경우에 적용됩니다.

GitLab 19.0 이후에도 heroku/builder:22를 계속 사용하려면 AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDERheroku/builder:22로 설정하세요.

Explore > Projects의 트렌딩 탭 지원 중단#

  • GitLab 18.8에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Explore > Projects트렌딩 탭과 관련 GraphQL 인수는 GitLab 18.8에서 지원이 중단되었으며 GitLab 19.0에서 제거될 예정입니다. GitLab 19.0 릴리스 전 한 달 동안, 트렌딩 탭은 GitLab.com에서 별 수 기준으로 내림차순 정렬된 활성 탭으로 리다이렉트됩니다.

제거되는 항목

  • Explore > Projects 페이지의 트렌딩
  • 다음 GraphQL 유형의 trending 인수:
    • Query.adminProjects
    • Query.projects
    • Organization.projects

변경 이유

트렌딩 알고리즘은 공개 프로젝트만 고려하므로, 주로 내부 또는 비공개 가시성을 사용하는 GitLab Self-Managed 인스턴스에서는 효과가 없습니다. 알고리즘의 한계와 검색 기능 부재로 인해 Self-Managed 사용자들로부터 명시적인 제거 요청이 있었습니다. 중요한 개선에 투자하는 대신, 기존 검색 메커니즘 강화에 리소스를 집중하고 있습니다.

필요한 조치

UI 사용자: 트렌딩 탭은 19.0에서 완전히 제거되기 전 다음 호환성 변경 기간 동안 접근이 불가능합니다. 최근 업데이트되거나 별 수가 가장 많은 프로젝트를 보려면 활성 탭을 사용하는 것을 권장합니다.

Bitbucket Cloud 가져오기 GitLab API에서 앱 암호 사용#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Atlassian은 Bitbucket Cloud의 앱 암호(사용자 이름 및 암호 인증)를 지원 중단하고 이 인증 방법이 2026-06-09에 작동을 중지할 것이라고 발표했습니다.

GitLab 19.0부터 GitLab API를 통해 Bitbucket Cloud에서 리포지터리를 가져오려면 사용자 API 토큰을 사용해야 합니다.

Bitbucket Server에서 리포지터리를 가져오거나 GitLab UI를 통해 Bitbucket Cloud에서 가져오는 사용자는 영향을 받지 않습니다.

ciJobTokenScopeAddProject GraphQL 뮤테이션 지원 중단#

  • GitLab 17.5에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0의 CI/CD 작업 토큰에 대한 기본 동작 변경 예정으로, 관련 ciJobTokenScopeAddProject GraphQL 뮤테이션을 ciJobTokenScopeAddGroupOrProject로 대체하여 지원 중단합니다.

GitLab 18.8#

정적 컴플라이언스 위반 보고서#

  • GitLab 18.2에서 발표
  • GitLab 18.8에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

기존 정적 컴플라이언스 위반 보고서는 GitLab 18.2에서 지원이 중단되었으며 GitLab 18.8에서 제거될 예정입니다.

정적 컴플라이언스 위반 보고서를 대체하기 위해:

이러한 기능은 정적 위반 보고서와 동일한 기능을 모두 제공하지만, 필요한 위반 사항을 구성할 수 있습니다.

GitLab 18.8에서 정적 컴플라이언스 위반 보고서를 요구 사항 및 제어에 대한 더 정확한 보고를 위해 컴플라이언스 프레임워크를 사용하는 동적 보고서로 대체할 예정입니다.

GitLab 18.6#

GitLab Duo Self-Hosted를 위한 초기 Mistral 모델 지원 중단#

  • GitLab 18.3에서 발표
  • GitLab 18.6에서 지원 종료
  • GitLab 18.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.6에서 GitLab Duo Self-Hosted와 함께 사용하기 위한 Mistral 7B-it, Mixtral 8x7B, Mixtral 8x22B 모델 지원을 제거할 예정입니다. GitLab Duo Enterprise 고객은 GitLab Duo Self-Hosted와 함께 이러한 모델을 계속 사용할 수 있지만, 이러한 모델을 사용하는 구성에 대한 기술 지원은 더 이상 받을 수 없습니다. GitLab Duo Self-Hosted는 모든 일반 제공 GitLab Duo Self-Hosted 기능과 완전히 호환되는 것으로 검증된 Mistral Small 24B Instruct 2506을 계속 지원합니다.

Omnibus Linux 패키지에 번들된 Prometheus 2.x#

  • GitLab 18.3에서 발표
  • GitLab 18.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지에 번들된 Prometheus 2.x는 지원이 중단되었으며 GitLab 18.6에서 최신 Prometheus 3.x 릴리스로 업데이트될 예정입니다.

Prometheus 3에는 새 로그 형식 및 더 엄격한 헤더 유효성 검사와 같은 잠재적인 호환성 변경이 포함되어 있습니다. 자세한 내용은 Prometheus 마이그레이션 가이드를 참조하세요.

이 변경은 GitLab Helm 차트 설치에는 영향을 미치지 않습니다.

컴플라이언스 표준 준수 대시보드를 컴플라이언스 상태 대시보드로 교체#

  • GitLab 17.11에서 발표
  • GitLab 18.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.11에서 다음을 출시했습니다:

이러한 기능은 컴플라이언스 표준 준수 대시보드와 동일한 기능을 모두 제공하지만, 필요한 준수 사항을 구성할 수 있습니다.

GitLab 18.6에서 요구 사항 및 제어에 대한 더 정확한 보고를 위해 컴플라이언스 표준 준수 대시보드를 컴플라이언스 상태 대시보드로 교체할 예정입니다.

정확한 코드 검색을 비활성화하는 사용자 설정#

  • GitLab 18.3에서 발표
  • GitLab 18.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

정확한 코드 검색을 비활성화하는 사용자 설정이 지원 중단되었습니다. GitLab.com에서는 더 이상 프로필 기본 설정에서 정확한 코드 검색을 비활성화할 수 없습니다.

정확한 코드 검색은 더 나은 사용자 경험을 제공하며 기존 검색 API와 호환됩니다. 모든 사용자가 향상된 검색 기능의 이점을 누릴 수 있도록 이 사용자 설정은 GitLab 18.6에서 제거될 예정입니다.

GitLab 18.5#

고급 검색에서 OpenSearch 1.x 지원#

  • GitLab 18.2에서 발표
  • GitLab 18.5에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OpenSearch 1.x의 유지 관리 기간이 종료되었습니다. GitLab Self-Managed 및 GitLab Dedicated의 경우, 관리자는 고급 검색을 사용하려면 OpenSearch 인스턴스를 업그레이드해야 합니다.

GitLab 18.4#

GitLab 차트에서 Bitnami PostgreSQL 및 Redis 이미지#

  • GitLab 18.4에서 발표
  • GitLab 18.4에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm 차트 기본 구성은 PostgreSQL 및 Redis를 위해 Bitnami 차트와 컨테이너 이미지에 의존합니다. Bitnami는 2025년 9월 29일부터 무료 카탈로그에서 이러한 이미지를 중단할 예정입니다. 2025년 8월 28일부터 일시적으로 이미지를 중단하는 브라운아웃이 시작되었습니다.

GitLab 차트는 데모 및 테스트 목적으로만 Bitnami의 PostgreSQL 및 Redis를 번들로 제공합니다. 지원되는 GitLab 참조 아키텍처의 일부가 아닙니다. 참조 아키텍처를 사용하거나 다른 벤더의 패키지 또는 이미지로 외부 PostgreSQL 및 Redis를 배포한 경우, 이 변경의 영향을 받지 않습니다.

임시 해결책으로 GitLab은 차트 구성을 Bitnami 레거시 리포지터리로 마이그레이션했습니다. 그러나 패치되지 않은 GitLab 차트 환경(GitLab 17.11, GitLab 18.0.5, GitLab 18.1.4, GitLab 18.2.1 이하)은 계속 지원 중단된 Bitnami 리포지터리에서 이미지를 가져오므로, 9월 29일 이후 배포 실패가 발생하고 브라운아웃 단계 동안 배포 실패가 발생할 수 있습니다.

영향을 받는 GitLab 차트 구성을 실행 중이라면 다음 중 하나를 수행해야 합니다:

  • 지원되는 GitLab 참조 아키텍처로 마이그레이션하세요.
  • 패치된 차트 버전으로 업그레이드하세요.
  • 차트 값에서 레거시 리포지터리를 구성하세요. 예시는 머지 리퀘스트 4421을 참조하세요.

앞으로 GitLab 차트에서 Bitnami 구성 요소를 대체하거나 잠재적으로 제거할 대안을 평가할 예정입니다. 자세한 내용은 공식 Bitnami 발표를 참조하세요.

GitLab 18.3#

cert-manager Helm 차트 업데이트#

  • GitLab 18.0에서 발표
  • GitLab 18.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

최신 cert-manager 차트의 스키마 유효성 검사를 활성화하기 위해, GitLab Helm 차트의 certmanager.install 값이 installCertmanager로 대체되어 지원이 중단됩니다. 스키마 정의는 GitLab 차트의 certmanager 섹션 내에 추가한 추가 속성을 허용하지 않습니다.

GitLab 18.3(GitLab 차트 9.3)에서 지원 중단된 값을 제거하고 번들 cert-manager를 업데이트할 예정입니다.

이전에 certmanager.install 설정을 사용했다면:

  1. certmanager.install 값을 installCertmanager로 이전하세요.
  2. certmanager.install 설정을 완전히 제거하세요.

또한 cert-manager 릴리스 노트를 검토하세요:

GitLab 18.1#

커밋 API에 적용된 파이프라인 작업 제한#

  • GitLab 17.7에서 발표
  • GitLab 18.1에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0부터 활성 파이프라인의 최대 작업 수커밋 API를 사용하여 작업을 생성할 때도 적용됩니다. 구성된 작업 제한 내에 유지되도록 통합을 검토하세요.

GitLab 18.0#

API Discovery가 기본적으로 브랜치 파이프라인을 사용#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0에서 API Discovery의 CI/CD 템플릿(API-Discovery.gitlab-ci.yml)의 기본 동작을 업데이트할 예정입니다.

GitLab 18.0 이전에는 이 템플릿이 MR이 열려 있을 때 기본적으로 머지 리퀘스트(MR) 파이프라인에서 작업을 실행하도록 구성합니다. GitLab 18.0부터 이 템플릿의 동작을 다른 AST 스캐너의 안정적인 템플릿 에디션 동작에 맞출 예정입니다:

  • 기본적으로 템플릿은 브랜치 파이프라인에서 스캔 작업을 실행합니다.
  • MR이 열려 있을 때 대신 MR 파이프라인을 사용하려면 CI/CD 변수 AST_ENABLE_MR_PIPELINES: true를 설정할 수 있습니다. 이 새 변수의 구현은 이슈 410880에서 추적됩니다.

Application Security Testing 분석기 주요 버전 업데이트#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0에서 모든 Application Security Testing 분석기 컨테이너 이미지의 주요 버전을 업데이트할 예정입니다.

기본 포함 템플릿을 사용하지 않거나 분석기 버전을 고정한 경우, 고정된 버전을 제거하거나 최신 주요 버전으로 업데이트하도록 CI/CD 작업 정의를 업데이트해야 합니다.

GitLab 17.0에서 GitLab 17.11을 사용하는 사용자는 GitLab 18.0 릴리스까지 분석기 업데이트를 정상적으로 받게 되며, 이후 새로 수정된 버그와 출시된 기능은 분석기의 새 주요 버전에서만 릴리스됩니다. 그러나 컨테이너 레지스트리에서 게시된 컨테이너 이미지를 제거하지는 않습니다.

유지 관리 정책에 따라 지원 중단된 버전에 버그 및 기능을 백포트하지 않습니다. 필요한 경우 최신 3개 마이너 릴리스 내에서 보안 패치가 백포트됩니다.

특히 다음 분석기는 GitLab 18.0 릴리스 이후 더 이상 업데이트되지 않습니다:

  • GitLab Advanced SAST: 버전 1
  • 컨테이너 스캐닝: 버전 7
  • Gemnasium: 버전 5
  • DAST: 버전 5
  • DAST API: 버전 4
  • Fuzz API: 버전 4
  • IaC 스캐닝: 버전 5
  • 파이프라인 시크릿 탐지: 버전 6
  • 정적 애플리케이션 보안 테스팅(SAST): 모든 분석기의 버전 5
    • kics
    • kubesec
    • pmd-apex
    • semgrep
    • sobelow
    • spotbugs

Upcoming 및 Started 마일스톤 필터의 동작 변경#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

"Upcoming" 및 "Started" 특수 필터의 동작이 다가오는 GitLab 주요 릴리스 18.0에서 변경될 예정입니다. 두 필터의 새로운 동작은 이슈 429728에 설명되어 있습니다.

이 변경은 기존 마일스톤 필터링 로직을 계속 사용하는 GitLab REST API에는 영향을 미치지 않습니다. GitLab GraphQL API는 새 필터링 로직을 따르도록 업데이트됩니다.

CI/CD 작업 토큰 - 승인된 그룹 및 프로젝트 허용 목록 적용#

  • GitLab 16.5에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.9에 도입된 승인된 그룹 및 프로젝트 설정 (GitLab 16.3에서 이 프로젝트에 대한 액세스 제한에서 이름 변경)을 사용하면 프로젝트에 대한 CI/CD 작업 토큰 액세스를 제어할 수 있습니다. 이 프로젝트 및 허용 목록에 있는 그룹과 프로젝트만으로 설정하면, 허용 목록에 추가된 그룹이나 프로젝트만 작업 토큰을 사용하여 프로젝트에 액세스할 수 있습니다.

GitLab 15.9 이전에 생성된 프로젝트의 경우, 허용 목록이 기본적으로 비활성화되어 (모든 그룹 및 프로젝트 액세스 설정 선택), 모든 프로젝트에서 작업 토큰 액세스를 허용했습니다. 허용 목록은 이제 모든 새 프로젝트에서 기본적으로 활성화됩니다. 이전 프로젝트에서는 여전히 비활성화되어 있거나 모든 그룹 및 프로젝트 옵션을 수동으로 선택하여 액세스를 제한하지 않았을 수 있습니다.

GitLab 17.6부터 GitLab Self-Managed 및 GitLab Dedicated 인스턴스 관리자는 선택적으로 모든 프로젝트에 이 더 안전한 설정을 강제 적용할 수 있습니다. 이 설정은 프로젝트 유지 관리자가 모든 그룹 및 프로젝트를 선택하지 못하도록 합니다. 이 변경은 프로젝트 간 더 높은 보안 수준을 보장합니다.

GitLab 18.0에서 이 인스턴스 설정이 GitLab.com, GitLab Self-Managed, GitLab Dedicated에서 기본적으로 활성화됩니다. GitLab Self-Managed 및 GitLab Dedicated 관리자는 GitLab 18.0으로 업그레이드한 후 설정을 비활성화하여 업그레이드 이전 동작을 복원할 수 있습니다. GitLab 18.0에서는 GitLab Self-Managed 및 GitLab Dedicated의 프로젝트 설정이 변경되지 않지만, 인스턴스 설정 상태는 인스턴스의 모든 프로젝트에 영향을 미칩니다.

이 변경에 대비하여, 교차 프로젝트 인증을 위해 작업 토큰을 사용하는 프로젝트 유지 관리자는 프로젝트의 승인된 그룹 및 프로젝트 허용 목록을 채워야 합니다. 그런 다음 설정을 이 프로젝트 및 허용 목록에 있는 그룹과 프로젝트만으로 변경해야 합니다.

CI/CD 작업 토큰으로 인증하여 프로젝트에 액세스해야 하는 프로젝트를 식별하는 데 도움이 되도록, GitLab 17.6에 프로젝트에 대한 작업 토큰 인증을 추적하는 방법도 도입했습니다. 해당 데이터를 사용하여 CI/CD 작업 토큰 허용 목록을 채울 수 있습니다.

GitLab 17.10에서 18.6까지 마이그레이션 도구를 사용하여 작업 토큰 인증 로그에서 CI/CD 작업 토큰 허용 목록을 자동으로 채울 수 있습니다. GitLab 18.0에서 허용 목록의 일반적 적용 전에 이 마이그레이션 도구를 사용하여 허용 목록을 채우고 사용하는 것을 권장합니다. GitLab 18.0에서는 이전에 발표된 대로 GitLab.com에서 허용 목록의 자동 채우기 및 적용이 발생합니다.

이 마이그레이션 도구는 GitLab 18.6에서 제거됩니다.

CI/CD 작업 토큰 - 프로젝트에서 액세스 제한 설정 제거#

  • GitLab 15.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.4에서 더 안전하게 만들기 위해 프로젝트의 CI/CD 작업 토큰(CI_JOB_TOKEN)에서 액세스를 제한하는 설정을 도입했습니다. 이 설정은 CI_JOB_TOKEN 액세스 제한이었습니다. GitLab 16.3에서 명확성을 위해 이 프로젝트에서 액세스 제한으로 이름을 변경했습니다.

GitLab 15.9에서 승인된 그룹 및 프로젝트라는 대체 설정을 도입했습니다. 이 설정은 허용 목록을 사용하여 프로젝트에 대한 작업 토큰 액세스를 _제어_합니다. 이 새 설정은 원본보다 크게 개선된 것입니다. 첫 번째 반복은 GitLab 16.0에서 지원 중단되었으며 GitLab 18.0에서 제거될 예정입니다.

이 프로젝트에서 액세스 제한 설정은 모든 새 프로젝트에서 기본적으로 비활성화됩니다. GitLab 16.0 이후로는 어떤 프로젝트에서든 비활성화된 후 이 설정을 다시 활성화할 수 없습니다. 대신 승인된 그룹 및 프로젝트 설정을 사용하여 프로젝트에 대한 작업 토큰 액세스를 제어하세요.

DAST dast_crawl_extract_element_timeoutdast_crawl_search_element_timeout 변수 지원 중단#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

DAST 변수 DAST_CRAWL_EXTRACT_ELEMENT_TIMEOUTDAST_CRAWL_SEARCH_ELEMENT_TIMEOUT은 지원이 중단되었으며 GitLab 18.0에서 제거될 예정입니다. 도입 당시 이 변수들은 특정 브라우저 인터랙션에 대한 세분화된 타임아웃 제어를 제공했습니다. 이러한 인터랙션은 이제 공통 타임아웃 값으로 관리되어 변수가 불필요해졌습니다. 또한 기본 구현 문제로 인해 DAST 브라우저 기반 분석기 도입 이후 이 변수들은 기능하지 않았습니다. 이 두 변수를 제거하면 DAST 설정이 단순해지고 사용자에게 더 나은 온보딩 경험을 제공합니다.

DAST dast_devtools_api_timeout의 기본값이 낮아집니다#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

DAST_DEVTOOLS_API_TIMEOUT 환경 변수는 DAST 스캔이 브라우저의 응답을 기다리는 시간을 결정합니다. GitLab 18.0 이전에는 변수의 정적 값이 45초입니다. GitLab 18.0 이후에는 DAST_DEVTOOLS_API_TIMEOUT 환경 변수의 값이 동적으로 계산되며, 다른 타임아웃 설정을 기반으로 합니다. 대부분의 경우 45초 값은 많은 스캐너 함수의 타임아웃 값보다 높았습니다. 동적으로 계산된 값은 DAST_DEVTOOLS_API_TIMEOUT 변수가 적용되는 경우 수를 늘려 더 유용하게 만듭니다.

잠재적 중단을 줄이기 위해 다음 일정에 따라 기본 타임아웃 값을 점진적으로 조정합니다:

타임아웃 값 마일스톤
45 17.11 이하
30 18.0
20 18.1
10 18.2
5 18.3

Dependency Proxy 토큰 범위 적용#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너용 Dependency Proxy는 범위를 확인하지 않고 개인 액세스 토큰 또는 그룹 액세스 토큰을 사용하여 docker logindocker pull 요청을 수락합니다.

GitLab 18.0에서 Dependency Proxy는 인증을 위해 read_registrywrite_registry 범위 모두를 요구합니다. 이 변경 이후에는 이러한 범위가 없는 토큰을 사용한 인증 시도가 거부됩니다.

이것은 호환성 변경입니다. 업그레이드 전에 필요한 범위가 있는 새 액세스 토큰을 생성하고 이러한 새 토큰으로 워크플로우 변수 및 스크립트를 업데이트하세요.

이 변경이 GitLab Self-Managed 인스턴스에 미치는 영향을 평가하려면 GitLab 17.10 이후 경고 메시지에 대한 인증 로그를 모니터링할 수 있습니다. auth_json.log 파일에서 Dependency proxy missing authentication abilities를 포함하는 항목을 찾으세요. GitLab Helm 차트나 GitLab Dedicated를 사용하는 경우 로그는 component: "gitlab"subcomponent: "auth_json"에 있습니다. 이러한 항목은 필요한 범위 없이 토큰을 사용한 인증 시도를 보여주며, GitLab 18.0으로 업그레이드한 후 실패합니다.

Terraform CI/CD 템플릿 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Terraform CI/CD 템플릿은 지원이 중단되었으며 GitLab 18.0에서 제거될 예정입니다. 영향을 받는 템플릿:

  • Terraform.gitlab-ci.yml
  • Terraform.latest.gitlab-ci.yml
  • Terraform/Base.gitlab-ci.yml
  • Terraform/Base.latest.gitlab-ci.yml

GitLab 16.9에서 지원 중단을 사용자에게 알리기 위해 템플릿에 새 작업이 추가되었습니다. 영향을 받는 파이프라인에서 deprecated-and-will-be-removed-in-18.0 작업을 자리 표시자 작업으로 덮어써서 경고를 끌 수 있습니다.

GitLab은 BSL 라이선스 하에 있는 버전으로 작업 이미지의 terraform 바이너리를 업데이트할 수 없습니다.

Terraform을 계속 사용하려면, 템플릿과 Terraform 이미지를 복제하여 필요에 따라 유지 관리하세요. GitLab은 사용자 지정 빌드 이미지로 마이그레이션하기 위한 자세한 지침을 제공합니다.

대안으로 GitLab.com에서 새로운 OpenTofu CI/CD 구성 요소를 사용하거나 GitLab Self-Managed에서 새로운 OpenTofu CI/CD 템플릿을 사용하는 것을 권장합니다. CI/CD 구성 요소는 아직 GitLab Self-Managed에서 사용할 수 없지만, 이슈 #415638에서 이 기능 추가를 제안하고 있습니다. CI/CD 구성 요소가 GitLab Self-Managed에서 사용 가능해지면 OpenTofu CI/CD 템플릿이 제거됩니다.

새로운 OpenTofu CI/CD 구성 요소에 대해 자세히 알아보세요.

라이선스 메타데이터 형식 V1 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

라이선스 메타데이터 형식 V1 데이터셋은 지원이 중단되었으며 GitLab 18.0에서 제거될 예정입니다.

package_metadata_synchronization 기능 플래그가 활성화된 사용자는 GitLab 16.3 이상으로 업그레이드하고 기능 플래그 구성을 제거하는 것이 좋습니다.

GraphQL API의 NamespaceProjectSortEnum에서 STORAGE 열거형 지원 중단#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab GraphQL API의 NamespaceProjectSortEnum에서 STORAGE 열거형이 GitLab 18.0에서 제거됩니다.

이 변경에 대비하여, NamespaceProjectSortEnum과 상호 작용하는 GraphQL 쿼리를 검토하고 업데이트하는 것을 권장합니다. STORAGE 필드에 대한 참조를 EXCESS_REPO_STORAGE_SIZE_DESC로 교체하세요.

GraphQL API의 ProjectMonthlyUsageType에서 name 필드 지원 중단#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab GraphQL API의 ProjectMonthlyUsageType에서 name 필드가 GitLab 18.0에서 제거됩니다.

이 변경에 대비하여, ProjectMonthlyUsageType과 상호 작용하는 GraphQL 쿼리를 검토하고 업데이트하는 것을 권장합니다. name 필드에 대한 참조를 project.name으로 교체하세요.

GitLab NGINX 차트 컨트롤러 이미지 v1.3.1에 대한 폴백 지원#

  • GitLab 17.6에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경은 GitLab NGINX 차트를 사용하고 있고 자체 NGINX RBAC 규칙을 설정한 경우에만 영향을 미칩니다.

자체 외부 NGINX 차트를 사용 중이거나, NGINX RBAC 규칙 변경 없이 GitLab NGINX 차트를 사용 중이라면 이 지원 중단이 적용되지 않습니다.

GitLab 17.6(Helm 차트 8.6)에서 GitLab 차트는 기본 NGINX 컨트롤러 이미지를 버전 1.3.1에서 1.11.2로 업데이트했습니다. 이 새 버전은 GitLab NGINX 차트에 추가된 새 RBAC 규칙이 필요하므로 해당 규칙을 최종적으로 생성해야 합니다. 이 변경은 다음 버전에도 백포트됩니다:

  • GitLab 17.5.1(Helm 차트 8.5.1)
  • GitLab 17.4.3(Helm 차트 8.4.3)
  • GitLab 17.3.6(Helm 차트 8.3.6)
Note

Helm 차트 8.3에서 8.7까지의 최신 패치 버전에는 NGINX 컨트롤러 버전 1.11.2가 포함되어 있습니다. 이후 차트 버전에는 다양한 보안 수정이 포함된 버전 1.11.5가 포함됩니다. GitLab 18.0은 기본적으로 컨트롤러 버전 1.11.5를 사용합니다.

자체 NGINX RBAC 규칙을 관리하는 경우 nginx-ingress.rbac.createfalse로 설정한 것입니다. 이 경우 GitLab 17.3(Helm 차트 8.3)부터 GitLab 17.11(Helm 차트 8.11)까지는 이 변경을 감지하고 이전 컨트롤러 이미지를 사용하는 폴백 메커니즘이 있어 RBAC 규칙 변경이 필요하지 않습니다.

GitLab 18.0(Helm 차트 9.0)부터 이 폴백 메커니즘이 제거되므로 새 컨트롤러 이미지가 사용되고 새 RBAC 규칙이 존재해야 합니다.

GitLab 18.0에서 강제 적용되기 전에 새 NGINX 컨트롤러 이미지를 활용하려면:

  1. 클러스터에 새 RBAC 규칙을 추가하세요 예시 참조.
  2. nginx-ingress.controller.image.disableFallbacktrue로 설정하세요.

자세한 내용은 차트 릴리스 페이지를 참조하세요.

Gitaly 속도 제한#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Git 작업과 리포지터리 지연의 가변성이 높기 때문에, Gitaly RPC 기반 속도 제한은 효과가 없습니다. 적절한 속도 제한을 구성하는 것은 어렵고 해로운 작업이 초당 요청 수가 두드러질 만큼 충분히 생성되는 경우가 드물어 빠르게 쓸모없어지는 경우가 많습니다.

Gitaly는 이미 동시성 제한적응형 제한 추가 기능을 지원하며, 이는 프로덕션에서 잘 작동하는 것으로 입증되었습니다.

Gitaly는 외부 네트워크에 직접 노출되지 않으며 로드 밸런서와 같은 외부 보호 레이어가 더 나은 보안을 제공하므로 속도 제한은 효과가 적습니다.

따라서 더 신뢰할 수 있는 동시성 제한을 위해 속도 제한을 지원 중단합니다. Gitaly RPC 기반 속도 제한은 GitLab 18.0에서 제거될 예정입니다.

레거시 Web IDE 지원 중단#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

레거시 Vue 기반 GitLab Web IDE 구현이 GitLab에서 제거될 예정입니다. 이 변경은 GitLab 15.11부터 기본 Web IDE 경험이 된 GitLab VSCode Fork 기반 Web IDE로의 성공적인 전환에 따른 것입니다.

이 제거는 레거시 Web IDE 구현에 여전히 액세스하는 사용자에게 영향을 미칩니다.

이 제거에 대비하여, GitLab 인스턴스에서 이전에 비활성화된 경우 vscode_web_ide 기능 플래그를 활성화하세요.

정책당 허용되는 스캔 실행 정책 작업 수 제한#

  • GitLab 17.5에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

정책당 허용되는 최대 스캔 실행 정책 작업 수에 새 제한이 추가되었습니다. 이 변경은 17.4에서 기능 플래그 scan_execution_policy_action_limitscan_execution_policy_action_limit_group 뒤에 도입되었습니다. 활성화되면 스캔 실행 정책의 처음 10개 작업만 처리됩니다.

제한을 추가함으로써 보안 정책의 성능과 확장성을 보장할 수 있습니다.

추가 작업이 필요한 경우, 기존 정책을 10개 이하의 작업으로 제한하세요. 그런 다음 보안 정책 프로젝트당 5개의 스캔 실행 정책 제한 내에서 추가 작업이 있는 새 스캔 실행 정책을 만드세요.

GitLab Self-Managed 및 GitLab Dedicated 관리자는 scan_execution_policies_action_limit 애플리케이션 설정으로 사용자 지정 제한을 구성할 수 있습니다.

스캔 실행 정책에서 제한된 scan 작업#

  • GitLab 17.5에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab.com에서 GitLab 18.0부터 스캔 실행 정책은 정책당 10개의 scan 작업으로 제한됩니다. 제한을 초과하는 새 정책을 생성할 수 없으며 제한을 초과하는 기존 정책을 업데이트할 수 없습니다. 제한을 초과하는 기존 정책의 경우 정책의 처음 10개 scan 작업만 실행됩니다.

GitLab Self-Managed 및 GitLab Dedicated 인스턴스에서는 scan_execution_policies_action_limit 애플리케이션 설정으로 사용자 지정 제한을 구성할 수 있습니다. 이러한 인스턴스의 제한은 기본적으로 0개 작업입니다. 10개 작업의 제한을 구성하는 것이 좋습니다.

Prometheus 서브차트의 주요 업데이트#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0 및 GitLab 차트 9.0에서 Prometheus 서브차트가 15.3에서 27.3으로 업데이트됩니다. 이 업데이트와 함께 Prometheus 3이 기본으로 제공됩니다.

업그레이드를 수행하려면 수동 단계가 필요합니다. Alertmanager, Node Exporter 또는 Pushgateway가 활성화된 경우 Helm 값도 업데이트해야 합니다.

자세한 내용은 마이그레이션 가이드를 참조하세요.

GitLab.com의 취약점에 대한 새로운 데이터 보존 제한#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0에서 시스템 성능과 안정성을 향상시키기 위해 GitLab.com Ultimate 고객을 위한 새로운 데이터 보존 제한을 도입합니다. 데이터 보존 제한은 취약점 데이터가 저장되는 기간에 영향을 줍니다. 업데이트되지 않은 12개월 이상 된 취약점은 자동으로 콜드 스토리지 아카이브로 이동됩니다. 이러한 아카이브는:

  • GitLab UI를 통해 계속 액세스 및 다운로드 가능합니다.
  • 3년간 보존됩니다.
  • 3년 후 영구적으로 삭제됩니다.

PostgreSQL 14 및 15 더 이상 지원되지 않음#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 PostgreSQL의 연간 업그레이드 주기를 따릅니다.

PostgreSQL 14 및 15 지원은 GitLab 18.0에서 제거될 예정입니다. GitLab 18.0에서 PostgreSQL 16이 최소 필요 PostgreSQL 버전이 됩니다.

PostgreSQL 14 및 15는 전체 GitLab 17 릴리스 주기 동안 지원됩니다. PostgreSQL 16도 GitLab 18.0 이전에 업그레이드하려는 인스턴스를 위해 지원됩니다.

Omnibus Linux 패키지를 사용하여 설치한 단일 PostgreSQL 인스턴스를 실행 중이라면 17.11에서 자동 업그레이드가 시도될 수 있습니다. 업그레이드를 수용할 충분한 디스크 공간이 있는지 확인하세요. 자세한 내용은 Omnibus 데이터베이스 문서를 참조하세요.

그룹 설정의 프로젝트 페이지 지원 중단#

  • GitLab 17.0에서 발표
  • GitLab 17.9에서 지원 종료
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

그룹 소유자는 그룹 설정의 프로젝트 페이지에 액세스할 수 있으며, 여기에는 그룹이 포함하는 프로젝트 목록과 프로젝트 생성, 편집, 삭제 옵션, 그리고 각 프로젝트의 구성원 페이지 링크가 있습니다. 이 모든 기능은 그룹 개요 페이지와 프로젝트의 각 구성원 페이지에서 사용 가능합니다. 그룹 설정의 프로젝트 페이지에 대한 낮은 사용량과 제한된 접근성으로 인해 이 페이지는 지원이 중단될 예정입니다. 이 변경은 사용자 인터페이스에만 영향을 미칩니다. 기본 API는 계속 사용 가능하므로 프로젝트 API를 사용하여 프로젝트 생성, 편집, 삭제를 계속 수행할 수 있습니다. 17.9에서 이 페이지에서 그룹 개요 페이지로 리다이렉트를 구현할 예정입니다. 프로젝트 페이지는 18.0에서 그룹 설정에서 완전히 제거됩니다.

REST API 엔드포인트 pre_receive_secret_detection_enabled 지원 중단#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

REST API 엔드포인트 pre_receive_secret_detection_enabledsecret_push_protection_enabled로 대체되어 지원이 중단됩니다. 기능 pre_receive_secret_detection에서 secret_push_protection으로의 이름 변경을 반영하기 위해 일부 API 필드 이름을 변경하고 있습니다.

새 API 필드 이름을 추가했지만 원래 발표된 대로 GitLab 18.0에서 이전 필드 이름을 더 이상 제거하지 않을 예정입니다.

이전 pre_receive_secret_detection_enabled 데이터베이스 열을 제거하도록 데이터베이스를 계속 업데이트하지만, API 필드 이름 중 하나를 사용할 수 있습니다. 둘 다 새 secret_push_protection_enabled 데이터베이스 열의 값을 반영합니다.

Raspberry Pi 32비트 패키지 지원 중단#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 버전 18.0부터 Raspberry Pi용 32비트 패키지를 더 이상 제공하지 않습니다. 64비트 Raspberry Pi OS를 사용하고 arm64 Debian 패키지를 설치해야 합니다. 32비트 OS에서 데이터를 백업하고 64비트 OS로 복원하는 방법은 PostgreSQL을 위한 운영 체제 업그레이드를 참조하세요.

allowed_pull_policies에 없는 컨테이너 이미지 풀 정책 거부#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

구성된 모든 풀 정책은 러너의 config.toml 파일에 지정된 allowed_pull_policies 구성에 있어야 합니다. 그렇지 않으면 작업이 incompatible pull policy 오류로 실패해야 합니다.

현재 구현에서 여러 풀 정책이 정의된 경우, 다른 정책이 포함되지 않더라도 적어도 하나의 풀 정책이 allowed-pull-policies의 정책과 일치하면 작업이 통과됩니다.

GitLab 18.0에서는 allowed-pull-policies의 정책과 일치하는 풀 정책이 없는 경우에만 작업이 실패합니다. 그러나 현재 동작과 달리, 작업은 allowed-pull-policies에 나열된 풀 정책만 사용합니다. 이 차이로 인해 현재 통과하는 작업이 GitLab 18.0에서 실패할 수 있습니다.

duoProAssignedUsersCount GraphQL 필드 제거#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

18.0에서 duoProAssignedUsersCount GraphQL 필드를 제거합니다. aiMetrics API로 이 필드를 사용하는 경우 문제가 발생할 수 있으며, 대신 duoAssignedUsersCount를 사용할 수 있습니다. 이 제거는 GitLab Duo Pro 및 Duo 시트 할당 사용자 모두를 계산하는 수정의 일부입니다.

setPreReceiveSecretDetection GraphQL 뮤테이션을 setSecretPushProtection으로 이름 변경#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

setPreReceiveSecretDetection GraphQL 뮤테이션이 setSecretPushProtection으로 이름 변경되었습니다. 기능 pre_receive_secret_detection에서 secret_push_protection으로의 이름 변경을 반영하기 위해 뮤테이션 응답의 일부 필드 이름도 변경하고 있습니다.

새 뮤테이션 이름을 추가했지만 원래 발표된 대로 GitLab 18.0에서 이전 뮤테이션 이름을 더 이상 제거하지 않을 예정입니다.

이전 pre_receive_secret_detection_enabled 데이터베이스 열을 제거하도록 데이터베이스를 계속 업데이트하지만, 뮤테이션 이름 중 하나를 사용할 수 있습니다. 둘 다 새 secret_push_protection_enabled 데이터베이스 열의 값을 반영합니다.

GitGuardian 시크릿 탐지 건너뛰기 옵션 이름 변경#

  • GitLab 17.3에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitGuardian 시크릿 탐지를 건너뛰는 옵션인 [skip secret detection]secret_detection.skip_all이 지원 중단됩니다. 대신 [skip secret push protection]secret_push_protection.skip_all을 사용해야 합니다.

새 표현을 사용하는 것을 권장하지만, GitLab 18.0에서는 이전 옵션을 더 이상 제거하지 않을 예정입니다.

add_on_purchase GraphQL 필드를 add_on_purchases로 교체#

  • GitLab 17.4에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL 필드 add_on_purchase는 GitLab 17.4에서 지원이 중단되고 GitLab 18.0에서 제거될 예정입니다. 대신 add_on_purchases 필드를 사용하세요.

네임스페이스 add_on_purchase GraphQL 필드를 add_on_purchases로 교체#

  • GitLab 17.5에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

네임스페이스 GraphQL 필드 add_on_purchase는 GitLab 17.5에서 지원이 중단되고 GitLab 18.0에서 제거될 예정입니다. 대신 루트 add_on_purchases 필드를 사용하세요.

SUSE Linux Enterprise Server 15 SP2 지원#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

SUSE Linux Enterprise Server(SLES) 15 SP2의 장기 서비스 및 지원(LTSS)이 2024년 12월에 종료되었습니다.

따라서 Linux 패키지 설치를 위한 SLES SP2 배포판을 더 이상 지원하지 않습니다. 계속 지원받으려면 SLES 15 SP6으로 업그레이드해야 합니다.

ciJobTokenScopeRemoveProjectdirection GraphQL 인수 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

ciJobTokenScopeRemoveProject 뮤테이션의 direction GraphQL 인수가 지원 중단됩니다. GitLab 15.9에서 발표된 기본 CI/CD 작업 토큰 범위 변경에 따라, direction 인수는 GitLab 17.0에서 INBOUND가 기본값이 되고 OUTBOUND는 더 이상 유효하지 않습니다. GitLab 18.0에서 direction 인수를 제거할 예정입니다.

프로젝트의 토큰 액세스 방향을 제어하기 위해 direction 인수와 함께 OUTBOUND를 사용하고 있다면, 작업 토큰을 사용하는 파이프라인이 인증 실패 위험이 있습니다. 파이프라인이 예상대로 계속 실행되도록 다른 프로젝트를 프로젝트의 허용 목록에 명시적으로 추가해야 합니다.

API에서 노트 기밀성 전환#

  • GitLab 14.10에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

REST 및 GraphQL API를 사용한 노트 기밀성 전환이 지원 중단됩니다. 어떠한 방법으로도 노트 기밀 속성 업데이트가 더 이상 지원되지 않습니다. 경험을 단순화하고 개인 정보가 의도치 않게 노출되는 것을 방지하기 위해 이를 변경합니다.

Gitaly 스토리지 구성을 위한 git_data_dirs#

  • GitLab 16.0에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지 인스턴스의 Gitaly 스토리지를 구성하기 위해 git_data_dirs를 사용하는 지원은 16.0 이후로 지원 중단되었으며 18.0에서 제거될 예정입니다.

마이그레이션 지침은 git_data_dirs에서 마이그레이션을 참조하세요.

GitLab 17.11#

클라이언트 자격 증명 없는 OAuth ROPC 그랜트가 지원 중단됨#

  • GitLab 17.11에서 발표
  • GitLab 17.11에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab.com은 2025년 4월 8일부로 OAuth Resource Owner Password Credentials (ROPC) OAuth 그랜트에 클라이언트 인증을 요구합니다. ROPC는 RFC 버전 2.1에서 OAuth 워킹 그룹에 의해 제외되었습니다. 클라이언트 자격 증명 없는 기존 ROPC 연동은 이 날짜 이후 서비스 중단이 발생합니다. 중단이 발생하는 경우 마감 전에 연동을 업데이트하여 클라이언트 자격 증명을 포함하세요. 자세한 내용은 블로그에서 확인할 수 있습니다.

GitLab 17.9#

openSUSE Leap 15.5 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.9에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

openSUSE Leap의 장기 서비스 및 지원(LTSS)은 2024년 12월에 종료됩니다.

따라서 Linux 패키지 설치에 대해 openSUSE Leap 15.5 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 openSUSE Leap 15.6으로 업그레이드하세요.

GitLab 17.8#

CentOS 7 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

CentOS 7의 장기 서비스 및 지원(LTSS)은 2024년 6월에 종료되었습니다.

따라서 Linux 패키지 설치에 대해 CentOS 7 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 다른 운영 체제로 업그레이드하세요.

Oracle Linux 7 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Oracle Linux 7의 장기 서비스 및 지원(LTSS)은 2024년 12월에 종료됩니다.

따라서 Linux 패키지 설치에 대해 Oracle Linux 7 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 Oracle Linux 8로 업그레이드하세요.

Raspberry Pi OS Buster 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Raspberry Pi OS Buster(이전에는 Raspbian Buster로 알려진)의 장기 서비스 및 지원(LTSS)이 2024년 6월에 종료되었습니다.

따라서 Linux 패키지 설치에 대해 PiOS Buster 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 PiOS Bullseye로 업그레이드하세요.

Red Hat Enterprise Linux 7 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Red Hat Enterprise Linux (RHEL) 7은 2024년 6월에 유지보수 지원이 종료되었습니다.

따라서 RHEL 7 및 RHEL 7 호환 운영 체제에 대한 Linux 패키지를 더 이상 게시하지 않습니다. 지속적인 지원을 위해 RHEL 8로 업그레이드하세요.

Scientific Linux 7 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Scientific Linux 7의 장기 서비스 및 지원(LTSS)은 2024년 6월에 종료되었습니다.

따라서 Linux 패키지 설치에 대해 Scientific Linux 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 다른 RHEL 호환 운영 체제로 업그레이드하세요.

GitLab 17.7#

/repository/tree REST API 엔드포인트의 오류 처리가 404를 반환#

  • GitLab 16.5에서 발표
  • GitLab 17.7에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.7에서 요청한 경로를 찾을 수 없을 때 리포지터리 트리 목록 API 엔드포인트 /projects/:id/repository/tree의 오류 처리 동작이 업데이트됩니다. 이제 엔드포인트는 상태 코드 404 Not Found를 반환합니다. 이전에는 상태 코드가 200 OK였습니다.

이 변경 사항은 GitLab 16.5의 GitLab.com에서 활성화되었으며 GitLab 17.7에서 Self-Managed 인스턴스에서 사용할 수 있습니다.

구현이 누락된 경로에 대해 빈 배열과 함께 200 상태 코드를 수신하는 것에 의존하는 경우 새 404 응답을 처리하도록 오류 처리를 업데이트해야 합니다.

TLS 1.0 및 1.1이 더 이상 지원되지 않음#

  • GitLab 17.4에서 발표
  • GitLab 17.7에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OpenSSL 버전 1.1.1의 장기 지원(LTS)이 2023년 9월에 종료되었습니다. 따라서 OpenSSL 3이 GitLab 17.7의 기본값이 됩니다. GitLab은 OpenSSL 3을 번들로 제공하므로 운영 체제를 변경할 필요가 없습니다.

OpenSSL 3으로 업그레이드하면:

  • GitLab은 모든 아웃바운드 및 인바운드 TLS 연결에 TLS 1.2 이상을 요구합니다.
  • TLS/SSL 인증서는 최소 112비트의 보안을 가져야 합니다. 2048비트보다 짧은 RSA, DSA, DH 키와 224비트보다 짧은 ECC 키는 금지됩니다.

자세한 내용은 GitLab 17.5 변경 사항을 참조하세요.

GitLab 17.6#

Debian 10 지원#

  • GitLab 17.3에서 발표
  • GitLab 17.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Debian 10의 장기 서비스 및 지원(LTSS)이 2024년 6월에 종료되었습니다.

따라서 Linux 패키지 설치에 대해 Debian 10 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 Debian 11 또는 Debian 12로 업그레이드하세요.

GitLab 17.4#

파이프라인 뷰에서 Needs 탭 제거#

  • GitLab 17.1에서 발표
  • GitLab 17.4에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Job dependencies 그룹화 옵션이 있는 일반 파이프라인 뷰에 표시되는 정보를 복제하므로 파이프라인 뷰에서 Needs 탭을 제거합니다. 앞으로도 메인 파이프라인 그래프의 뷰를 계속 개선할 예정입니다.

GitLab 17.3#

FIPS 호환 Secure 분석기가 UBI Minimal에서 UBI Micro로 변경#

  • GitLab 17.2에서 발표
  • GitLab 17.3에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

보안 취약점을 위한 코드 스캔에 사용되는 일부 분석기의 기본 이미지를 업데이트하고 있습니다. 이미 Red Hat Universal Base Image (UBI)를 기반으로 하는 분석기 이미지만 변경하므로 보안 스캔에 대해 특별히 FIPS 모드를 활성화한 경우에만 이 변경 사항이 적용됩니다. GitLab 보안 스캔이 사용하는 기본 이미지는 UBI를 기반으로 하지 않으므로 영향을 받지 않습니다.

GitLab 17.3에서는 UBI 기반 분석기의 기본 이미지를 UBI Minimal에서 UBI Micro로 변경합니다. 불필요한 패키지가 적고 패키지 관리자가 포함되지 않습니다. 업데이트된 이미지는 더 작아지고 운영 체제에서 제공하는 패키지의 취약점에 덜 영향을 받습니다.

GitLab 지원팀의 지원 성명서는 분석기 이미지의 특정 내용에 의존하는 것을 포함하여 문서화되지 않은 커스터마이징을 제외합니다. 예를 들어 before_script에 추가 패키지를 설치하는 것은 지원되는 수정 사항이 아닙니다. 그럼에도 불구하고 이러한 유형의 커스터마이징에 의존하는 경우 이 변경 사항에 대한 응답 방법 또는 현재 커스터마이징에 대한 피드백을 제공하는 방법을 알아보려면 이 변경 사항에 대한 지원 중단 이슈를 참조하세요.

GitLab 17.0#

Kubernetes용 에이전트 옵션 ca-cert-file 이름 변경#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Kubernetes용 GitLab 에이전트(agentk)에서 --ca-cert-file 명령줄 옵션과 해당 config.caCert Helm 차트 값이 각각 --kas-ca-cert-fileconfig.kasCaCert로 이름이 변경되었습니다.

기존의 --ca-cert-fileconfig.caCert 옵션은 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

Herokuish에 대한 Auto DevOps 지원이 지원 중단됨#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Herokuish에 대한 Auto DevOps 지원은 Cloud Native Buildpacks을 위해 지원 중단됩니다. Herokuish에서 Cloud Native Buildpacks으로 빌드를 마이그레이션해야 합니다. GitLab 14.0부터 Auto Build는 기본적으로 Cloud Native Buildpacks를 사용합니다.

Cloud Native Buildpacks는 자동 테스트를 지원하지 않으므로 Auto DevOps의 Auto Test 기능도 지원 중단됩니다.

대시(-) 문자가 있는 자동 생성 Markdown 앵커 링크#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 모든 제목에 대한 앵커 링크를 자동으로 생성하므로 Markdown 문서나 위키 페이지의 특정 위치에 링크를 연결할 수 있습니다. 그러나 일부 엣지 케이스에서 자동 생성된 앵커는 많은 사용자가 예상하는 것보다 적은 대시(-) 문자로 생성됩니다. 예를 들어 ## Step - 1이라는 제목에서 대부분의 다른 Markdown 도구와 린터는 #step---1을 예상합니다. 그러나 GitLab은 연속 대시를 하나로 압축하여 #step-1의 앵커를 생성합니다.

GitLab 17.0에서는 연속 대시를 더 이상 제거하지 않음으로써 자동 생성 앵커를 업계 표준에 맞춥니다. 17.0에서 여러 대시가 있을 수 있는 제목에 Markdown 문서가 링크하는 경우 이 엣지 케이스를 피하도록 제목을 업데이트해야 합니다. 위의 예시에서는 ## Step - 1## Step 1로 변경하여 페이지 내 링크가 계속 작동하도록 할 수 있습니다.

CiRunner.projects 기본 정렬이 id_desc로 변경#

  • GitLab 16.0에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

CiRunner.projects 필드의 기본 정렬 순서 값이 id_asc에서 id_desc로 변경됩니다. 반환된 프로젝트 순서가 id_asc인 것에 의존하는 경우 선택을 명시적으로 만들기 위해 스크립트를 변경하세요.

일반 설정의 컴플라이언스 프레임워크#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컴플라이언스 센터의 프레임워크 및 프로젝트 보고서로 컴플라이언스 프레임워크 관리를 이동했습니다.

따라서 GitLab 17.0에서는 그룹 및 프로젝트의 일반 설정 페이지에서 컴플라이언스 프레임워크 관리를 제거합니다.

Swift 및 OSS 스토리지 드라이버에 대한 컨테이너 레지스트리 지원#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리는 스토리지 드라이버를 사용하여 다양한 객체 스토리지 플랫폼과 작동합니다. 각 드라이버의 코드는 상대적으로 독립적이지만, 이러한 드라이버에 대한 유지보수 부담이 큽니다. 각 드라이버 구현은 고유하며 드라이버를 변경하려면 해당 특정 드라이버에 대한 높은 수준의 도메인 전문 지식이 필요합니다.

유지보수 비용을 줄이기 위해 OSS(Object Storage Service)와 OpenStack Swift에 대한 지원을 지원 중단합니다. 두 가지 모두 이미 업스트림 Docker Distribution에서 제거되었습니다. 이는 객체 스토리지 지원과 관련하여 컨테이너 레지스트리를 더 넓은 GitLab 제품 제공과 일치시키는 데 도움이 됩니다.

OSS에는 S3 호환 모드가 있으므로 지원되는 드라이버로 마이그레이션할 수 없는 경우 이를 사용하는 것을 고려하세요. Swift는 S3 스토리지 드라이버에서도 필요한 S3 API 작업과 호환됩니다.

DAST ZAP 고급 구성 변수 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.7에서 새 브라우저 기반 DAST 분석기가 GA로 출시되면서 향후 언젠가 기본 DAST 분석기로 만들기 위한 작업을 진행 중입니다. 이를 위해 다음 레거시 DAST 변수가 지원 중단되어 GitLab 17.0에서 제거될 예정입니다: DAST_ZAP_CLI_OPTIONSDAST_ZAP_LOG_CONFIGURATION. 이러한 변수는 OWASP ZAP을 기반으로 한 레거시 DAST 분석기의 고급 구성을 허용했습니다. 새 브라우저 기반 분석기에는 ZAP 작동 방식에 고유한 동일한 기능이 포함되지 않습니다.

이 세 변수는 GitLab 17.0에서 제거됩니다.

의존성 스캐닝의 잘못된 SBOM 메타데이터 속성#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0은 CycloneDX SBOM 보고서에서 다음 메타데이터 속성 지원을 제거합니다:

  • gitlab:dependency_scanning:input_file
  • gitlab:dependency_scanning:package_manager

이러한 속성은 의존성 스캐닝에 의해 생성된 SBOM에 GitLab 15.7에서 추가되었습니다. 그러나 이러한 속성은 올바르지 않으며 GitLab CycloneDX 속성 분류 체계와 일치하지 않습니다. 이 문제를 해결하기 위해 GitLab 15.11에서 다음 올바른 속성이 추가되었습니다:

  • gitlab:dependency_scanning:input_file:path
  • gitlab:dependency_scanning:package_manager:name

잘못된 속성은 하위 호환성을 위해 유지되었습니다. 이제 지원 중단되었으며 17.0에서 제거됩니다.

sbt 1.0.X에 대한 의존성 스캐닝 지원#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

매우 오래된 버전의 sbt를 지원하면 유지보수 비용을 늘리지 않고 이 패키지 관리자에 대한 추가 사용 사례 지원을 개선하는 것이 어렵습니다.

sbt 버전 1.1.0은 6년 전에 출시되었으며, 의존성 스캐닝이 더 이상 작동하지 않으므로 1.0.x에서 업그레이드하는 것이 좋습니다.

임시 스토리지 증가와 관련된 GraphQL 필드 지원 중단#

  • GitLab 16.7에서 발표
  • GitLab 17.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL 필드 isTemporaryStorageIncreaseEnabledtemporaryStorageIncreaseEndsOn이 지원 중단되었습니다. 이러한 GraphQL 필드는 임시 스토리지 증가 프로젝트와 관련이 있습니다. 프로젝트가 취소되었고 필드가 사용되지 않았습니다.

컨테이너 스캐닝을 위한 Grype 스캐너 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 컨테이너 스캐닝 분석기에서 Grype 스캐너에 대한 지원은 GitLab 16.9에서 지원 중단됩니다.

GitLab 17.0부터 Grype 분석기는 지원 성명서에 설명된 제한적인 수정을 제외하고 더 이상 유지보수되지 않습니다.

Trivy 스캐너를 사용하는 CS_ANALYZER_IMAGE의 기본 설정을 사용하는 것이 좋습니다.

Grype 분석기 이미지의 기존 현재 메이저 버전은 GitLab 19.0까지 최신 권고 데이터베이스와 운영 체제 패키지로 계속 업데이트되며, 이후 분석기가 작동을 멈춥니다.

19.0 이후에도 Grype를 계속 사용하려면 보안 스캐너 통합 문서를 참조하여 GitLab과의 자체 통합을 만드는 방법을 알아보세요.

라이선스 스캐닝 CI 템플릿 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0은 다음 라이선스 스캐닝 CI 템플릿을 제거합니다:

위 템플릿 중 하나를 포함하는 CI 구성은 GitLab 17.0에서 작동을 멈춥니다.

대신 CycloneDX 파일의 라이선스 스캐닝을 사용하는 것이 좋습니다.

의존성 스캐닝 및 라이선스 스캐닝에서 Python 3.9 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.9부터 의존성 스캐닝 및 라이선스 스캐닝의 Python 3.9 지원이 지원 중단됩니다. GitLab 17.0에서 Python 3.10이 의존성 스캐닝 CI/CD 작업의 기본 버전이 됩니다.

GitLab 17.0부터 의존성 스캐닝 및 라이선스 스캐닝 기능은 호환 가능한 잠금 파일 없이 Python 3.9가 필요한 프로젝트를 지원하지 않습니다.

GitLab Runner에서 Windows CMD 지원 중단#

  • GitLab 16.1에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 11.11에서 Windows Batch 실행기인 CMD 쉘이 PowerShell을 위해 GitLab Runner에서 지원 중단되었습니다. 그 이후로 CMD 쉘은 GitLab Runner에서 계속 지원되었습니다. 그러나 이는 엔지니어링 팀과 Windows에서 Runner를 사용하는 고객 모두에게 추가적인 복잡성을 초래했습니다. 17.0에서 GitLab Runner에서 Windows CMD에 대한 지원을 완전히 제거할 계획입니다. 고객은 쉘 실행기와 함께 Windows에서 Runner를 사용할 때 PowerShell을 사용할 계획을 세워야 합니다. 고객은 제거 이슈 이슈 29479에서 피드백을 제공하거나 질문할 수 있습니다.

CiRunnerManager에서 중복된 CiRunner GraphQL 필드 지원 중단#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이러한 필드들(architectureName, ipAddress, platformName, revision, version)은 러너 구성 내에 그룹화된 러너 매니저 도입으로 중복되어 GraphQL CiRunner 유형에서 지원 중단됩니다.

Terraform Module CI/CD 템플릿의 fmt 작업 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Terraform Module CI/CD 템플릿의 fmt 작업은 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 이는 다음 템플릿에 영향을 줍니다:

  • Terraform-Module.gitlab-ci.yml
  • Terraform/Module-Base.gitlab-ci.yml

다음을 사용하여 파이프라인에 Terraform fmt 작업을 수동으로 다시 추가할 수 있습니다:

fmt:
  image: hashicorp/terraform
  script: terraform fmt -chdir "$TF_ROOT" -check -diff -recursive

OpenTofu CI/CD 컴포넌트fmt 템플릿을 사용할 수도 있습니다.

Vulnerability Management 기능에서 message 필드 지원 중단#

  • GitLab 16.1에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이 MR은 VulnerabilityCreate GraphQL 뮤테이션에서 message 필드와 취약점 내보내기의 AdditionalInfo 열을 지원 중단합니다. message 필드는 GitLab 16.0의 보안 보고서 스키마에서 제거되었으며 다른 곳에서 더 이상 사용되지 않습니다.

GitLab Runner Kubernetes 실행기에서 terminationGracePeriodSeconds 지원 중단#

  • GitLab 16.3에서 발표
  • GitLab 17.0에서 지원 종료
  • GitLab 17.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Runner Kubernetes 실행기 설정인 terminationGracePeriodSeconds는 지원 중단되었으며 GitLab 17.0에서 제거됩니다. Kubernetes에서 GitLab Runner 워커 Pod의 정리 및 종료를 관리하려면 대신 cleanupGracePeriodSecondspodTerminationGracePeriodSeconds를 구성해야 합니다. cleanupGracePeriodSecondspodTerminationGracePeriodSeconds 사용 방법에 대한 자세한 내용은 GitLab Runner 실행기 문서를 참조하세요.

피처 플래그 API의 version 필드 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

피처 플래그 REST APIversion 필드는 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

version 필드가 제거된 후에는 레거시 피처 플래그를 생성할 방법이 없어집니다.

Developer 역할에서 취약점 상태 변경 지원 중단#

  • GitLab 16.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Developer가 취약점 상태를 변경하는 기능이 지원 중단됩니다. 다가오는 GitLab 17.0 릴리스에서 Developer 역할에서 이 기능을 제거하는 호환성 변경을 계획하고 있습니다. 개발자에게 이 권한을 계속 부여하려는 사용자는 개발자를 위한 커스텀 역할을 생성하고 admin_vulnerability 권한을 추가하여 해당 액세스를 부여할 수 있습니다.

GitLab Self-Managed에서 그룹 Owner의 커스텀 역할 생성 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Self-Managed 17.0에서는 그룹 Owner에 대한 커스텀 역할 생성이 제거됩니다. 이 기능은 관리자 전용 인스턴스 수준으로 이동합니다. 그룹 Owner는 그룹 수준에서 커스텀 역할을 할당할 수 있습니다.

GitLab.com의 그룹 Owner는 계속해서 커스텀 역할을 관리하고 그룹 수준에서 할당할 수 있습니다.

GitLab Self-Managed에서 API를 사용하여 커스텀 역할을 관리하는 경우 새 인스턴스 엔드포인트가 추가되었으며 API 작업을 계속하려면 이를 사용해야 합니다.

  • 인스턴스의 모든 멤버 역할 나열 - GET /api/v4/member_roles
  • 인스턴스에 멤버 역할 추가 - POST /api/v4/member_roles
  • 인스턴스에서 멤버 역할 제거 - DELETE /api/v4/member_roles/:id

GraphQL VulnerabilityType에서 hasSolutions 필드 지원 중단#

  • GitLab 16.3에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL 필드 Vulnerability.hasSolutions는 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 대신 Vulnerability.hasRemediations를 사용하세요.

러너 쉘 실행기에서 레거시 쉘 이스케이핑 및 인용 지원 중단#

  • GitLab 15.11에서 발표
  • GitLab 17.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

변수 확장을 처리하기 위한 러너의 레거시 이스케이프 시퀀스 메커니즘은 Ansi-C 인용의 최적화되지 않은 구현을 사용합니다. 이 방법은 러너가 큰따옴표에 포함된 인수를 확장한다는 것을 의미합니다. 15.11부터 러너 쉘 실행기의 레거시 이스케이핑 및 인용 방법을 지원 중단합니다.

로그인 페이지의 커스텀 텍스트와 관련된 지원 중단 매개변수#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

sign_in_texthelp_text 매개변수는 Settings API에서 지원 중단됩니다. 로그인 및 회원가입 페이지에 커스텀 텍스트를 추가하려면 Appearance APIdescription 필드를 사용하세요.

Windows Server 2022를 위해 Windows Server 2019 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

최근 GitLab.com 러너의 Windows Server 2022(베타) 출시를 발표했습니다. 이와 함께 GitLab 17.0에서 Windows 2019를 지원 중단합니다.

Windows 2022로 마이그레이션하는 방법에 대한 자세한 내용은 GitLab.com 러너에 대한 Windows 2022 지원 이제 사용 가능을 참조하세요.

DingTalk OmniAuth 제공자#

  • GitLab 15.10에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab에 DingTalk OmniAuth 제공자를 제공하는 omniauth-dingtalk gem은 다음 메이저 릴리스인 GitLab 17.0에서 제거됩니다. 이 gem은 사용량이 매우 적으며 JiHu 에디션에 더 적합합니다.

Gitaly 구성의 중복 스토리지#

  • GitLab 16.10에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

동일한 스토리지 경로를 가리키는 여러 Gitaly 스토리지를 구성하는 지원은 지원 중단되었으며 GitLab 17.0에서 제거됩니다. GitLab 17.0 이상에서는 이 유형의 구성이 오류를 발생시킵니다.

이 유형의 구성은 백그라운드 리포지터리 유지보수에 문제를 일으킬 수 있고 향후 Gitaly 스토리지 구현과 호환되지 않으므로 지원을 제거합니다.

인스턴스 관리자는 각 스토리지가 고유한 경로로 구성되도록 gitlab.rb 구성 파일의 gitaly['configuration'] 섹션에 있는 storage 항목을 업데이트해야 합니다.

다운스트림 파이프라인에서 파일 유형 변수 확장 수정#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에는 다른 CI/CD 변수에서 파일 유형 CI/CD 변수를 참조하려고 하면 CI/CD 변수가 파일 내용을 포함하도록 확장되었습니다. 이 동작은 일반적인 쉘 변수 확장 규칙을 따르지 않아 올바르지 않았습니다. CI/CD 변수 참조는 파일 내용이 아닌 파일 경로만 포함하도록 확장되어야 합니다. 이것은 GitLab 15.7에서 대부분의 사용 사례에 대해 수정되었습니다. 안타깝게도 다운스트림 파이프라인에 CI/CD 변수를 전달하는 것은 아직 수정되지 않은 엣지 케이스였지만 GitLab 17.0에서 수정될 예정입니다.

이 변경으로 .gitlab-ci.yml 파일에 구성된 변수가 파일 변수를 참조하고 다운스트림 파이프라인으로 전달될 수 있으며, 파일 변수도 다운스트림 파이프라인으로 전달됩니다. 다운스트림 파이프라인은 파일 내용이 아닌 파일 경로로 변수 참조를 확장합니다.

이 호환성 변경은 다운스트림 파이프라인에서 파일 변수 확장에 의존하는 사용자 워크플로를 중단시킬 수 있습니다.

Geo: 디자인 및 프로젝트에 대한 레거시 복제 세부 정보 라우트 지원 중단#

  • GitLab 16.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

레거시 데이터 유형을 Geo 셀프 서비스 프레임워크로 마이그레이션하는 일환으로 다음 복제 세부 정보 라우트가 지원 중단됩니다:

  • 디자인 /admin/geo/replication/designs/admin/geo/sites//replication/design_management_repositories로 대체
  • 프로젝트 /admin/geo/replication/projects/admin/geo/sites//replication/projects로 대체

GitLab 16.4부터 17.0까지 레거시 라우트에 대한 조회는 자동으로 새 라우트로 리디렉션됩니다. 17.0에서 리디렉션을 제거합니다. 레거시 라우트를 사용할 수 있는 북마크나 스크립트를 업데이트하세요.

GitLab Helm 차트 값 gitlab.kas.privateApi.tls.*가 지원 중단됨#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

KAS와 Helm 차트 컴포넌트 간의 TLS 통신을 용이하게 하기 위해 global.kas.tls.* Helm 값을 도입했습니다. 이전 값인 gitlab.kas.privateApi.tls.enabledgitlab.kas.privateApi.tls.secretName은 지원 중단되었으며 GitLab 17.0에서 제거될 예정입니다.

새 값이 KAS에 대해 TLS를 활성화하는 간소화된 포괄적인 방법을 제공하므로 gitlab.kas.privateApi.tls.* 대신 global.kas.tls.*를 사용해야 합니다. 자세한 내용은 다음을 참조하세요:

GitLab Runner 출처 메타데이터 SLSA v0.2 성명서#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

러너는 출처 메타데이터를 생성하며 현재 기본적으로 SLSA v0.2를 준수하는 성명서를 생성합니다. SLSA v1.0이 출시되었고 GitLab에서 지원되므로 v0.2 성명서는 지원 중단되었으며 GitLab 17.0에서 제거가 계획되었습니다. SLSA v1.0 성명서는 GitLab 17.0에서 새 기본 성명서 형식이 될 계획입니다.

지원되지 않는 방법을 통한 GraphQL API 액세스#

  • GitLab 17.0에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0부터 GraphQL에 대한 액세스를 이미 문서화된 지원되는 토큰 유형을 통해서만 제한합니다.

이미 문서화되고 지원되는 토큰 유형을 사용하는 고객의 경우 호환성 변경이 없습니다.

GraphQL networkPolicies 리소스 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

networkPolicies GraphQL 리소스는 지원 중단되었으며 GitLab 17.0에서 제거됩니다. GitLab 15.0 이후로 이 필드는 데이터를 반환하지 않았습니다.

노트의 GraphQL 필드 confidentialinternal로 변경#

  • GitLab 15.5에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Noteconfidential 필드는 지원 중단되고 internal로 이름이 변경됩니다.

GraphQL 필드 registrySizeEstimated가 지원 중단됨#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

명확성을 위해 GraphQL 필드 registrySizeEstimated는 대응 항목과 일치하도록 containerRegistrySizeIsEstimated로 이름이 변경되었습니다. registrySizeEstimated는 GitLab 16.2에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 대신 GitLab 16.2에서 도입된 containerRegistrySizeIsEstimated를 사용하세요.

GraphQL 필드 totalWeight가 지원 중단됨#

  • GitLab 16.3에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL을 사용하여 이슈 보드의 이슈 총 가중치를 쿼리할 수 있습니다. 그러나 totalWeight 필드는 최대 크기인 2147483647로 제한됩니다. 따라서 totalWeight는 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

대신 GitLab 16.2에서 도입된 totalIssueWeight를 사용하세요.

GraphQL 유형 RunnerMembershipFilterCiRunnerMembershipFilter로 이름 변경#

  • GitLab 16.0에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL 유형 RunnerMembershipFilterCiRunnerMembershipFilter로 이름이 변경되었습니다. GitLab 17.0에서 RunnerMembershipFilter 유형에 대한 별칭이 제거됩니다.

GraphQL: SharedRunnersSetting 열거형의 DISABLED_WITH_OVERRIDE 값이 지원 중단됨#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0에서 SharedRunnersSetting GraphQL 열거형 유형의 DISABLED_WITH_OVERRIDE 값이 제거됩니다. 대신 DISABLED_AND_OVERRIDABLE을 사용하세요.

GraphQL: canDestroycanDelete에 대한 지원 중단#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

패키지 레지스트리 사용자 인터페이스는 GitLab GraphQL API에 의존합니다. 모든 사람이 쉽게 기여할 수 있도록 프론트엔드가 모든 GitLab 제품 영역에서 일관되게 코딩되는 것이 중요합니다. 그러나 GitLab 16.6 이전에는 패키지 레지스트리 UI가 제품의 다른 영역과 다르게 권한을 처리했습니다.

16.6에서 패키지 레지스트리를 GitLab의 나머지 부분과 일치시키기 위해 Types::PermissionTypes::Package 유형 아래에 새 UserPermissions 필드를 추가했습니다. 이 새 필드는 Package, PackageBase, PackageDetailsType 유형 아래의 canDestroy 필드를 대체합니다. 또한 ContainerRepository, ContainerRepositoryDetails, ContainerRepositoryTagcanDelete 필드를 대체합니다. GitLab 17.0에서 canDestroycanDelete 필드가 제거됩니다.

이는 17.0에서 완료될 호환성 변경입니다.

HashiCorp Vault 연동이 기본적으로 CI_JOB_JWT CI/CD 작업 토큰을 더 이상 사용하지 않음#

  • GitLab 15.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

JWT 및 OIDC를 사용하여 CI 워크플로의 보안을 개선하는 노력의 일환으로 네이티브 HashiCorp 연동도 GitLab 16.0에서 업데이트되고 있습니다. Vault에서 시크릿을 검색하기 위해 secrets:vault 키워드를 사용하는 모든 프로젝트는 ID 토큰을 사용하도록 구성해야 합니다. ID 토큰은 15.7에서 도입되었습니다.

이 변경에 대비하려면 새 id_tokens 키워드를 사용하고 aud 클레임을 구성하세요. 바인드된 대상이 https://로 시작하는지 확인하세요.

GitLab 15.9부터 15.11에서는 JSON Web Token (JWT) 액세스 제한 활성화 설정을 활성화할 수 있습니다. 이 설정은 이전 토큰이 모든 작업에 노출되지 않도록 방지하고 secrets:vault 키워드에 대한 ID 토큰 인증을 활성화합니다.

GitLab 16.0 이상에서:

  • 이 설정이 제거됩니다.
  • id_tokens 키워드를 사용하는 CI/CD 작업은 secrets:vault와 함께 ID 토큰을 사용할 수 있으며, CI_JOB_JWT* 토큰을 사용할 수 없습니다.
  • id_tokens 키워드를 사용하지 않는 작업은 GitLab 17.0까지 CI_JOB_JWT* 토큰을 계속 사용할 수 있습니다.

Auto DevOps 빌드에서 Heroku 이미지 업그레이드#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0에서 auto-build-image 프로젝트가 heroku/builder:20 이미지에서 heroku/builder:22로 업그레이드됩니다.

새 이미지의 동작을 테스트하려면 CI/CD 변수 AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDERheroku/builder:22로 설정하세요.

GitLab 17.0 이후에도 heroku/builder:20을 계속 사용하려면 AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDERheroku/builder:20으로 설정하세요.

내부 컨테이너 레지스트리 API 태그 삭제 엔드포인트#

  • GitLab 16.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OCI Distribution Spec으로 나중에 대체된 Docker Registry HTTP API V2 Spec은 태그 삭제 작업을 포함하지 않았으며, 같은 목적을 달성하기 위해 안전하지 않고 느린 방법(태그가 아닌 매니페스트 삭제 포함)을 사용해야 했습니다.

태그 삭제는 중요한 기능이므로 Docker 및 OCI 배포 스펙의 범위를 넘어 V2 API를 확장하여 GitLab 컨테이너 레지스트리에 태그 삭제 작업을 추가했습니다.

그 이후로 OCI Distribution Spec이 일부 업데이트되었으며 이제 DELETE /v2/<name>/manifests/<tag> 엔드포인트를 사용하는 태그 삭제 작업이 있습니다.

이로 인해 컨테이너 레지스트리에는 완전히 동일한 기능을 제공하는 두 개의 엔드포인트가 남게 됩니다. DELETE /v2/<name>/tags/reference/<tag>는 커스텀 GitLab 태그 삭제 엔드포인트이고 DELETE /v2/<name>/manifests/<tag>는 GitLab 16.4에서 도입된 OCI 호환 태그 삭제 엔드포인트입니다.

커스텀 GitLab 태그 삭제 엔드포인트에 대한 지원은 GitLab 16.4에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

이 엔드포인트는 공개 GitLab 컨테이너 레지스트리 API가 아닌 내부 컨테이너 레지스트리 애플리케이션 API에서 사용됩니다. 대부분의 컨테이너 레지스트리 사용자는 조치가 필요하지 않습니다. 태그 삭제와 관련된 모든 GitLab UI 및 API 기능은 새 OCI 호환 엔드포인트로 전환하는 동안 그대로 유지됩니다.

내부 컨테이너 레지스트리 API에 액세스하고 원래 태그 삭제 엔드포인트를 사용하는 경우 새 엔드포인트로 업데이트해야 합니다.

JWT /-/jwks 인스턴스 엔드포인트가 지원 중단됨#

  • GitLab 16.7에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0에서 이전 JSON 웹 토큰 버전의 지원 중단으로 인해 /oauth/discovery/keys의 별칭인 관련 /-/jwks 엔드포인트가 더 이상 필요하지 않으며 제거됩니다. auth 구성에서 jwks_url을 지정하고 있다면 구성을 oauth/discovery/keys로 업데이트하고 엔드포인트에서 /-/jwks의 모든 사용을 제거하세요. auth 구성에서 이미 oauth_discovery_keys를 사용하고 엔드포인트에서 /-/jwks 별칭을 사용하는 경우 엔드포인트에서 /-/jwks를 제거하세요. 예를 들어 https://gitlab.example.com/-/jwkshttps://gitlab.example.com으로 변경하세요.

레거시 Geo Prometheus 메트릭#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

프로젝트를 Geo 셀프 서비스 프레임워크로 마이그레이션한 후 여러 Prometheus 메트릭을 지원 중단했습니다. 다음 Geo 관련 Prometheus 메트릭은 지원 중단되었으며 17.0에서 제거됩니다. 아래 표는 지원 중단된 메트릭과 각 대체 메트릭을 나열합니다. 대체 메트릭은 GitLab 16.3.0 이상에서 사용할 수 있습니다.

지원 중단된 메트릭 대체 메트릭
geo_repositories_synced geo_project_repositories_synced
geo_repositories_failed geo_project_repositories_failed
geo_repositories_checksummed geo_project_repositories_checksummed
geo_repositories_checksum_failed geo_project_repositories_checksum_failed
geo_repositories_verified geo_project_repositories_verified
geo_repositories_verification_failed geo_project_repositories_verification_failed
geo_repositories_checksum_mismatch 사용 가능한 대체 없음
geo_repositories_retrying_verification 사용 가능한 대체 없음

License 목록이 지원 중단됨#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

오늘날 GitLab에서는 라이선스 목록에서 프로젝트의 모든 라이선스와 해당 라이선스를 사용하는 컴포넌트 목록을 볼 수 있습니다. 16.8부터 라이선스 목록이 지원 중단되었으며 호환성 변경으로 17.0에서 제거될 예정입니다. 이제 라이선스별로 필터링하는 기능을 포함하여 의존성 목록에서 프로젝트 또는 그룹이 사용하는 모든 라이선스에 액세스할 수 있습니다.

sbt 1.0.X에 대한 라이선스 스캐닝 지원#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0은 sbt 1.0.x에 대한 라이선스 스캐닝 지원을 제거합니다.

sbt 1.0.x에서 업그레이드하는 것이 좋습니다.

Ubuntu 18.04용 Linux 패키지#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Ubuntu 18.04에 대한 표준 지원이 2023년 6월에 종료되었습니다.

GitLab 17.0부터 Ubuntu 18.04에 대한 Linux 패키지를 제공하지 않습니다.

GitLab 17.0 이상에 대비하려면:

  1. GitLab 인스턴스를 실행하는 서버를 Ubuntu 18.04에서 Ubuntu 20.04 또는 Ubuntu 22.04로 이동하세요.
  2. 현재 사용 중인 Ubuntu 버전에 대한 Linux 패키지를 사용하여 GitLab 인스턴스를 업그레이드하세요.

리포지터리 디렉터리 나열 Rake 작업#

  • GitLab 16.7에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

gitlab-rake gitlab:list_repos Rake 작업은 작동하지 않으며 GitLab 17.0에서 제거됩니다. GitLab을 마이그레이션하는 경우 대신 백업 및 복원을 사용하세요.

Maintainer 역할이 GraphQL API를 사용하여 패키지 설정을 변경하는 기능 제공#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Maintainer 역할을 가진 사용자가 GraphQL API를 사용하여 그룹의 패키지 및 레지스트리 설정을 변경하는 기능은 GitLab 15.8에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 이러한 설정에는 다음이 포함됩니다:

GitLab 17.0 이상에서는 GitLab UI 또는 GraphQL API를 사용하여 그룹의 패키지 및 레지스트리 설정을 변경하려면 그룹에 대한 Owner 역할이 있어야 합니다.

의존성 스캐닝 및 라이선스 스캐닝에서 Maven 3.8.8 미만 버전 지원#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0은 3.8.8 미만의 Maven 버전에 대한 의존성 스캐닝 및 라이선스 스캐닝 지원을 중단합니다.

3.8.8 이상으로 업그레이드하는 것이 좋습니다.

Sidekiq 옵션의 최소 동시성 및 최대 동시성#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지(Omnibus) 설치의 경우 sidekiq['min_concurrency']sidekiq['max_concurrency'] 설정은 GitLab 16.9에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

GitLab 16.9 이상에서 sidekiq['concurrency']를 사용하여 각 프로세스의 스레드 수를 명시적으로 설정할 수 있습니다.

위의 변경 사항은 Linux 패키지(Omnibus) 설치에만 적용됩니다.

GitLab Helm 차트 설치의 경우 SIDEKIQ_CONCURRENCY_MIN 및/또는 SIDEKIQ_CONCURRENCY_MAXsidekiq 서브 차트의 extraEnv로 전달하는 것은 GitLab 16.10에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

concurrency 옵션을 사용하여 각 프로세스의 스레드 수를 명시적으로 설정할 수 있습니다.

/users REST API 엔드포인트의 오프셋 페이지네이션이 지원 중단됨#

  • GitLab 16.5에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

/users REST API의 오프셋 페이지네이션은 GitLab 16.5에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 대신 키셋 페이지네이션을 사용하세요.

JSON 웹 토큰의 이전 버전이 지원 중단됨#

  • GitLab 15.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OIDC 지원이 있는 ID 토큰은 GitLab 15.7에서 도입되었습니다. 이러한 토큰은 이전 JSON 웹 토큰(JWT)보다 더 구성 가능하고 OIDC를 준수하며 ID 토큰이 명시적으로 구성된 CI/CD 작업에서만 사용할 수 있습니다. ID 토큰은 모든 작업에 노출되는 이전 CI_JOB_JWT* JSON 웹 토큰보다 더 안전하므로 이러한 이전 JSON 웹 토큰은 지원 중단됩니다:

  • CI_JOB_JWT
  • CI_JOB_JWT_V1
  • CI_JOB_JWT_V2

이 변경에 대비하려면 지원 중단된 토큰 대신 ID 토큰을 사용하도록 파이프라인을 구성하세요. OIDC 준수를 위해 iss 클레임은 이제 CI_JOB_JWT_V2 토큰과 함께 이전에 도입된 완전한 도메인 이름(예: https://example.com)을 사용합니다.

GitLab 15.9부터 15.11에서는 JSON Web Token (JWT) 액세스 제한 활성화 설정을 활성화할 수 있습니다. 이 설정은 이전 토큰이 모든 작업에 노출되지 않도록 방지하고 secrets:vault 키워드에 대한 ID 토큰 인증을 활성화합니다.

GitLab 16.0 이상에서:

  • 이 설정이 제거됩니다.
  • id_tokens 키워드를 사용하는 CI/CD 작업은 secrets:vault와 함께 ID 토큰을 사용할 수 있으며, CI_JOB_JWT* 토큰을 사용할 수 없습니다.
  • id_tokens 키워드를 사용하지 않는 작업은 GitLab 17.0까지 CI_JOB_JWT* 토큰을 계속 사용할 수 있습니다.

GitLab 17.0에서 지원 중단된 토큰은 완전히 제거되며 CI/CD 작업에서 더 이상 사용할 수 없습니다.

OmniAuth Facebook이 지원 중단됨#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OmniAuth Facebook 지원은 GitLab 17.0에서 제거됩니다. 마지막 gem 릴리스는 2021년이었으며 현재 유지보수가 중단되었습니다. 현재 사용량은 0.1% 미만입니다. OmniAuth Facebook을 사용하는 경우 지원 제거 전에 지원되는 제공자로 전환하세요.

API 페이로드의 패키지 파이프라인이 페이지네이션됨#

  • GitLab 14.5에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

/api/v4/projects/:id/packages에 대한 API 요청은 패키지의 페이지네이션된 결과를 반환합니다. 각 패키지는 이 응답에서 모든 파이프라인을 나열합니다. 패키지에 수백 또는 수천 개의 관련 파이프라인이 있을 수 있으므로 성능 문제가 있습니다.

마일스톤 17.0에서 API 응답에서 pipelines 속성을 제거합니다.

PostgreSQL 13이 더 이상 지원되지 않음#

  • GitLab 16.0에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 PostgreSQL에 대한 연간 업그레이드 주기를 따릅니다.

PostgreSQL 13에 대한 지원은 GitLab 17.0에서 제거될 예정입니다. GitLab 17.0에서 PostgreSQL 14가 최소 필요 PostgreSQL 버전이 됩니다.

PostgreSQL 13은 전체 GitLab 16 릴리스 주기 동안 지원됩니다. PostgreSQL 14는 GitLab 17.0 이전에 업그레이드하려는 인스턴스도 지원됩니다. Omnibus Linux 패키지를 사용하여 설치한 단일 PostgreSQL 인스턴스를 실행하는 경우 16.11로 자동 업그레이드가 시도될 수 있습니다. 업그레이드를 수용할 충분한 디스크 공간이 있는지 확인하세요. 자세한 내용은 Omnibus 데이터베이스 문서를 참조하세요.

프록시 기반 DAST 지원 중단#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0부터 프록시 기반 DAST는 지원되지 않습니다. 동적 분석을 통해 프로젝트의 보안 취약점을 계속 분석하려면 브라우저 기반 DAST로 마이그레이션하세요. 프록시 기반 DAST를 기반으로 구축된 인큐베이팅 기능인 Breach and Attack Simulation도 이 지원 중단에 포함되어 17.0 이후에는 지원되지 않습니다.

Sidekiq 실행을 위한 큐 선택기가 지원 중단됨#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 지원 종료
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

큐 선택기(큐 세트를 수신하는 여러 프로세스 포함)와 부정 설정으로 Sidekiq를 실행하는 것은 지원 중단되었으며 17.0에서 완전히 제거됩니다.

큐 선택기에서 모든 프로세스의 모든 큐 수신으로 마이그레이션할 수 있습니다. 예를 들어 Sidekiq가 현재 큐 선택기(sidekiq['queue_selector'] = true)와 함께 4개의 프로세스(/ etc/gitlab/gitlab.rb의 sidekiq['queue_groups']에 4개의 요소로 표시)로 실행 중인 경우 4개의 모든 프로세스에서 모든 큐를 수신하도록 Sidekiq를 변경할 수 있습니다(예: sidekiq['queue_groups'] = ['*'] * 4). 이 접근 방식은 참조 아키텍처에서도 권장됩니다. Sidekiq는 머신의 CPU 수만큼 프로세스를 효과적으로 실행할 수 있습니다.

위의 접근 방식이 대부분의 인스턴스에 권장되지만 GitLab.com에서도 사용되는 라우팅 규칙을 사용하여 Sidekiq를 실행할 수도 있습니다. 큐 선택기에서 라우팅 규칙으로의 마이그레이션 가이드를 따를 수 있습니다. 작업을 완전히 잃지 않도록 마이그레이션에 주의해야 합니다.

Linux에서 소형 GitLab.com 러너의 태그 제거#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

역사적인 이유로 소형 Linux GitLab.com 러너에는 레이블로 사용되어 많은 태그가 첨부되어 있었습니다. saas-linux-small-amd64만 사용하고 모든 GitLab.com 러너에서 일관성을 유지하도록 태그를 간소화하려 합니다.

다음 태그를 지원 중단합니다: docker, east-c, gce, git-annex, linux, mongo, mysql, postgres, ruby, shared.

자세한 내용은 Linux에서 소형 SaaS 러너의 태그 제거를 참조하세요.

필수 파이프라인 구성이 지원 중단됨#

  • GitLab 15.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

필수 파이프라인 구성은 GitLab 17.0에서 제거됩니다. 이는 Ultimate 티어의 GitLab Self-Managed 사용자에게 영향을 줍니다.

필수 파이프라인 구성을 다음 중 하나로 대체해야 합니다:

이러한 대안을 권장하는 이유는 필수 파이프라인을 특정 컴플라이언스 프레임워크 레이블에 할당할 수 있도록 더 큰 유연성을 제공하기 때문입니다.

컴플라이언스 파이프라인은 향후 지원 중단되어 보안 정책으로 마이그레이션됩니다. 자세한 내용은 마이그레이션 및 지원 중단 에픽을 참조하세요.

GitLab 17.0에서 SAST 분석기 커버리지 변경#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST에서 기본적으로 사용되는 지원 분석기 수를 줄이고 있습니다. 이는 다양한 프로그래밍 언어에서 더 빠르고 일관된 사용자 경험을 제공하기 위한 장기 전략의 일부입니다.

GitLab 17.0에서는:

  1. SAST CI/CD 템플릿에서 일련의 언어별 분석기를 제거하고 Semgrep 기반 분석기GitLab 지원 감지 규칙으로 커버리지를 대체합니다. 다음 분석기는 이제 지원 중단되었으며 GitLab 17.0에서 지원 종료에 도달합니다:
    1. Brakeman (Ruby, Ruby on Rails)
    2. Flawfinder (C, C++)
    3. MobSF (Android, iOS)
    4. NodeJS Scan (Node.js)
    5. PHPCS Security Audit (PHP)
  2. Kotlin 및 Scala 코드에 대해 SpotBugs 기반 분석기 실행을 중단하도록 SAST CI/CD 템플릿을 변경합니다. 이러한 언어는 대신 Semgrep 기반 분석기GitLab 지원 감지 규칙을 사용하여 스캔됩니다.

즉시 적용되어 지원 중단된 분석기는 보안 업데이트만 받습니다. 다른 일상적인 개선이나 업데이트는 보장되지 않습니다. GitLab 17.0에서 분석기가 지원 종료에 도달한 후에는 더 이상 업데이트가 제공되지 않습니다. 그러나 이러한 분석기에 대해 이전에 게시된 컨테이너 이미지를 삭제하거나 커스텀 CI/CD 파이프라인 작업 정의를 사용하여 실행하는 기능을 제거하지는 않습니다.

취약점 관리 시스템은 대부분의 기존 발견 사항이 새 감지 규칙과 일치하도록 업데이트합니다. 새 분석기로 마이그레이션되지 않은 발견 사항은 자동으로 해결됩니다. 자세한 내용은 취약점 번역 문서를 참조하세요.

제거된 분석기에 커스터마이징을 적용했거나 파이프라인에서 Semgrep 기반 분석기를 현재 비활성화하고 있다면 이 변경 사항에 대한 지원 중단 이슈에 자세히 설명된 대로 조치를 취해야 합니다.

_EXCLUDED_ANALYZERS 변수를 사용하는 스캔 실행 정책이 프로젝트 변수를 재정의#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

최고 우선순위로 SEP 변수 적용을 제공하고 검증한 후 의도하지 않은 동작을 발견했습니다. 사용자가 파이프라인 구성에서 _EXCLUDED_PATHS를 설정하도록 허용하고 정책 및 파이프라인 구성 모두에서 _EXCLUDED_ANALYZERS를 설정하지 못하도록 합니다.

스캔 실행 변수의 올바른 적용을 보장하기 위해 GitLab 스캔 작업을 사용하는 스캔 실행 정책에 _EXCLUDED_ANALYZERS 또는 _EXCLUDED_PATHS 변수가 지정된 경우 이제 변수가 제외된 분석기에 대해 정의된 프로젝트 변수를 재정의합니다.

사용자는 17.0 이전에 이 동작을 적용하기 위해 피처 플래그를 활성화할 수 있습니다. 17.0에서는 변수가 정의된 스캔 실행 정책이 있는 _EXCLUDED_ANALYZERS/_EXCLUDED_PATHS 변수를 활용하는 프로젝트가 기본적으로 재정의됩니다.

Secure 분석기 메이저 버전 업데이트#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Secure 단계는 GitLab 17.0 릴리스와 함께 분석기의 메이저 버전을 올릴 예정입니다.

기본 포함 템플릿을 사용하지 않거나 분석기 버전을 고정한 경우 고정된 버전을 제거하거나 최신 메이저 버전으로 업데이트하도록 CI/CD 작업 정의를 업데이트해야 합니다.

GitLab 16.0-16.11 사용자는 GitLab 17.0이 출시될 때까지 정상적으로 분석기 업데이트를 경험하며, 이후 새로 수정된 버그와 출시된 기능은 분석기의 새 메이저 버전에서만 출시됩니다.

유지보수 정책에 따라 지원 중단된 버전에 버그와 기능을 백포트하지 않습니다. 필요한 경우 보안 패치가 최신 3개 마이너 릴리스 내에서 백포트됩니다.

구체적으로 다음 분석기가 지원 중단되었으며 GitLab 17.0 릴리스 이후에는 더 이상 업데이트되지 않습니다:

  • 컨테이너 스캐닝: 버전 6
  • 의존성 스캐닝: 버전 4
  • DAST: 버전 4
  • DAST API: 버전 3
  • Fuzz API: 버전 3
  • IaC 스캐닝: 버전 4
  • 시크릿 감지: 버전 5
  • 정적 애플리케이션 보안 테스팅(SAST): 모든 분석기의 버전 4
    • brakeman
    • flawfinder
    • kubesec
    • mobsf
    • nodejs-scan
    • phpcs-security-audit
    • pmd-apex
    • semgrep
    • sobelow
    • spotbugs

보안 정책 필드 match_on_inclusion이 지원 중단됨#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

스캔 결과 정책에 대한 추가 필터 지원에서 newly_detected 필드를 두 가지 옵션(new_needs_triagenew_dismissed)으로 분리했습니다. 보안 정책 YAML에 두 옵션을 모두 포함하면 원래 newly_detected 필드와 동일한 결과를 얻을 수 있습니다. 그러나 이제 new_needs_triage만 사용하여 해제된 발견 사항을 무시하도록 필터를 좁힐 수 있습니다. 에픽 10203의 논의를 바탕으로 YAML 정의에서 더 명확성을 위해 match_on_inclusion 필드 이름을 match_on_inclusion_license로 변경했습니다.

보안 정책 필드 newly_detected가 지원 중단됨#

  • GitLab 16.5에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

스캔 결과 정책에 대한 추가 필터 지원에서 newly_detected 필드를 두 가지 옵션(new_needs_triagenew_dismissed)으로 분리했습니다. 보안 정책 YAML에 두 옵션을 모두 포함하면 원래 newly_detected 필드와 동일한 결과를 얻을 수 있습니다. 그러나 이제 new_needs_triage만 사용하여 해제된 발견 사항을 무시하도록 필터를 좁힐 수 있습니다.

셀프 호스팅 Sentry 버전 21.4.1 이하 지원#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

셀프 호스팅 Sentry 버전 21.4.1 이하에 대한 지원은 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

셀프 호스팅 Sentry 버전이 21.4.1 이하인 경우 GitLab 17.0 이상으로 업그레이드한 후 GitLab 인스턴스에서 오류를 수집하지 못할 수 있습니다. GitLab 인스턴스에서 Sentry 인스턴스로 오류를 계속 보내려면 Sentry를 버전 21.5.0 이상으로 업그레이드하세요. 자세한 내용은 Sentry 문서를 참조하세요.

Note

지원 중단된 지원은 관리자를 위한 GitLab 인스턴스 오류 추적 기능에 관한 것입니다. 지원 중단된 지원은 개발자의 자체 배포 애플리케이션을 위한 GitLab 오류 추적과 관련이 없습니다.

백업에 대한 커스텀 스키마 설정 지원이 지원 중단됨#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지 설치의 경우 /etc/gitlab/gitlab.rb에서 gitlab_rails['backup_pg_schema'] = '<schema_name>'을 설정하거나, 셀프 컴파일 설치의 경우 config/gitlab.yml을 편집하여 백업에 커스텀 스키마를 사용하도록 GitLab을 구성할 수 있었습니다.

구성 설정은 사용 가능했지만 효과가 없었으며 의도한 목적을 제공하지 않았습니다. 이 구성 설정은 GitLab 17.0에서 제거됩니다.

GitHub 가져오기 Rake 작업#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.6에서 GitHub 가져오기 Rake 작업이 지원 중단되었습니다. Rake 작업에는 API에서 지원하는 여러 기능이 없으며 적극적으로 유지보수되지 않습니다.

GitLab 17.0에서 Rake 작업이 제거됩니다.

대신 GitHub 리포지터리는 API 또는 UI를 사용하여 가져올 수 있습니다.

Visual Reviews 도구가 지원 중단됨#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

제한된 고객 사용량과 기능으로 인해 Review Apps의 Visual Reviews 기능은 지원 중단되어 제거됩니다. 계획된 대체 기능이 없으며 사용자는 GitLab 17.0 이전에 Visual Reviews 사용을 중단해야 합니다.

gitlab-runner exec 명령이 지원 중단됨#

  • GitLab 15.7에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

gitlab-runner exec 명령은 지원 중단되었으며 16.0의 GitLab Runner에서 완전히 제거됩니다. gitlab-runner exec 기능은 처음에 GitLab 인스턴스에 업데이트를 커밋하지 않고도 로컬 시스템에서 GitLab CI 파이프라인을 검증하는 기능을 제공하기 위해 개발되었습니다. 그러나 GitLab CI의 지속적인 발전으로 인해 모든 GitLab CI 기능을 gitlab-runner exec에 복제하는 것이 더 이상 실행 가능하지 않았습니다. 파이프라인 구문 및 검증 시뮬레이션은 GitLab 파이프라인 편집기에서 사용할 수 있습니다.

Kubernetes용 GitLab 에이전트의 풀 기반 배포 기능이 지원 중단됨#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Flux 및 관련 연동을 위해 Kubernetes용 GitLab 에이전트의 내장 풀 기반 배포 기능을 지원 중단합니다.

Kubernetes용 GitLab 에이전트는 지원 중단되지 않습니다. 이 변경 사항은 에이전트의 풀 기반 기능에만 영향을 줍니다. 다른 모든 기능은 그대로 유지되며 GitLab은 Kubernetes용 에이전트를 계속 지원합니다.

풀 기반 배포에 에이전트를 사용하는 경우 Flux로 마이그레이션해야 합니다. Flux는 GitOps를 위한 성숙한 CNCF 프로젝트이므로 2023년 2월에 Flux를 GitLab과 통합하기로 결정했습니다.

Twitter OmniAuth 로그인 옵션이 GitLab Self-Managed에서 지원 중단됨#

  • GitLab 16.3에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Twitter OAuth 1.0a OmniAuth는 낮은 사용량과 gem 지원 부재로 인해 GitLab 17.0에서 GitLab Self-Managed에 대해 지원 중단되고 제거됩니다. 대신 다른 지원되는 OmniAuth 제공자를 사용하세요.

통합 승인 규칙이 지원 중단됨#

  • GitLab 16.1에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

통합 승인 규칙은 더 많은 유연성을 제공하는 여러 승인 규칙을 위해 지원 중단됩니다. 호환성 변경 없이 통합 승인 규칙을 여러 승인 규칙으로 마이그레이션하지 못할 수 있습니다. 수동 마이그레이션을 도와드리기 위해 마이그레이션 문서를 도입했습니다.

통합 승인 규칙이 제거되기 전에 수동으로 마이그레이션하지 않으면 GitLab이 자동으로 설정을 마이그레이션합니다. 여러 승인 규칙은 승인 규칙에 대한 더 세밀한 설정을 허용하므로 마이그레이션을 GitLab에 맡기면 자동 마이그레이션이 선호하는 것보다 더 제한적인 규칙으로 끝날 수 있습니다. 예상보다 더 많은 승인이 필요한 문제가 있는 경우 마이그레이션 규칙을 확인하세요.

GitLab 15.11에서 통합 승인 규칙에 대한 UI 지원이 제거되었습니다. API를 통해 여전히 통합 승인 규칙에 액세스할 수 있습니다.

Linux에서 GitLab.com 러너의 운영 체제 버전 업그레이드#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 Linux의 GitLab.com 러너에 대한 작업을 실행하는 데 사용되는 임시 VM의 컨테이너 최적화 운영 체제(COS)를 업그레이드하고 있습니다. 해당 COS 업그레이드에는 알려진 호환성 문제를 도입하는 Docker Engine 버전 19.03.15에서 버전 23.0.5로의 업그레이드가 포함됩니다.

버전 20.10 이전의 Docker-in-Docker 또는 v1.9.0보다 오래된 Kaniko 이미지는 컨테이너 런타임을 감지하지 못하고 실패합니다.

자세한 내용은 Linux에서 SaaS 러너의 운영 체제 버전 업그레이드를 참조하세요.

취약점 신뢰도 필드#

  • GitLab 15.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.3에서 버전 15 미만의 보안 보고서 스키마가 지원 중단되었습니다. 취약점 발견의 confidence 속성은 15-0-0 이전 스키마 버전에만 존재하므로 GitLab 15.4가 스키마 버전 15-0-0을 지원하기 때문에 사실상 지원 중단되었습니다. 보고서와 공개 API 간의 일관성을 유지하기 위해 GraphQL API의 취약점 관련 컴포넌트에 대한 confidence 속성은 이제 지원 중단되었으며 17.0에서 제거됩니다.

after_script 키워드가 취소된 작업에 대해 실행됨#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

after_script CI/CD 키워드는 작업의 메인 script 섹션 이후에 추가 명령을 실행하는 데 사용됩니다. 이는 종종 작업에서 사용된 환경이나 다른 리소스를 정리하는 데 사용됩니다. 많은 사용자에게 작업이 취소된 경우 after_script 명령이 실행되지 않는다는 사실은 예상치 못하고 원치 않는 것이었습니다. 17.0에서 키워드는 작업 취소 후에도 명령을 실행하도록 업데이트됩니다. after_script 키워드를 사용하는 CI/CD 구성이 취소된 작업에도 실행되는 것을 처리할 수 있는지 확인하세요.

dependency_files가 지원 중단됨#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

오늘날 GitLab에서 프로젝트의 의존성 목록은 의존성 스캐닝 보고서의 dependency_files 내용을 사용하여 생성됩니다. 그러나 그룹 의존성 목록과의 일관성을 유지하기 위해 GitLab 17.0부터 프로젝트의 의존성 목록은 PostgreSQL 데이터베이스에 저장된 CycloneDX SBOM 보고서 아티팩트를 사용합니다. 따라서 의존성 스캐닝 보고서 스키마의 dependency_files 속성은 지원 중단되었으며 17.0에서 제거됩니다.

이 지원 중단의 일환으로 dependency_path도 17.0에서 지원 중단되고 제거됩니다. GitLab은 유사한 정보를 제공하기 위해 CycloneDX 사양을 사용한 의존성 그래프 구현을 진행할 것입니다.

또한 컨테이너 스캐닝 CI 작업은 CycloneDX SBOM 보고서로 대체되므로 더 이상 운영 체제 컴포넌트 목록을 제공하는 의존성 스캐닝 보고서를 생성하지 않습니다. 컨테이너 스캐닝을 위한 CS_DISABLE_DEPENDENCY_LIST 환경 변수는 더 이상 사용되지 않으며 17.0에서도 제거됩니다.

DORA API의 metric 필터 및 value 필드#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이제 새 metrics 필드를 사용하여 여러 DORA 메트릭을 동시에 쿼리할 수 있습니다. GraphQL DORA API의 metric 필터 및 value 필드는 GitLab 17.0에서 제거됩니다.

omniauth-azure-oauth2 gem이 지원 중단됨#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 사용자는 omniauth-azure-oauth2 gem을 사용하여 GitLab으로 인증할 수 있습니다. 17.0에서 이 gem은 omniauth_openid_connect gem으로 교체됩니다. 새 gem은 이전 gem과 동일한 모든 기능을 포함하지만 업스트림 유지보수가 있으며 보안 및 중앙화된 유지보수에 더 좋습니다.

이 변경 사항은 마이그레이션 시 사용자가 OAuth 2.0 제공자에 다시 연결해야 합니다. 중단을 피하려면 17.0 전에 언제든지 omniauth_openid_connect를 새 제공자로 추가하세요. 사용자는 새 로그인 버튼을 볼 것이며 자격 증명을 수동으로 다시 연결해야 합니다. 17.0 이전에 omniauth_openid_connect gem을 구현하지 않으면 사용자는 Azure 로그인 버튼을 사용하여 로그인할 수 없게 되며 관리자가 올바른 gem을 구현할 때까지 사용자 이름과 비밀번호를 사용하여 로그인해야 합니다.

omnibus_gitconfig 구성 항목이 지원 중단됨#

  • GitLab 16.10에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

omnibus_gitconfig['system'] 구성 항목이 지원 중단되었습니다. omnibus_gitconfig['system']을 사용하여 Gitaly에 대한 커스텀 Git 구성을 설정하는 경우 GitLab 17.0으로 업그레이드하기 전에 gitaly[:configuration][:git][:config] 아래의 Gitaly 구성을 통해 Git을 직접 구성해야 합니다.

예를 들어:

  gitaly[:configuration][:git][:config] = [
    {
      key: 'fetch.fsckObjects',
      value: 'true',
    },
    # ...
  ]

구성 키의 형식은 CLI 플래그 git -c <configuration>을 통해 git에 전달되는 것과 일치해야 합니다.

기존 키를 예상 형식으로 변환하는 데 어려움이 있는 경우 Gitaly의 Linux 패키지 생성 구성 파일에서 올바른 형식의 기존 키를 참조하세요. 기본적으로 구성 파일은 /var/opt/gitlab/gitaly/config.toml에 있습니다.

Gitaly가 관리하는 다음 구성 옵션은 제거해야 합니다. 이러한 키는 Gitaly로 마이그레이션할 필요가 없습니다:

  • pack.threads=1
  • receive.advertisePushOptions=true
  • receive.fsckObjects=true
  • repack.writeBitmaps=true
  • transfer.hideRefs=^refs/tmp/
  • transfer.hideRefs=^refs/keep-around/
  • transfer.hideRefs=^refs/remotes/
  • core.alternateRefsCommand="exit 0 #"
  • core.fsyncObjectFiles=true
  • fetch.writeCommitGraph=true

postgres_exporter['per_table_stats'] 구성 설정#

  • GitLab 16.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지는 번들 PostgreSQL 익스포터에 대한 커스텀 쿼리를 제공하며, 여기에는 postgres_exporter['per_table_stats'] 구성 설정으로 제어되는 per_table_stats 쿼리가 포함되었습니다.

PostgreSQL 익스포터는 이제 동일한 메트릭을 제공하는 stat_user_tables 수집기를 제공합니다. postgres_exporter['per_table_stats']가 활성화되어 있었다면 대신 postgres_exporter['flags']['collector.stat_user_tables']를 활성화하세요.

projectFingerprint GraphQL 필드#

  • GitLab 15.1에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

취약점 발견의 project_fingerprint 속성은 uuid 속성을 위해 지원 중단됩니다. UUIDv5 값을 사용하여 발견을 식별함으로써 관련 엔티티를 발견과 쉽게 연결할 수 있습니다. project_fingerprint 속성은 더 이상 발견을 추적하는 데 사용되지 않으며 GitLab 17.0에서 제거됩니다. 16.1부터 project_fingerprint의 출력은 uuid 필드와 동일한 값을 반환합니다.

공개 프로젝트에 대한 repository_download_operation 감사 이벤트 유형#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

감사 이벤트 유형 repository_download_operation은 현재 공개 프로젝트와 비공개 프로젝트 모두의 모든 프로젝트 다운로드에 대해 데이터베이스에 저장됩니다. 공개 프로젝트의 경우 인증되지 않은 사용자가 이 감사 이벤트를 트리거할 수 있으므로 감사 목적에 가장 유용하지 않습니다.

GitLab 17.0부터 repository_download_operation 감사 이벤트 유형은 비공개 또는 내부 프로젝트에 대해서만 트리거됩니다. 공개 프로젝트 다운로드를 위해 public_repository_download_operation이라는 새 감사 이벤트 유형을 추가합니다. 이 새 감사 이벤트 유형은 스트리밍 전용입니다.

npm 패키지 업로드가 이제 비동기적으로 발생#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 패키지 레지스트리는 npm 및 Yarn을 지원합니다. npm 또는 Yarn 패키지를 업로드하면 업로드가 동기적으로 처리됩니다. 그러나 동기 업로드에는 알려진 문제가 있습니다. 예를 들어 GitLab은 overrides와 같은 기능을 지원하지 않습니다.

17.0부터 npm 및 Yarn 패키지는 비동기적으로 업로드됩니다. 패키지가 게시되는 즉시 사용 가능할 것으로 예상하는 파이프라인이 있을 수 있으므로 이는 호환성 변경입니다.

해결 방법으로 패키지 API를 사용하여 패키지를 확인해야 합니다.

GitLab 16.9#

lfs_check 피처 플래그 지원 중단#

  • GitLab 16.6에서 발표
  • GitLab 16.9에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.9에서 lfs_check 피처 플래그를 제거합니다. 이 피처 플래그는 4년 전에 도입되었으며 LFS 무결성 검사가 활성화되어 있는지 여부를 제어합니다. 피처 플래그는 기본적으로 활성화되어 있지만 일부 고객은 LFS 무결성 검사로 인한 성능 문제를 경험하고 이를 명시적으로 비활성화했습니다.

LFS 무결성 검사의 성능을 크게 개선한 후 피처 플래그를 제거할 준비가 되었습니다. 플래그가 제거된 후 현재 비활성화된 환경에서는 기능이 자동으로 켜집니다.

이 피처 플래그가 환경에 비활성화되어 있고 성능 문제가 우려되는 경우 16.9에서 제거되기 전에 활성화하고 성능을 모니터링하세요. 활성화 후 성능 문제가 발생하면 이 피드백 이슈에서 알려주세요.

GitLab 16.8#

openSUSE Leap 15.4 패키지#

  • GitLab 16.5에서 발표
  • GitLab 16.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

openSUSE Leap 15.4에 대한 지원 및 보안 업데이트가 2023년 11월에 종료됩니다.

GitLab 15.4는 openSUSE Leap 15.5용 패키지를 제공했습니다. GitLab 15.8 이상에서는 openSUSE Leap 15.4용 패키지를 제공하지 않습니다.

GitLab 15.8 이상에 대비하려면:

  1. 인스턴스를 openSUSE Leap 15.4에서 openSUSE Leap 15.5로 이동하세요.
  2. openSUSE Leap 15.4 GitLab 제공 패키지에서 openSUSE Leap 15.5 GitLab 제공 패키지로 전환하세요.

GitLab 16.7#

Shimo 연동#

  • GitLab 15.7에서 발표
  • GitLab 16.7에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Shimo Workspace 연동이 지원 중단되었으며 JiHu GitLab 코드베이스로 이동됩니다.

user_email_lookup_limit API 필드#

user_email_lookup_limit API 필드는 GitLab 14.9에서 지원 중단되었으며 GitLab 16.7에서 제거됩니다. 기능이 제거될 때까지 user_email_lookup_limitsearch_rate_limit의 별칭이며 기존 워크플로는 계속 작동합니다.

user_email_lookup_limit에 대한 속도 제한을 변경하는 모든 API 호출은 대신 search_rate_limit를 사용해야 합니다.

GitLab 16.6#

작업 토큰 허용 목록이 공개 및 내부 프로젝트를 포함#

  • GitLab 16.3에서 발표
  • GitLab 16.6에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

16.6부터 이 프로젝트에 대한 액세스 제한이 활성화된 경우 공개 또는 내부 프로젝트는 프로젝트의 허용 목록에 없는 프로젝트의 작업 토큰 요청을 더 이상 승인하지 않습니다.

공개 또는 내부 프로젝트에 이 프로젝트에 대한 액세스 제한 설정이 활성화되어 있는 경우 프로젝트에 작업 토큰 요청을 하는 모든 프로젝트를 프로젝트의 허용 목록에 추가해야 계속 승인됩니다.

GitLab 16.5#

잠긴 LDAP 그룹에 LDAP 동기화되지 않은 멤버 추가가 지원 중단됨#

  • GitLab 16.0에서 발표
  • GitLab 16.5에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

ldap_settings_unlock_groups_by_owners 피처 플래그를 활성화하면 LDAP 동기화되지 않은 사용자가 잠긴 LDAP 그룹에 추가될 수 있었습니다. 이 기능은 항상 기본적으로 비활성화되었으며 피처 플래그 뒤에 있었습니다. SAML 연동과의 연속성을 유지하고 동기화되지 않은 그룹 멤버를 허용하는 것이 디렉터리 서비스 사용의 "단일 진실 소스" 원칙을 무효화하기 때문에 이 기능을 제거합니다. 이 기능이 제거되면 LDAP와 동기화되지 않은 모든 LDAP 그룹 멤버는 해당 그룹에 대한 액세스를 잃게 됩니다.

Geo: Housekeeping Rake 작업#

  • GitLab 16.3에서 발표
  • GitLab 16.5에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Geo 셀프 서비스 프레임워크(SSF)로 복제 및 검증 마이그레이션의 일환으로 프로젝트 리포지터리에 대한 레거시 복제가 제거되었습니다. 결과적으로 레거시 코드에 의존했던 다음 Rake 작업도 제거되었습니다. 이러한 Rake 작업에 의해 호출된 작업은 이제 주기적으로 또는 트리거 이벤트를 기반으로 자동으로 트리거됩니다.

Rake 작업 대체
geo:git:housekeeping:full_repack UI로 이동. SSF에는 해당 Rake 작업이 없습니다.
geo:git:housekeeping:gc 새 리포지터리에 대해 항상 실행되고 필요할 때 실행됩니다. SSF에는 해당 Rake 작업이 없습니다.
geo:git:housekeeping:incremental_repack 필요할 때 실행됩니다. SSF에는 해당 Rake 작업이 없습니다.
geo:run_orphaned_project_registry_cleaner 고아 레지스트리를 제거하는 레지스트리 일관성 워커에 의해 정기적으로 실행됩니다. SSF에는 해당 Rake 작업이 없습니다.
geo:verification:repository:reset UI로 이동. SSF에는 해당 Rake 작업이 없습니다.
geo:verification:wiki:reset UI로 이동. SSF에는 해당 Rake 작업이 없습니다.

GitLab 16.3#

번들 Grafana 지원 중단 및 비활성화#

  • GitLab 16.0에서 발표
  • GitLab 16.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Omnibus GitLab과 함께 번들된 Grafana 버전은 16.0에서 지원 중단 및 비활성화되었으며 16.3에서 제거됩니다. 번들 Grafana를 사용하는 경우 다음 중 하나로 마이그레이션해야 합니다:

현재 제공되는 Grafana 버전은 더 이상 지원되는 버전이 아닙니다.

GitLab 버전 16.0부터 16.2에서는 번들 Grafana를 다시 활성화할 수 있습니다. 그러나 번들 Grafana 활성화는 GitLab 16.3부터 더 이상 작동하지 않습니다.

RSA 키 크기 제한#

  • GitLab 16.3에서 발표
  • GitLab 16.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Go 버전 1.20.7 이상은 RSA 키를 최대 8192비트로 제한하는 maxRSAKeySize 상수를 추가합니다. 결과적으로 8192비트보다 큰 RSA 키는 GitLab에서 더 이상 작동하지 않습니다. 8192비트보다 큰 RSA 키는 더 작은 크기로 재생성해야 합니다.

로그에 tls: server sent certificate containing RSA key larger than 8192 bits와 같은 오류가 포함되어 있어 이 문제를 알아차릴 수 있습니다. 키의 길이를 테스트하려면 이 명령을 사용하세요: openssl rsa -in <your-key-file> -text -noout | grep "Key:".

Twitter OmniAuth 로그인 옵션이 GitLab.com에서 제거됨#

  • GitLab 16.3에서 발표
  • GitLab 16.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Twitter OAuth 1.0a OmniAuth는 낮은 사용량, gem 지원 부재 및 이 기능에 대한 기능적인 로그인 옵션이 없어 GitLab 16.3에서 GitLab.com에서 지원 중단되고 제거됩니다. Twitter를 사용하여 GitLab.com에 로그인하는 경우 비밀번호나 다른 지원되는 OmniAuth 제공자로 로그인할 수 있습니다.

라이선스 컴플라이언스 CI 템플릿#

  • GitLab 15.9에서 발표
  • GitLab 16.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

업데이트: 이전에 GitLab 16.0에서 기존 라이선스 컴플라이언스 CI/CD 템플릿을 제거하겠다고 발표했습니다. 그러나 CycloneDX 파일의 라이선스 스캐닝의 성능 문제로 인해 16.3에서 대신 이를 수행합니다.

GitLab 라이선스 컴플라이언스 CI/CD 템플릿은 이제 지원 중단되었으며 GitLab 16.3 릴리스에서 제거될 예정입니다.

라이선스 컴플라이언스를 위해 GitLab을 계속 사용하려면 CI/CD 파이프라인에서 라이선스 컴플라이언스 템플릿을 제거하고 의존성 스캐닝 템플릿을 추가하세요. 의존성 스캐닝 템플릿은 이제 필요한 라이선스 정보를 수집할 수 있으므로 별도의 라이선스 컴플라이언스 작업을 실행할 필요가 없습니다.

라이선스 컴플라이언스 CI/CD 템플릿을 제거하기 전에 인스턴스가 새 라이선스 스캐닝 방법을 지원하는 버전으로 업그레이드되었는지 확인하세요.

대규모로 의존성 스캐너를 빠르게 사용하기 시작하려면 그룹 수준에서 스캔 실행 정책을 설정하여 그룹의 모든 프로젝트에 대해 SBOM 기반 라이선스 스캔을 적용할 수 있습니다. 그런 다음 CI/CD 구성에서 Jobs/License-Scanning.gitlab-ci.yml 템플릿의 포함을 제거할 수 있습니다.

레거시 라이선스 컴플라이언스 기능을 계속 사용하려면 LICENSE_MANAGEMENT_VERSION CI 변수를 4로 설정하여 계속 사용할 수 있습니다. 이 변수는 프로젝트, 그룹 또는 인스턴스 수준에서 설정할 수 있습니다. 이 구성 변경으로 새 접근 방식을 채택하지 않고도 기존 버전의 라이선스 컴플라이언스를 계속 사용할 수 있습니다.

이 레거시 분석기의 버그와 취약점은 더 이상 수정되지 않습니다.

CI 파이프라인 포함 GitLab <= 15.8 15.9 <= GitLab < 16.3 GitLab >= 16.3
DS 및 LS 템플릿 모두 LS 작업의 라이선스 데이터 사용 LS 작업의 라이선스 데이터 사용 DS 작업의 라이선스 데이터 사용
DS 템플릿은 포함되지만 LS 템플릿은 아님 라이선스 데이터 없음 DS 작업의 라이선스 데이터 사용 DS 작업의 라이선스 데이터 사용
LS 템플릿은 포함되지만 DS 템플릿은 아님 LS 작업의 라이선스 데이터 사용 LS 작업의 라이선스 데이터 사용 라이선스 데이터 없음

GitLab 16.1#

Alpine 3.12, 3.13, 3.14 기반 GitLab Runner 이미지#

  • GitLab 15.11에서 발표
  • GitLab 16.1에서 지원 종료
  • GitLab 16.1에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

다음 수명 종료 Alpine 버전을 기반으로 하는 러너 이미지 게시를 중단합니다:

  • Alpine 3.12
  • Alpine 3.13
  • Alpine 3.14 (2023-05-23 수명 종료)

GitLab 16.0#

Auto DevOps의 PostgreSQL 데이터베이스 기본 프로비저닝 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

현재 Auto DevOps는 기본적으로 클러스터 내 PostgreSQL 데이터베이스를 프로비저닝합니다. GitLab 16.0부터는 옵트인한 사용자에게만 데이터베이스가 프로비저닝됩니다. 이 변경으로 더 강력한 데이터베이스 관리가 필요한 프로덕션 배포를 지원합니다.

Auto DevOps가 클러스터 내 데이터베이스를 프로비저닝하도록 하려면 POSTGRES_ENABLED CI/CD 변수를 true로 설정하세요.

Azure Storage Driver가 올바른 루트 접두사 기본값으로 변경#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리의 Azure Storage Driver는 기본 루트 디렉터리로 //에 씁니다. 이 기본 루트 디렉터리는 Azure UI 일부에서 /<no-name>/으로 표시됩니다. 이 스토리지 드라이버를 사용하는 이전 배포를 지원하기 위해 이 레거시 동작을 유지해 왔습니다. 그러나 다른 스토리지 드라이버에서 Azure로 이동할 때 trimlegacyrootprefix: true를 설정하여 스토리지 드라이버가 추가 슬래시 없이 루트 경로를 빌드하도록 구성하지 않으면 모든 데이터가 숨겨집니다.

스토리지 드라이버의 새 기본 설정은 trimlegacyrootprefix: true로 설정되며, /가 기본 루트 디렉터리가 됩니다. 중단을 피하려면 현재 설정에 trimlegacyrootprefix: false를 추가할 수 있습니다.

이 호환성 변경은 GitLab 16.0에서 적용됩니다.

번들 Grafana Helm Chart 지원 중단#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm Chart에 번들로 제공되는 Grafana Helm Chart는 지원 중단되며 GitLab Helm Chart 7.0 릴리스(GitLab 16.0과 함께 출시)에서 제거됩니다.

번들 Grafana Helm Chart는 GitLab Helm Chart의 Prometheus 메트릭에 연결된 Grafana UI를 제공하기 위해 켤 수 있는 선택적 서비스입니다.

GitLab Helm Chart가 현재 제공하는 Grafana 버전은 더 이상 지원되지 않는 Grafana 버전입니다. 번들 Grafana를 사용 중인 경우 Grafana Labs의 최신 차트 버전이나 신뢰할 수 있는 공급업체의 Grafana Operator로 전환해야 합니다.

새 Grafana 인스턴스에서 GitLab에서 제공하는 Prometheus를 데이터 소스로 구성하고 GitLab UI에 Grafana를 연결할 수 있습니다.

CAS OmniAuth 공급자#

  • GitLab 15.3에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab에 CAS OmniAuth 공급자를 제공하는 omniauth-cas3 gem은 다음 주요 릴리스인 GitLab 16.0에서 제거됩니다. 이 gem은 거의 사용되지 않으며 업스트림 유지 관리 부재로 인해 GitLab이 OmniAuth 2.0으로 업그레이드하는 것을 방해하고 있습니다.

HashiCorp Vault에서 시크릿이 반환되지 않으면 CI/CD 작업 실패#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

네이티브 HashiCorp Vault 통합을 사용할 때 Vault에서 시크릿이 반환되지 않으면 CI/CD 작업이 실패합니다. GitLab 16.0 이전에 설정이 항상 시크릿을 반환하도록 하거나 이 변경을 처리하도록 파이프라인을 업데이트하세요.

멀티 모듈 Android 프로젝트에서 MobSF 기반 SAST 분석기 동작 변경#

  • GitLab 16.0에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

업데이트: MobSF 기반 GitLab SAST 분석기가 멀티 모듈 Android 프로젝트를 스캔하는 방법에 대한 변경을 이전에 발표했습니다. 해당 변경을 취소했으며 별도 조치가 필요 없습니다.

어떤 단일 모듈이 스캔될지 변경하는 대신 멀티 모듈 지원을 개선했습니다.

/approvals API 엔드포인트로 머지 리퀘스트 승인 변경#

  • GitLab 14.0에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

머지 리퀘스트에 필요한 승인을 변경하려면 GitLab 14.0에서 지원 중단된 /approvals API 엔드포인트를 더 이상 사용해서는 안 됩니다.

대신 /approval_rules 엔드포인트를 사용하여 머지 리퀘스트의 승인 규칙을 생성하거나 업데이트하세요.

Conan 프로젝트 수준 검색 엔드포인트가 프로젝트별 결과 반환#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Conan 리포지터리를 프로젝트 수준 또는 인스턴스 수준 엔드포인트와 함께 사용할 수 있습니다. 각 수준은 Conan 검색 명령을 지원합니다. 그러나 프로젝트 수준의 검색 엔드포인트가 대상 프로젝트 외부의 패키지도 반환하고 있습니다.

이 의도하지 않은 기능은 GitLab 15.8에서 지원 중단되며 GitLab 16.0에서 제거됩니다. 프로젝트 수준의 검색 엔드포인트는 대상 프로젝트의 패키지만 반환합니다.

GitLab Runner Helm Chart의 설정 필드#

  • GitLab 15.6에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 13.6부터 사용자는 GitLab Runner Helm Chart에서 모든 러너 설정을 지정할 수 있습니다. 이 기능을 구현할 때 GitLab Runner에 특정한 GitLab Helm Chart 설정의 값을 지원 중단했습니다. 지원 중단된 값은 GitLab 16.0에서 제거됩니다.

환경 변수를 사용한 Redis 설정 파일 경로 구성 지원 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GITLAB_REDIS_CACHE_CONFIG_FILE 또는 GITLAB_REDIS_QUEUES_CONFIG_FILE과 같은 환경 변수를 사용하여 Redis 설정 파일 위치를 더 이상 지정할 수 없습니다. 대신 config/redis.cache.yml 또는 config/redis.queues.yml과 같은 기본 설정 파일 위치를 사용하세요.

컨테이너 레지스트리 풀스루 캐시#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리 풀스루 캐시는 GitLab 15.8에서 지원 중단되며 GitLab 16.0에서 제거됩니다. 풀스루 캐시는 업스트림 Docker Distribution 프로젝트의 일부입니다. 그러나 Docker Hub의 컨테이너 이미지를 프록시하고 캐시할 수 있는 GitLab 의존성 프록시를 위해 풀스루 캐시를 제거합니다. 풀스루 캐시를 제거하면 기능을 희생하지 않고 업스트림 클라이언트 코드도 제거할 수 있습니다.

Docker를 참조하는 컨테이너 스캐닝 변수#

  • GitLab 15.4에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

변수 이름에 DOCKER_ 접두사가 붙은 모든 컨테이너 스캐닝 변수는 지원 중단됩니다. 여기에는 DOCKER_IMAGE, DOCKER_PASSWORD, DOCKER_USER, DOCKERFILE_PATH 변수가 포함됩니다. 이러한 변수에 대한 지원은 GitLab 16.0 릴리스에서 제거됩니다. 지원 중단된 이름 대신 새 변수 이름 CS_IMAGE, CS_REGISTRY_PASSWORD, CS_REGISTRY_USER, CS_DOCKERFILE_PATH를 사용하세요.

GitLab for Jira Cloud 앱의 쿠키 인증#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab for Jira Cloud 앱의 쿠키 인증은 OAuth 인증을 위해 지원 중단되었습니다. GitLab Self-Managed에서 GitLab for Jira Cloud 앱을 계속 사용하려면 OAuth 인증을 설정해야 합니다. OAuth 없이는 연결된 네임스페이스를 관리할 수 없습니다.

DAST 템플릿을 사용한 DAST API 스캔 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

DAST API 스캔을 위한 새 DAST API 분석기 및 DAST-API.gitlab-ci.yml 템플릿으로 이동하면서 DAST 분석기로 API를 스캔하는 기능을 제거합니다. API 스캔에 DAST.gitlab-ci.yml 또는 DAST-latest.gitlab-ci.yml 템플릿을 사용하는 것은 GitLab 15.7부터 지원 중단되었으며 GitLab 16.0에서 더 이상 작동하지 않습니다. DAST-API.gitlab-ci.yml 템플릿을 사용하고 구성 세부 정보는 DAST API 분석기 문서를 참조하세요.

DAST API 변수#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.6에서 새 DAST API 분석기로 전환하면서 두 가지 레거시 DAST API 변수가 지원 중단됩니다. DAST_API_HOST_OVERRIDEDAST_API_SPECIFICATION 변수는 더 이상 DAST API 스캔에 사용되지 않습니다.

DAST_API_HOST_OVERRIDE는 OpenAPI 사양의 호스트를 자동으로 재정의하기 위해 DAST_API_TARGET_URL을 사용하는 것으로 대체되어 지원 중단되었습니다.

DAST_API_SPECIFICATIONDAST_API_OPENAPI로 대체되어 지원 중단되었습니다. OpenAPI 사양을 사용하여 테스트를 계속 안내하려면 DAST_API_SPECIFICATION 변수를 DAST_API_OPENAPI 변수로 교체해야 합니다. 값은 동일하게 유지할 수 있지만 변수 이름은 교체해야 합니다.

이 두 변수는 GitLab 16.0에서 제거됩니다.

DAST 보고서 변수 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.7에서 새 브라우저 기반 DAST 분석기가 GA로 출시되면서 미래의 어느 시점에 기본 DAST 분석기로 만드는 작업을 진행 중입니다. 이를 위해 다음 레거시 DAST 변수들이 지원 중단되며 GitLab 16.0에서 제거될 예정입니다: DAST_HTML_REPORT, DAST_XML_REPORT, DAST_MARKDOWN_REPORT. 이러한 보고서는 레거시 DAST 분석기에 의존했으며 새 브라우저 기반 분석기에서 구현할 계획이 없습니다. GitLab 16.0부터 이러한 보고서 아티팩트는 더 이상 생성되지 않습니다.

이 세 가지 변수는 GitLab 16.0에서 제거됩니다.

Java 13, 14, 15, 16에 대한 의존성 스캐닝 지원#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 Java 버전 13, 14, 15, 16에 대한 의존성 스캐닝 지원을 지원 중단했으며 다가오는 GitLab 16.0 릴리스에서 해당 지원을 제거할 계획입니다. 이는 Oracle Premier 및 Extended 지원이 이러한 버전에 대해 종료됨에 따라 Oracle 지원 정책과 일치합니다. 또한 GitLab이 앞으로 LTS 버전에 집중하여 의존성 스캐닝 Java 지원을 제공할 수 있게 합니다.

updated_atupdated_at를 함께 사용하지 않을 때 배포 API 오류 반환#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

배포 API는 이제 updated_at 필터링과 updated_at 정렬을 함께 사용하지 않을 때 오류를 반환합니다. 일부 사용자가 updated_at 정렬 없이 updated_at 필터링을 사용하여 "최신" 배포를 가져오고 있었으며, 이로 인해 잘못된 결과가 생성될 수 있습니다. 대신 함께 사용하거나, 일관된 방식으로 "최신 배포"를 제공하는 finished_at 필터링 및 finished_at 정렬로 마이그레이션해야 합니다.

레거시 Gitaly 설정 방법 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GIT_CONFIG_SYSTEMGIT_CONFIG_GLOBAL 환경 변수를 사용하여 Gitaly를 구성하는 것은 지원 중단되었습니다. 이러한 변수는 표준 config.toml Gitaly 설정으로 교체됩니다.

GIT_CONFIG_SYSTEMGIT_CONFIG_GLOBAL을 사용하여 Gitaly를 구성하는 GitLab 인스턴스는 config.toml을 사용한 설정으로 전환해야 합니다.

지원 중단된 Consul http 메트릭#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지에 포함된 Consul은 GitLab 16.0부터 이전에 지원 중단된 Consul 메트릭을 더 이상 제공하지 않습니다.

GitLab 14.0에서 Consul이 1.9.6으로 업데이트되어 일부 텔레메트리 메트릭이 consul.http 경로에서 지원 중단되었습니다. GitLab 16.0에서 consul.http 경로가 제거됩니다.

Consul 메트릭을 소비하는 모니터링이 있는 경우 consul.http 대신 consul.api.http를 사용하도록 업데이트하세요. 자세한 내용은 Consul 1.9.0의 지원 중단 노트를 참조하세요.

GitLab.com의 CI_PRE_CLONE_SCRIPT 변수 지원 중단 및 제거 계획#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab.com 러너에서 지원하는 CI_PRE_CLONE_SCRIPT 변수는 GitLab 15.9부터 지원 중단되었으며 16.0에서 제거됩니다. CI_PRE_CLONE_SCRIPT 변수를 사용하면 러너가 Git init 및 get fetch를 실행하기 전에 CI/CD 작업에서 명령을 실행할 수 있습니다. 이 기능 작동 방법에 대한 자세한 내용은 Pre-clone 스크립트를 참조하세요. 대안으로 pre_get_sources_script를 사용할 수 있습니다.

그룹에 프로젝트 임포트 시 Developer 역할 권한 제거#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

그룹에 Developer 역할을 가진 사용자가 해당 그룹에 프로젝트를 임포트할 수 있는 기능은 GitLab 15.8에서 지원 중단되며 GitLab 16.0에서 제거됩니다. GitLab 16.0부터 그룹에 Maintainer 또는 Owner 역할을 가진 사용자만 해당 그룹에 프로젝트를 임포트할 수 있습니다.

PHP 및 Python에 대한 개발 의존성 보고#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0에서 GitLab 의존성 스캐닝 분석기는 Python/pipenv 및 PHP/composer 프로젝트 모두에 대한 개발 의존성을 보고하기 시작합니다. 이러한 개발 의존성을 보고하지 않으려는 사용자는 CI/CD 파일에 DS_INCLUDE_DEV_DEPENDENCIES: false를 설정해야 합니다.

Markdown에 Grafana 패널 임베딩 지원 중단#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Flavored Markdown에 Grafana 패널을 추가하는 기능은 15.9에서 지원 중단되었으며 16.0에서 제거됩니다. GitLab Observability UI차트를 임베딩하는 기능으로 이 기능을 대체할 예정입니다.

CI/CD 매개변수 문자 길이의 강제 유효성 검사#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

CI/CD 작업 이름에는 엄격한 255자 제한이 있지만 다른 CI/CD 매개변수는 아직 해당 제한을 유지하는 유효성 검사가 없습니다.

GitLab 16.0에서는 다음에 대한 유효성 검사도 255자로 엄격하게 제한됩니다:

  • stage 키워드
  • 파이프라인의 Git 브랜치 또는 태그 이름인 ref
  • 외부 CI/CD 통합에서 사용하는 descriptiontarget_url 매개변수

GitLab Self-Managed 사용자는 255자를 초과하는 매개변수를 사용하지 않도록 파이프라인을 업데이트해야 합니다. GitLab.com 사용자는 데이터베이스에서 이미 제한되어 있으므로 변경할 필요가 없습니다.

환경 검색 쿼리에 최소 세 자 필요#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0부터 API로 환경을 검색할 때 최소 세 자를 사용해야 합니다. 이 변경으로 검색 작업의 확장성을 보장합니다.

GraphQL API에서 ReleaseAssetLink 유형external 필드는 릴리스 링크가 GitLab 인스턴스에 내부적인지 외부적인지 나타내는 데 사용되었습니다. GitLab 15.9부터 모든 릴리스 링크를 외부로 처리하므로 이 필드는 GitLab 15.9에서 지원 중단되며 GitLab 16.0에서 제거됩니다. 워크플로에 중단이 발생하지 않도록 external 필드 사용을 중단하세요. 이 필드는 제거되며 대체되지 않습니다.

Releases APIRelease Links API에서 external 필드는 릴리스 링크가 GitLab 인스턴스에 내부적인지 외부적인지 나타내는 데 사용되었습니다. GitLab 15.9부터 모든 릴리스 링크를 외부로 처리하므로 이 필드는 GitLab 15.9에서 지원 중단되며 GitLab 16.0에서 제거됩니다. 워크플로에 중단이 발생하지 않도록 external 필드 사용을 중단하세요. 이 필드는 제거되며 대체되지 않습니다.

Geo: 프로젝트 리포지터리 재다운로드 지원 중단#

  • GitLab 15.11에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

보조 Geo 사이트에서 프로젝트 리포지터리를 "재다운로드"하는 버튼은 지원 중단됩니다. 재다운로드 로직에는 발생 시 해결하기 어려운 데이터 일관성 문제가 있습니다. 이 버튼은 GitLab 16.0에서 제거됩니다.

GitLab 관리자는 보호된 브랜치 또는 태그를 수정하려면 권한이 필요#

  • GitLab 16.0에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 관리자는 이제 명시적으로 권한이 부여되지 않는 한 보호된 브랜치 또는 태그에 대한 작업을 수행할 수 없습니다. 이러한 작업에는 보호된 브랜치에 푸시 및 머지, 브랜치 보호 해제, 보호된 태그 생성이 포함됩니다.

GitLab 셀프 모니터링 프로젝트#

  • GitLab 14.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 셀프 모니터링은 인스턴스 관리자에게 인스턴스 상태를 모니터링하는 도구를 제공합니다. 이 기능은 GitLab 14.9에서 지원 중단되었으며 16.0에서 제거될 예정입니다.

GitLab.com 임포터#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab.com 임포터는 GitLab 15.8에서 지원 중단되었으며 GitLab 16.0에서 제거됩니다.

GitLab.com 임포터는 UI를 통해 GitLab.com에서 GitLab Self-Managed 인스턴스로 프로젝트를 임포트하기 위해 2015년에 도입되었습니다. 이 기능은 GitLab Self-Managed에서만 사용 가능합니다. 직접 전송을 통한 GitLab 그룹 및 프로젝트 마이그레이션이 GitLab.com 임포터를 대체하며 보다 일관된 임포트 기능을 제공합니다.

개요는 마이그레이션된 그룹 항목마이그레이션된 프로젝트 항목을 참조하세요.

GraphQL API 러너 상태에서 paused 반환 중단#

  • GitLab 14.5에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Runner GraphQL API 엔드포인트는 GitLab 16.0에서 상태로 paused 또는 active를 반환하지 않습니다. REST API의 향후 v5에서도 GitLab Runner 엔드포인트는 paused 또는 active를 반환하지 않습니다.

러너의 상태는 online, offline, not_connected와 같은 러너 연결 상태에만 관련됩니다. 상태 paused 또는 active는 더 이상 표시되지 않습니다.

러너가 paused인지 확인할 때 API 사용자는 대신 불리언 속성 pausedtrue인지 확인하는 것이 좋습니다. 러너가 active인지 확인할 때는 pausedfalse인지 확인하세요.

Jira Cloud용 Jira DVCS 커넥터#

  • GitLab 15.1에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Jira Cloud용 Jira DVCS 커넥터는 지원 중단되었으며 GitLab 16.0에서 제거됩니다. Jira Cloud에서 Jira DVCS 커넥터를 사용 중인 경우 GitLab for Jira Cloud 앱으로 마이그레이션하세요.

Jira DVCS 커넥터는 Jira 8.13 이하에서도 지원 중단됩니다. Jira DVCS 커넥터는 Jira 8.14 이상의 Jira Server 또는 Jira Data Center에서만 사용할 수 있습니다.

GitLab Helm Chart의 KAS 메트릭 포트#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm Chart에서 gitlab.kas.metrics.port는 새 gitlab.kas.observability.port 설정 필드를 위해 지원 중단되었습니다. 이 포트는 단순한 메트릭 이상으로 사용되므로 설정 혼란을 피하기 위해 이 변경이 필요했습니다.

레거시 Gitaly 설정 방법#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Omnibus GitLab 내의 Gitaly 설정이 업데이트되어 모든 Gitaly 관련 설정 키가 표준 Gitaly 설정과 일치하는 단일 설정 구조에 있습니다. 따라서 이전 설정 구조는 지원 중단됩니다.

단일 설정 구조는 GitLab 15.10부터 사용 가능하지만 하위 호환성은 유지됩니다. 제거된 후에는 단일 설정 구조를 사용하여 Gitaly를 설정해야 합니다. 최대한 빨리 Gitaly 설정을 업데이트해야 합니다.

이 변경은 Omnibus GitLab과 소스 설치 간의 일관성을 향상시키고 두 가지 모두에 대한 더 나은 문서 및 도구를 제공할 수 있게 합니다.

업그레이드 지침을 사용하여 최대한 빨리 새 설정 구조로 업데이트해야 합니다.

레거시 Praefect 설정 방법#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에는 Praefect 설정 키가 설정 파일 전체에 흩어져 있었습니다. 이제 Praefect 설정과 일치하는 단일 설정 구조에 있으므로 이전 설정 방법은 지원 중단됩니다.

단일 설정 구조는 GitLab 15.9부터 사용 가능하지만 하위 호환성은 유지됩니다. 제거된 후에는 단일 설정 구조를 사용하여 Praefect를 설정해야 합니다. 업그레이드 지침을 사용하여 최대한 빨리 Praefect 설정을 업데이트해야 합니다.

이 변경은 Omnibus GitLab의 Praefect 설정을 Praefect의 설정 구조와 일치시킵니다. 이전에는 계층 구조와 설정 키가 일치하지 않았습니다. 이 변경은 Omnibus GitLab과 소스 설치 간의 일관성을 향상시키고 두 가지 모두에 대한 더 나은 문서 및 도구를 제공할 수 있게 합니다.

레거시 URL 교체 또는 제거#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0은 GitLab 애플리케이션에서 레거시 URL을 제거합니다.

GitLab 9.0에서 서브그룹이 도입되었을 때 그룹 경로의 끝을 나타내기 위해 URL에 /-/ 구분자가 추가되었습니다. 이제 모든 GitLab URL은 프로젝트, 그룹, 인스턴스 수준 기능에 이 구분자를 사용합니다.

/-/ 구분자를 사용하지 않는 URL은 GitLab 16.0에서 제거될 예정입니다. 이러한 URL의 전체 목록과 대체 URL은 이슈 28848을 참조하세요.

레거시 URL을 참조하는 스크립트나 북마크를 업데이트하세요. GitLab API는 이 변경의 영향을 받지 않습니다.

라이선스 컴플라이언스 페이지의 License-Check 및 정책 탭#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

License-Check 기능은 이제 지원 중단되었으며 GitLab 16.0에서 제거될 예정입니다. 또한 라이선스 컴플라이언스 페이지의 정책 탭과 License-Check 기능과 관련된 모든 API가 지원 중단되었으며 GitLab 16.0에서 제거될 예정입니다. 감지된 라이선스를 기반으로 승인을 계속 강제하려는 사용자는 새 라이선스 승인 정책을 생성하는 것이 좋습니다.

외부 인증으로 개인 액세스 토큰 및 배포 토큰 접근 제한#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

외부 인증이 활성화된 경우 개인 액세스 토큰(PAT) 및 배포 토큰은 더 이상 컨테이너 또는 패키지 레지스트리에 액세스할 수 없습니다. 이 심층 방어 보안 조치는 16.0에 배포됩니다. PAT 및 배포 토큰을 사용하여 이러한 레지스트리에 액세스하는 사용자의 경우 이 조치로 이러한 토큰 사용이 중단됩니다. 컨테이너 또는 패키지 레지스트리에서 토큰을 사용하려면 외부 인증을 비활성화하세요.

GitLab Helm Chart의 주요 번들 Helm Chart 업데이트#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0에 맞춰 GitLab Helm Chart는 7.0 주요 버전을 출시합니다. 다음 주요 번들 차트 업데이트가 포함됩니다:

전체 GitLab Helm Chart 7.0 업그레이드 단계는 업그레이드 문서에서 확인할 수 있습니다.

Managed Licenses API#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Managed Licenses API는 이제 지원 중단되었으며 GitLab 16.0에서 제거될 예정입니다.

프로젝트당 최대 활성 파이프라인 수 제한 (ci_active_pipelines)#

  • GitLab 15.3에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

프로젝트당 최대 활성 파이프라인 수 제한은 기본적으로 활성화된 적이 없으며 GitLab 16.0에서 제거됩니다. 이 제한은 ci_active_pipelines 아래 Rails 콘솔에서도 구성할 수 있습니다. 대신 유사한 보호 기능을 제공하는 다른 권장 속도 제한을 사용하세요:

Prometheus를 통한 성능 메트릭 모니터링#

  • GitLab 14.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Prometheus 인스턴스에 저장된 데이터를 표시함으로써 GitLab은 사용자가 성능 메트릭을 볼 수 있도록 합니다. GitLab은 또한 대시보드에서 이러한 메트릭의 시각화를 표시합니다. 사용자는 이전에 구성된 외부 Prometheus 인스턴스에 연결하거나 Prometheus를 GitLab 관리 앱으로 설정할 수 있습니다. 그러나 GitLab에서 Kubernetes 클러스터와의 인증서 기반 통합이 지원 중단됨에 따라 Prometheus에 의존하는 GitLab의 메트릭 기능도 지원 중단됩니다. 여기에는 대시보드의 메트릭 시각화가 포함됩니다. GitLab은 Opstrace를 기반으로 한 단일 사용자 경험을 개발 중입니다. Opstrace 통합 작업을 팔로우하려면 이슈가 있습니다.

만료 없는 액세스 토큰#

  • GitLab 15.4에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

기존 프로젝트 액세스 토큰에 만료 날짜가 자동으로 적용되는지 여부는 사용 중인 GitLab 서비스 및 GitLab 16.0 이상으로 업그레이드한 시기에 따라 다릅니다:

  • GitLab.com에서 16.0 마일스톤 동안 만료 날짜가 없는 기존 프로젝트 액세스 토큰에는 현재 날짜로부터 365일 후의 만료 날짜가 자동으로 부여되었습니다.
  • GitLab Self-Managed에서 GitLab 15.11 이하에서 GitLab 16.0 이상으로 업그레이드한 경우:
    • 2024년 7월 23일 이전에는 만료 날짜가 없는 기존 프로젝트 액세스 토큰에 현재 날짜로부터 365일 후의 만료 날짜가 자동으로 부여되었습니다. 이 변경은 호환성 변경입니다.
    • 2024년 7월 24일 이후에는 만료 날짜가 없는 기존 프로젝트 액세스 토큰에 만료 날짜가 설정되지 않았습니다.

GitLab Self-Managed에서 다음 GitLab 버전 중 하나를 새로 설치하는 경우 기존 프로젝트 액세스 토큰에 만료 날짜가 자동으로 적용되지 않습니다:

  • 16.0.9
  • 16.1.7
  • 16.2.10
  • 16.3.8
  • 16.4.6
  • 16.5.9
  • 16.6.9
  • 16.7.9
  • 16.8.9
  • 16.9.10
  • 16.10.9
  • 16.11.7
  • 17.0.5
  • 17.1.3
  • 17.2.1

만료 날짜가 없는 액세스 토큰은 무기한 유효하므로 액세스 토큰이 유출될 경우 보안 위험이 됩니다. 만료 날짜가 있는 액세스 토큰이 더 좋기 때문에 GitLab 15.3부터 기본 만료 날짜를 채웁니다.

GitLab 16.0에서 만료 날짜가 없는 개인, 프로젝트, 또는 그룹 액세스 토큰에는 자동으로 1년의 만료 날짜가 설정됩니다.

회사의 보안 정책에 맞게 기본값이 적용되기 전에 액세스 토큰에 만료 날짜를 부여하는 것이 좋습니다:

  • GitLab.com의 경우 16.0 마일스톤 동안
  • GitLab Self-Managed의 경우 16.0으로 업그레이드할 때

비표준 기본 Redis 포트 지원 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Redis 설정 파일이 없이 GitLab이 시작되면 GitLab은 localhost:6380, localhost:6381, localhost:6382에서 세 개의 Redis 서버에 연결할 수 있다고 가정합니다. localhost:6379에 하나의 Redis 서버가 있다고 가정하도록 이 동작을 변경하고 있습니다.

세 서버를 유지하려는 관리자는 config/redis.cache.yml, config/redis.queues.yml, config/redis.shared_state.yml 파일을 편집하여 Redis URL을 구성해야 합니다.

삭제 보호 설정에서 즉시 프로젝트 삭제 옵션 지원 중단#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Admin 영역의 그룹 및 프로젝트 삭제 보호 설정에는 그룹과 프로젝트를 즉시 삭제하는 옵션이 있었습니다. 16.0부터 이 옵션은 더 이상 사용할 수 없으며 지연된 그룹 및 프로젝트 삭제가 기본 동작이 됩니다.

이 옵션은 더 이상 그룹 설정으로 표시되지 않습니다. GitLab Self-Managed 사용자는 여전히 삭제 지연 기간을 정의할 수 있으며 GitLab.com 사용자는 조정 불가능한 기본 보존 기간인 7일을 갖습니다. 사용자는 여전히 프로젝트 설정에서 프로젝트를, 그룹 설정에서 그룹을 즉시 삭제할 수 있습니다.

기본적으로 그룹과 프로젝트를 즉시 삭제하는 옵션은 사용자가 실수로 이 작업을 수행하여 그룹과 프로젝트를 영구적으로 잃는 것을 방지하기 위해 지원 중단되었습니다.

PostgreSQL 12 지원 중단#

  • GitLab 15.0에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

PostgreSQL 12에 대한 지원은 GitLab 16.0에서 제거될 예정입니다. GitLab 16.0에서 PostgreSQL 13이 최소 필요 PostgreSQL 버전이 됩니다.

PostgreSQL 12는 전체 GitLab 15 릴리스 사이클 동안 지원됩니다. GitLab 16.0 이전에 업그레이드하려는 인스턴스를 위해 PostgreSQL 13도 지원됩니다.

PostgreSQL 13에 대한 Geo 지원은 GitLab 15.2에서 추가되었습니다.

Projects API 필드 operations_access_level 지원 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Projects API에서 operations_access_level 필드를 지원 중단합니다. 이 필드는 특정 기능을 제어하는 필드로 교체되었습니다: releases_access_level, environments_access_level, feature_flags_access_level, infrastructure_access_level, monitor_access_level.

베어 리포지터리 임포트를 위한 Rake 태스크#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

베어 리포지터리 임포트를 위한 Rake 태스크(gitlab:import:repos)는 GitLab 15.8에서 지원 중단되었으며 GitLab 16.0에서 제거됩니다.

이 Rake 태스크는 리포지터리의 디렉터리 트리를 GitLab 인스턴스에 임포트합니다. 이러한 리포지터리는 Rake 태스크가 특정 디렉터리 구조 또는 특정 사용자 정의 Git 설정(gitlab.fullpath)에 의존하므로 이전에 GitLab에서 관리되어야 했습니다.

이 Rake 태스크를 사용하여 리포지터리를 임포트하는 데는 제한 사항이 있습니다. Rake 태스크:

  • 프로젝트 및 프로젝트 위키 리포지터리만 알고 있으며 디자인, 그룹 위키 또는 스니펫용 리포지터리를 지원하지 않습니다.
  • 지원되지 않는 경우에도 해시되지 않은 스토리지 프로젝트를 임포트할 수 있도록 허용합니다.
  • Git 설정 gitlab.fullpath가 설정되어 있어야 합니다. 에픽 8953에서 이 설정에 대한 지원 제거를 제안합니다.

gitlab:import:repos Rake 태스크 대신 사용할 수 있는 대안:

Redis 5 지원 중단#

  • GitLab 15.3에서 발표
  • GitLab 15.6에서 지원 종료
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 13.9에서 Omnibus GitLab 패키지 및 GitLab Helm 차트 4.9에서 Redis 버전이 Redis 6으로 업데이트되었습니다. Redis 5는 2022년 4월에 수명 종료에 도달했으며 GitLab 15.6부터 더 이상 지원되지 않습니다. 자체 Redis 5.0 인스턴스를 사용 중인 경우 GitLab 16.0 이상으로 업그레이드하기 전에 Redis 6.0 이상으로 업그레이드해야 합니다.

POST /jobs/request 러너 엔드포인트에서 job_age 매개변수 제거#

  • GitLab 15.2에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Runner와의 통신에 사용되는 POST /jobs/request API 엔드포인트에서 반환되는 job_age 매개변수는 GitLab 또는 Runner 기능에서 사용된 적이 없습니다. 이 매개변수는 GitLab 16.0에서 제거됩니다.

이는 엔드포인트에서 이 매개변수가 반환되는 것에 의존하는 자체 러너를 개발한 경우 호환성 변경이 될 수 있습니다. GitLab.com의 공개 공유 러너를 포함하여 공식 릴리스된 버전의 GitLab Runner를 사용하는 경우에는 호환성 변경이 아닙니다.

GitLab 16.0의 SAST 분석기 커버리지 변경#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST는 다양한 분석기를 사용하여 취약점에 대한 코드를 스캔합니다.

GitLab SAST에서 기본으로 사용되는 지원 분석기 수를 줄이고 있습니다. 이것은 다양한 프로그래밍 언어에서 더 빠르고 일관된 사용자 경험을 제공하기 위한 장기적인 전략의 일환입니다.

GitLab 16.0부터 GitLab SAST CI/CD 템플릿은 .NET에 대해 Security Code Scan 기반 분석기를 더 이상 사용하지 않으며 지원 종료 상태로 전환됩니다. 이 분석기를 SAST CI/CD 템플릿에서 제거하고 Semgrep 기반 분석기에서 C#에 대한 GitLab 지원 감지 규칙으로 교체합니다.

즉시 적용되어 이 분석기는 보안 업데이트만 받게 됩니다. 다른 일상적인 개선이나 업데이트는 보장되지 않습니다. GitLab 16.0에서 이 분석기가 지원 종료에 도달한 후에는 더 이상 업데이트가 제공되지 않습니다. 그러나 이 분석기에 대해 이전에 게시된 컨테이너 이미지를 삭제하거나 사용자 정의 CI/CD 파이프라인 작업을 사용하여 실행하는 기능을 제거하지는 않습니다.

지원 중단된 분석기에서 취약점 발견을 이미 해제한 경우 교체 분석기는 이전 해제를 존중하려고 시도합니다. 시스템 동작은 다음에 따라 다릅니다:

  • 과거에 Semgrep 기반 분석기 실행을 제외했는지 여부
  • 프로젝트의 취약성 보고서에 표시된 취약점을 어떤 분석기가 먼저 발견했는지

자세한 내용은 취약점 번역 문서를 참조하세요.

영향을 받은 분석기에 사용자 정의를 적용했거나 현재 파이프라인에서 Semgrep 기반 분석기를 비활성화한 경우 이 변경에 대한 지원 중단 이슈에 설명된 대로 조치를 취해야 합니다.

업데이트: 이 변경의 범위를 축소했습니다. GitLab 16.0에서 다음 변경 사항은 더 이상 적용하지 않습니다:

  1. PHPCS Security Audit 기반 분석기에 대한 지원을 제거하고 Semgrep 기반 분석기의 GitLab 관리 감지 규칙으로 교체
  2. SpotBugs 기반 분석기의 범위에서 Scala를 제거하고 Semgrep 기반 분석기의 GitLab 관리 감지 규칙으로 교체

PHPCS Security Audit 기반 분석기 교체 작업은 이슈 364060에서 추적되며 Scala 스캐닝을 Semgrep 기반 분석기로 마이그레이션하는 작업은 이슈 362958에서 추적됩니다.

Secure 분석기 주요 버전 업데이트#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Secure 스테이지는 GitLab 16.0 릴리스와 함께 분석기의 주요 버전을 올립니다. 이 업데이트는 다음 시기에 릴리스된 분석기를 명확하게 구분합니다:

  • 2023년 5월 22일 이전에 릴리스된 것
  • 2023년 5월 22일 이후에 릴리스된 것

기본 포함 템플릿을 사용하지 않거나 분석기 버전을 고정한 경우 고정된 버전을 제거하거나 최신 주요 버전으로 업데이트하도록 CI/CD 작업 정의를 업데이트해야 합니다. GitLab 13.0-15.10 사용자는 GitLab 16.0이 릴리스될 때까지 정상적으로 분석기 업데이트를 계속 받게 되며, 그 후 모든 새로 수정된 버그와 릴리스된 기능은 분석기의 새 주요 버전에서만 릴리스됩니다. 유지 관리 정책에 따라 지원 중단된 버전에는 버그와 기능을 백포트하지 않습니다. 필요한 경우 보안 패치는 최신 3개 마이너 릴리스 내에서 백포트됩니다.

특히 다음이 지원 중단되며 16.0 GitLab 릴리스 후 더 이상 업데이트되지 않습니다:

  • API 퍼징: 버전 2
  • 컨테이너 스캐닝: 버전 5
  • 커버리지 가이드 퍼즈 테스팅: 버전 3
  • 의존성 스캐닝: 버전 3
  • 동적 애플리케이션 보안 테스팅(DAST): 버전 3
  • DAST API: 버전 2
  • IaC 스캐닝: 버전 3
  • 라이선스 스캐닝: 버전 4
  • 시크릿 감지: 버전 4
  • 정적 애플리케이션 보안 테스팅(SAST): 모든 분석기 버전 3
    • brakeman: 버전 3
    • flawfinder: 버전 3
    • kubesec: 버전 3
    • mobsf: 버전 3
    • nodejs-scan: 버전 3
    • phpcs-security-audit: 버전 3
    • pmd-apex: 버전 3
    • security-code-scan: 버전 3
    • semgrep: 버전 3
    • sobelow: 버전 3
    • spotbugs: 버전 3

보안 스캐닝 CI/CD 템플릿이 새 작업 rules 사용#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

보안 스캐닝을 위한 GitLab 관리 CI/CD 템플릿이 GitLab 16.0 릴리스에서 업데이트됩니다. 업데이트에는 CI/CD 템플릿의 최신 버전에서 이미 릴리스된 개선 사항이 포함됩니다. 사용자 정의 CI/CD 파이프라인 구성을 중단할 가능성이 있기 때문에 이러한 변경 사항을 최신 템플릿 버전에 릴리스했습니다.

모든 업데이트된 템플릿에서 값이 "true"인 경우에만 스캐닝을 비활성화하도록 SAST_DISABLEDDEPENDENCY_SCANNING_DISABLED와 같은 변수의 정의를 업데이트하고 있습니다. 이전에는 값이 "false"여도 스캐닝이 비활성화되었습니다.

다음 템플릿이 업데이트됩니다:

위에 나열된 템플릿 중 하나를 사용하고 _DISABLED 변수를 사용하지만 "true" 이외의 값을 설정하는 경우 16.0 릴리스 전에 파이프라인을 테스트하는 것이 좋습니다.

업데이트: 영향을 받은 템플릿의 rules를 기본적으로 머지 리퀘스트 파이프라인에서 실행하도록 업데이트할 것이라고 이전에 발표했습니다. 그러나 지원 중단 이슈에서 논의된 호환성 문제로 인해 GitLab 16.0에서는 이 변경을 더 이상 적용하지 않습니다. 위에서 설명한 _DISABLED 변수에 대한 변경 사항은 계속 릴리스합니다.

보안 보고서 스키마 버전 14.x.x#

  • GitLab 15.3에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

버전 14.x.x 보안 보고서 스키마는 지원 중단됩니다.

GitLab 15.8 이상에서 스키마 버전 14.x.x를 사용하는 보안 보고서 스캐너 통합은 파이프라인의 Security 탭에 지원 중단 경고를 표시합니다.

GitLab 16.0 이상에서 이 기능은 제거됩니다. 스키마 버전 14.x.x를 사용하는 보안 보고서는 파이프라인의 Security 탭에서 오류를 발생시킵니다.

자세한 내용은 보안 보고서 유효성 검사를 참조하세요.

Kubernetes용 GitLab 에이전트 설정의 Starboard 지시자#

  • GitLab 15.4에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 컨테이너 스캐닝 기능은 더 이상 starboard 설치가 필요하지 않습니다. 따라서 Kubernetes용 GitLab 에이전트 설정 파일에서 starboard: 지시자 사용은 이제 지원 중단되었으며 GitLab 16.0에서 제거될 예정입니다. 설정 파일을 업데이트하여 container_scanning: 지시자를 사용하세요.

Windows Server 2004 및 20H2 기반 GitLab Runner 이미지 게시 중단#

  • GitLab 16.0에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0부터 Windows Server 2004 및 20H2를 기반으로 하는 GitLab Runner 이미지는 해당 운영 체제가 수명 종료되었으므로 제공되지 않습니다.

Praefect 사용자 정의 메트릭 엔드포인트 설정 지원#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

prometheus_exclude_database_from_default_metrics 설정 값 사용에 대한 지원은 GitLab 15.9에서 지원 중단되었으며 GitLab 16.0에서 제거됩니다. 이 설정 값을 사용하는 것이 성능에 좋지 않기 때문에 제거합니다. 이 변경으로 다음 메트릭이 /metrics에서 사용 불가능해집니다:

  • gitaly_praefect_unavailable_repositories
  • gitaly_praefect_verification_queue_depth
  • gitaly_praefect_replication_queue_depth

메트릭 수집 대상을 /db_metrics도 스크레이프하도록 업데이트해야 할 수 있습니다.

Terraform 상태 이름의 마침표(.) 지원으로 기존 상태 중단 가능#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에는 마침표가 포함된 Terraform 상태 이름이 지원되지 않았습니다. 그러나 해결책을 통해 마침표가 있는 상태 이름을 여전히 사용할 수 있었습니다.

GitLab 15.7은 마침표가 포함된 상태 이름에 대한 완전한 지원을 추가했습니다. 이러한 상태 이름을 처리하기 위해 해결책을 사용했다면 작업이 실패하거나 처음으로 Terraform을 실행한 것처럼 보일 수 있습니다.

문제를 해결하려면:

  1. 마침표와 그 뒤에 오는 문자를 제외하여 상태 파일에 대한 모든 참조를 변경하세요.
    • 예를 들어 상태 이름이 state.name인 경우 모든 참조를 state로 변경하세요.
  2. Terraform 명령을 실행하세요.

마침표를 포함한 전체 상태 이름을 사용하려면 전체 상태 파일로 마이그레이션하세요.

API가 더 이상 Kubernetes 에이전트의 취소된 토큰을 반환하지 않음#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

현재 Cluster Agents API 엔드포인트에 대한 GET 요청은 취소된 토큰을 반환할 수 있습니다. GitLab 16.0에서 GET 요청은 취소된 토큰을 반환하지 않습니다.

이러한 엔드포인트에 대한 호출을 검토하고 취소된 토큰을 사용하지 않는지 확인해야 합니다.

이 변경은 다음 REST 및 GraphQL API 엔드포인트에 영향을 줍니다:

Phabricator 태스크 임포터 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Phabricator 태스크 임포터가 지원 중단됩니다. Phabricator 자체 프로젝트는 2021년 6월 1일부터 더 이상 적극적으로 유지 관리되지 않습니다. 이 도구를 사용한 임포트를 관찰하지 못했습니다. GitLab의 관련 오픈 이슈에는 활동이 없었습니다.

최신 Terraform 템플릿이 현재 안정적인 템플릿을 덮어씀#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

모든 GitLab 주요 버전에서 현재 최신 템플릿으로 안정적인 Terraform 템플릿을 업데이트합니다. 이 변경은 빠른 시작기본 템플릿에 영향을 줍니다.

새 템플릿은 기본 규칙과 함께 제공되므로 업데이트로 인해 Terraform 파이프라인이 중단될 수 있습니다. 예를 들어 Terraform 작업이 다운스트림 파이프라인으로 트리거되는 경우 GitLab 16.0에서 규칙이 작업을 트리거하지 않습니다.

변경 사항을 수용하려면 .gitlab-ci.yml 파일에서 rules를 조정해야 할 수 있습니다.

머지 리퀘스트에서 /draft 빠른 작업의 토글 동작#

  • GitLab 15.4에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

빠른 작업을 통해 머지 리퀘스트의 드래프트 상태를 토글하는 동작을 더 명확하게 하기 위해 /draft 빠른 작업의 토글 동작을 지원 중단하고 제거합니다. GitLab 16.0 릴리스부터 /draft는 머지 리퀘스트를 Draft로만 설정하고 새 /ready 빠른 작업을 사용하여 드래프트 상태를 제거합니다.

vulnerabilityFindingDismiss 뮤테이션에서 id 필드 사용#

  • GitLab 15.3에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

vulnerabilityFindingDismiss GraphQL 뮤테이션을 사용하여 취약점 발견의 상태를 Dismissed로 설정할 수 있습니다. 이전에는 이 뮤테이션이 id 필드를 사용하여 발견을 고유하게 식별했습니다. 그러나 이것은 파이프라인 보안 탭에서 발견을 해제하는 데 작동하지 않았습니다. 따라서 id 필드를 식별자로 사용하는 것은 uuid 필드를 위해 제외되었습니다. uuid 필드를 식별자로 사용하면 파이프라인 보안 탭에서 발견을 해제할 수 있습니다.

서드파티 컨테이너 레지스트리 사용 지원 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab을 인증 엔드포인트로 사용하는 서드파티 컨테이너 레지스트리 사용은 GitLab 15.8에서 지원 중단되었으며 지원 종료는 GitLab 16.0으로 예정되어 있습니다. 이는 컨테이너 이미지를 찾고 보고 삭제하기 위해 외부 레지스트리를 GitLab 사용자 인터페이스에 연결한 GitLab Self-Managed 사용자에게 영향을 줍니다.

GitLab 컨테이너 레지스트리와 서드파티 컨테이너 레지스트리 모두 지원하는 것은 유지 관리, 코드 품질, 하위 호환성 측면에서 어렵고 효율성 유지 능력을 저해합니다. 따라서 이 기능을 계속 지원하지 않을 것입니다.

이 변경은 파이프라인을 사용하여 외부 레지스트리에 컨테이너 이미지를 가져오고 푸시하는 기능에 영향을 주지 않습니다.

GitLab.com의 새 GitLab 컨테이너 레지스트리 버전을 릴리스한 이후 서드파티 컨테이너 레지스트리에서 사용할 수 없는 추가 기능 구현을 시작했습니다. 이러한 새 기능을 통해 정리 정책과 같은 상당한 성능 개선을 달성할 수 있었습니다. 대부분 GitLab 컨테이너 레지스트리에서만 사용 가능한 기능이 필요한 새 기능 제공에 집중하고 있습니다. 이 지원 중단을 통해 보다 강력한 통합 레지스트리 경험과 기능 세트를 제공하는 데 집중함으로써 장기적인 단편화와 사용자 불만을 줄일 수 있습니다.

앞으로 GitLab 컨테이너 레지스트리에서만 사용할 수 있는 새 기능 개발 및 릴리스에 계속 투자할 것입니다.

경로 끝에 전역 ID가 있는 작업 항목 경로 지원 중단#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

작업 항목 URL에서 전역 ID 사용은 지원 중단됩니다. 향후에는 내부 ID(IID)만 지원됩니다.

GitLab은 여러 작업 항목 유형을 지원하므로 https://gitlab.com/gitlab-org/gitlab/-/work_items/<global_id>와 같은 경로는 예를 들어 태스크 또는 OKR을 표시할 수 있습니다.

GitLab 15.10에서 다음 형식으로 경로 끝에 쿼리 매개변수(iid_path)를 추가하여 내부 ID(IID) 사용에 대한 지원을 추가했습니다: https://gitlab.com/gitlab-org/gitlab/-/work_items/<iid>?iid_path=true.

GitLab 16.0에서 작업 항목 경로에서 전역 ID를 사용하는 기능을 제거합니다. 경로 끝의 숫자는 쿼리 매개변수를 추가할 필요 없이 내부 ID(IID)로 간주됩니다. 다음 형식만 지원됩니다: https://gitlab.com/gitlab-org/gitlab/-/work_items/<iid>.

CI_BUILD_* 미리 정의된 변수#

  • GitLab 14.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

CI_BUILD_*로 시작하는 미리 정의된 CI/CD 변수는 GitLab 9.0에서 지원 중단되었으며 GitLab 16.0에서 제거됩니다. 이 변수를 여전히 사용 중이라면 기능적으로 동일한 미리 정의된 변수로 변경해야 합니다:

제거된 변수 대체 변수
CI_BUILD_BEFORE_SHA CI_COMMIT_BEFORE_SHA
CI_BUILD_ID CI_JOB_ID
CI_BUILD_MANUAL CI_JOB_MANUAL
CI_BUILD_NAME CI_JOB_NAME
CI_BUILD_REF CI_COMMIT_SHA
CI_BUILD_REF_NAME CI_COMMIT_REF_NAME
CI_BUILD_REF_SLUG CI_COMMIT_REF_SLUG
CI_BUILD_REPO CI_REPOSITORY_URL
CI_BUILD_STAGE CI_JOB_STAGE
CI_BUILD_TAG CI_COMMIT_TAG
CI_BUILD_TOKEN CI_JOB_TOKEN
CI_BUILD_TRIGGERED CI_PIPELINE_TRIGGERED

POST ci/lint API 엔드포인트 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

POST ci/lint API 엔드포인트는 15.7에서 지원 중단되었으며 16.0에서 제거됩니다. 이 엔드포인트는 CI/CD 설정 옵션의 전체 범위를 검증하지 않습니다. 대신 CI/CD 설정을 올바르게 검증하는 POST /projects/:id/ci/lint를 사용하세요.

DORA API의 environment_tier 매개변수#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

혼란과 중복을 피하기 위해 environment_tier 매개변수는 environment_tiers 매개변수를 위해 지원 중단됩니다. 새 environment_tiers 매개변수를 사용하면 DORA API가 여러 티어에 대한 집계 데이터를 동시에 반환할 수 있습니다. environment_tier 매개변수는 GitLab 16.0에서 제거됩니다.

PipelineSecurityReportFinding GraphQL 유형의 name 필드#

  • GitLab 15.1에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에 PipelineSecurityReportFinding GraphQL 유형이 업데이트되어 새 title 필드가 포함되었습니다. 이 필드는 현재 name 필드의 별칭으로, 덜 구체적인 name 필드가 중복됩니다. name 필드는 GitLab 16.0에서 PipelineSecurityReportFinding 유형에서 제거됩니다.

started 이터레이션 상태#

  • GitLab 14.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이터레이션 GraphQL API이터레이션 REST APIstarted 이터레이션 상태는 지원 중단됩니다.

GraphQL API 버전은 GitLab 16.0에서 제거됩니다. 이 상태는 마일스톤과 같은 다른 시간 기반 엔티티에 대한 명명과 일치하는 이미 사용 가능한 current 상태로 교체됩니다.

다음 v5 REST API 버전까지 REST API 버전에서 started 상태를 계속 지원할 계획입니다.

vulnerabilityFindingDismiss GraphQL 뮤테이션#

  • GitLab 15.5에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

VulnerabilityFindingDismiss GraphQL 뮤테이션은 지원 중단되며 GitLab 16.0에서 제거됩니다. 이 뮤테이션은 취약점 발견 ID가 사용자에게 제공되지 않았기 때문에 자주 사용되지 않았습니다(이 필드는 15.3에서 지원 중단되었습니다). 사용자는 대신 취약성 보고서에서 취약점을 해제하기 위해 VulnerabilityDismiss를 사용하거나 CI 파이프라인 보안 탭의 보안 발견에 대해 SecurityFindingDismiss를 사용해야 합니다.

GitLab 15.11#

openSUSE Leap 15.3 패키지#

  • GitLab 15.8에서 발표
  • GitLab 15.11에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

openSUSE Leap 15.3의 배포 지원 및 보안 업데이트는 2022년 12월에 종료되었습니다.

GitLab 15.7부터 openSUSE Leap 15.4용 패키지를 제공하기 시작했으며 15.11 마일스톤에서 openSUSE Leap 15.3용 패키지 제공을 중단합니다.

  • openSUSE Leap 15.3 패키지에서 제공된 15.4 패키지로 전환하세요.

GitLab 15.10#

OpenStack Swift 및 Rackspace API를 사용한 자동 백업 업로드#

  • GitLab 15.8에서 발표
  • GitLab 15.10에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OpenStack Swift 및 Rackspace API를 사용하여 원격 스토리지에 백업 업로드 지원을 지원 중단합니다. 이러한 API에 대한 지원은 더 이상 적극적으로 유지 관리되지 않으며 Ruby 3에 대해 업데이트되지 않은 서드파티 라이브러리에 의존합니다. GitLab은 Ruby 2 EOL 이전에 보안 패치를 최신 상태로 유지하기 위해 Ruby 3로 전환하고 있습니다.

  • OpenStack을 사용 중인 경우 Swift 대신 S3 API를 사용하도록 설정을 변경해야 합니다.
  • Rackspace 스토리지를 사용 중인 경우 다른 공급자로 전환하거나 백업 태스크가 완료된 후 수동으로 백업 파일을 업로드해야 합니다.

GitLab 15.9#

Web IDE에서 Live Preview 더 이상 사용 불가#

  • GitLab 15.8에서 발표
  • GitLab 15.9에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Web IDE의 Live Preview 기능은 정적 웹 애플리케이션의 클라이언트 측 미리 보기를 제공하기 위한 것이었습니다. 그러나 복잡한 설정 단계와 지원되는 프로젝트 유형의 좁은 범위로 인해 유용성이 제한되었습니다. GitLab 15.7에서 Web IDE Beta를 도입하면서 이제 전체 서버 측 런타임 환경에 연결할 수 있습니다. Web IDE에서 확장 프로그램 설치에 대한 향후 지원으로 Live Preview에서 사용할 수 있는 것보다 더 고급 워크플로도 지원합니다. GitLab 15.9부터 Live Preview는 Web IDE에서 더 이상 사용할 수 없습니다.

omniauth-authentiq gem 더 이상 사용 불가#

  • GitLab 15.9에서 발표
  • GitLab 15.9에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

omniauth-authentiq는 GitLab의 일부인 OmniAuth 전략 gem이었습니다. 인증 서비스를 제공하는 회사인 Authentiq가 서비스를 종료했습니다. 따라서 이 gem이 제거됩니다.

GitLab 15.7#

.gitlab-ci.yml에서 파일 유형 변수 확장#

  • GitLab 15.5에서 발표
  • GitLab 15.7에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에는 파일 변수를 참조하거나 별칭을 적용하는 변수가 File 유형 변수의 값, 예를 들어 파일 내용을 확장했습니다. 이 동작은 일반적인 셸 변수 확장 규칙을 준수하지 않았으므로 올바르지 않았습니다. File 유형 변수에 저장된 시크릿이나 민감한 정보를 유출하기 위해 사용자는 변수를 입력 매개변수로 사용하여 $echo 명령을 실행할 수 있었습니다.

이 호환성 변경은 이 문제를 수정하지만 동작을 우회하는 사용자 워크플로를 중단시킬 수 있습니다. 이 변경으로 파일 변수를 참조하거나 별칭 파일 변수를 적용하는 작업 변수 확장은 파일 내용과 같은 값 대신 File 유형 변수의 파일 이름 또는 경로로 확장됩니다.

Flowdock 통합#

  • GitLab 15.7에서 발표
  • GitLab 15.7에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

2022년 12월 22일부로 서비스가 2022년 8월 15일에 종료되었으므로 Flowdock 통합을 제거합니다.

GitLab 15.6#

Git 리포지터리 스토리지용 NFS#

  • GitLab 14.0에서 발표
  • GitLab 15.6에서 제거

Gitaly 클러스터의 GA(GitLab 13.0에서 도입)와 함께 GitLab 14.0에서 Git 리포지터리 스토리지용 NFS 개발(버그 수정, 성능 개선 등)을 지원 중단했습니다. 14.x 전반에 걸쳐 NFS for Git 리포지터리에 대한 기술 지원을 계속 제공하지만 2022년 11월 22일에 NFS에 대한 모든 지원을 제거합니다. 이것은 원래 2022년 5월 22일에 계획되었지만 Gitaly 클러스터의 지속적인 성숙을 허용하기 위해 지원 중단 날짜를 연장하기로 결정했습니다. 자세한 내용은 공식 지원 성명을 참조하세요.

Gitaly 클러스터는 고객에게 다음과 같은 엄청난 이점을 제공합니다:

현재 NFS for Git 리포지터리를 사용하는 고객은 Gitaly 클러스터로 마이그레이션에 대한 문서를 검토하여 마이그레이션 계획을 수립하는 것이 좋습니다.

GitLab 15.4#

번들 Grafana 지원 중단#

  • GitLab 15.3에서 발표
  • GitLab 15.4에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.4에서 번들 Grafana를 GitLab에서 유지 관리하는 Grafana 포크로 교체합니다.

Grafana에 대한 CVE가 식별되었으며 이 보안 취약점을 완화하기 위해 번들하던 이전 버전의 Grafana가 더 이상 장기 지원을 받지 않기 때문에 자체 포크로 전환해야 합니다.

이것은 이전 버전의 Grafana와 호환성 문제를 일으키지 않을 것으로 예상됩니다. 번들 버전을 사용하든 Grafana의 외부 인스턴스를 사용하든 마찬가지입니다.

SAST 분석기 통합 및 CI/CD 템플릿 변경#

  • GitLab 14.8에서 발표
  • GitLab 15.4에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST는 다양한 분석기를 사용하여 취약점에 대한 코드를 스캔합니다.

더 나은 일관된 사용자 경험을 제공하기 위한 장기적인 전략의 일환으로 GitLab SAST에서 사용되는 분석기 수를 줄이고 있습니다. 분석기 세트를 간소화하면 더 빠른 반복, 더 나은 결과, 더 높은 효율성(대부분의 경우 CI 러너 사용 감소 포함)이 가능합니다.

GitLab 15.4에서 GitLab SAST는 다음 분석기를 더 이상 사용하지 않습니다:

Note

이 변경은 원래 GitLab 15.0에 계획되었으며 GitLab 15.4로 연기되었습니다.

이러한 분석기는 GitLab 관리 SAST CI/CD 템플릿에서 제거되고 Semgrep 기반 분석기로 교체됩니다. 즉시 적용되어 보안 업데이트만 받게 됩니다. 다른 일상적인 개선이나 업데이트는 보장되지 않습니다. 이러한 분석기가 지원 종료에 도달한 후에는 더 이상 업데이트가 제공되지 않습니다. 이전에 이러한 분석기에 대해 게시된 컨테이너 이미지는 삭제하지 않습니다.

또한 SpotBugs 분석기의 범위에서 Java를 제거하고 Semgrep 기반 분석기로 교체합니다. 이 변경으로 Java 코드 스캔이 더 간단해집니다. 더 이상 컴파일이 필요하지 않습니다. 이 변경은 GitLab 관리 SAST CI/CD 템플릿의 자동 언어 감지 부분에 반영됩니다. SpotBugs 기반 분석기는 Groovy, Kotlin, Scala를 계속 지원합니다.

지원 중단된 분석기 중 하나에서 취약점 발견을 이미 해제한 경우 교체 분석기는 이전 해제를 존중하려고 시도합니다.

GitLab 15.3#

취약점 보고서 State별 정렬#

  • GitLab 15.0에서 발표
  • GitLab 15.3에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

State 열로 취약점 보고서를 정렬하는 기능은 기본 데이터 모델 리팩터링으로 인해 GitLab 14.10에서 비활성화되어 기능 플래그 뒤에 놓였습니다. 이 값으로 정렬이 성능을 유지하도록 하기 위해 추가 리팩터링이 필요하여 기능 플래그가 기본적으로 꺼져 있었습니다. State 열의 정렬 사용량이 매우 낮아 코드베이스를 단순화하고 원하지 않는 성능 저하를 방지하기 위해 기능 플래그를 제거합니다.

취약점 보고서 Tool별 정렬#

  • GitLab 15.1에서 발표
  • GitLab 15.3에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Tool 열(스캔 유형)로 취약점 보고서를 정렬하는 기능은 기본 데이터 모델 리팩터링으로 인해 GitLab 14.10에서 비활성화되어 기능 플래그 뒤에 놓였습니다. 이 값으로 정렬이 성능을 유지하도록 하기 위해 추가 리팩터링이 필요하여 기능 플래그가 기본적으로 꺼져 있었습니다. Tool 열의 정렬 사용량이 매우 낮아 코드베이스를 단순화하고 원하지 않는 성능 저하를 방지하기 위해 GitLab 15.3에서 기능 플래그를 제거합니다.

GitLab 15.1#

Debian 9 지원 중단#

  • GitLab 14.9에서 발표
  • GitLab 15.1에서 제거

Debian 9 Stretch의 장기 서비스 및 지원(LTSS)은 2022년 7월에 종료됩니다. 따라서 GitLab 패키지에 대한 Debian 9 배포판을 더 이상 지원하지 않습니다. 사용자는 Debian 10 또는 Debian 11로 업그레이드할 수 있습니다.

GitLab 15.0#

리포지터리 푸시 이벤트에 대한 감사 이벤트#

  • GitLab 14.3에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

리포지터리 이벤트에 대한 감사 이벤트는 이제 지원 중단되었으며 GitLab 15.0에서 제거됩니다.

이러한 이벤트는 항상 기본적으로 비활성화되어 있었으며 기능 플래그를 사용하여 수동으로 활성화해야 했습니다. 이를 활성화하면 너무 많은 이벤트가 생성될 수 있어 GitLab 인스턴스가 크게 느려질 수 있습니다. 이러한 이유로 제거됩니다.

오브젝트 스토리지를 위한 백그라운드 업로드#

  • GitLab 14.9에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

오브젝트 스토리지 기능의 전반적인 복잡성과 유지 관리 부담을 줄이기 위해 background_upload를 사용하여 파일을 업로드하는 지원이 지원 중단되었으며 GitLab 15.0에서 완전히 제거됩니다.

이는 소수의 오브젝트 스토리지 공급자에게 영향을 줍니다:

  • OpenStack OpenStack을 사용하는 고객은 Swift 대신 S3 API를 사용하도록 설정을 변경해야 합니다.
  • RackSpace RackSpace 기반 오브젝트 스토리지를 사용하는 고객은 데이터를 다른 공급자로 마이그레이션해야 합니다.

GitLab은 영향을 받는 고객이 마이그레이션하는 데 도움이 되는 추가 지침을 게시합니다.

CI/CD 작업 이름 길이 제한#

  • GitLab 14.6에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.0에서 CI/CD 작업 이름의 문자 수를 255자로 제한합니다. 작업 이름이 255자 제한을 초과하는 파이프라인은 15.0 릴리스 이후 작동을 중단합니다.

인스턴스(공유) 러너를 프로젝트(특정) 러너로 변경#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.0에서 더 이상 인스턴스(공유) 러너를 프로젝트(특정) 러너로 변경할 수 없습니다.

사용자가 실수로 인스턴스 러너를 프로젝트 러너로 변경하는 경우가 있으며 다시 변경할 수 없습니다. GitLab은 보안상의 이유로 프로젝트 러너를 공유 러너로 변경할 수 없습니다. 하나의 프로젝트를 위한 러너가 전체 인스턴스에 대한 작업을 실행하도록 설정될 수 있습니다.

여러 프로젝트에 러너를 추가해야 하는 관리자는 한 프로젝트에 대한 러너를 등록한 다음 Admin 보기로 이동하여 추가 프로젝트를 선택할 수 있습니다.

컨테이너 네트워크 및 호스트 보안#

GitLab 컨테이너 네트워크 보안 및 컨테이너 호스트 보안 카테고리와 관련된 모든 기능은 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다. 이 기능의 대체품이 필요한 사용자는 GitLab 외부에서 설치 및 관리할 수 있는 잠재적인 솔루션으로 다음 오픈 소스 프로젝트를 평가하는 것이 좋습니다: AppArmor, Cilium, Falco, FluentD, Pod Security Admission.

이러한 기술을 GitLab에 통합하려면 원하는 Helm 차트를 클러스터 관리 프로젝트 템플릿에 추가하세요. GitLab CI/CD를 통해 명령을 호출하여 프로덕션에서 이러한 Helm 차트를 배포하세요.

이 변경의 일부로 GitLab 내의 다음 특정 기능이 이제 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다:

  • Security & Compliance > Threat Monitoring 페이지
  • Security & Compliance > Policies 페이지에 있는 Network Policy 보안 정책 유형
  • GitLab을 통해 AppArmor, Cilium, Falco, FluentD, Pod Security Policies 기술 통합 관리 기능
  • 위 기능과 관련된 모든 API

14.0.0 미만의 컨테이너 스캐닝 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 컨테이너 스캐닝 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 스키마 버전에 대한 유효성 검사를 통과하지 못하는 보고서도 GitLab 15.0에서 더 이상 지원되지 않습니다.

파이프라인 작업 아티팩트로 컨테이너 스캐닝 보안 보고서를 출력하여 GitLab과 통합하는 서드파티 도구가 영향을 받습니다. 모든 출력 보고서가 14.0.0 이상의 최소 버전으로 올바른 스키마를 준수하는지 확인해야 합니다. 더 낮은 버전이거나 선언된 스키마 버전에 대한 유효성 검사에 실패하는 보고서는 처리되지 않으며 취약점 발견이 MR, 파이프라인 또는 취약점 보고서에 표시되지 않습니다.

14.0.0 미만의 커버리지 가이드 퍼징 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 미만의 커버리지 가이드 퍼징 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 스키마 버전에 대한 유효성 검사를 통과하지 못하는 보고서도 GitLab 15.0에서 더 이상 지원되지 않습니다.

14.0.0 미만의 DAST 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 DAST 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 스키마 버전에 대한 유효성 검사를 통과하지 못하는 보고서도 GitLab 15.0부터 더 이상 지원되지 않습니다.

의존성 스캐닝 Python 3.9 및 3.6 이미지 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Python 프로젝트에 의존성 스캐닝을 사용하는 경우 Python 3.6을 사용하는 기본 gemnasium-python:2 이미지와 Python 3.9를 사용하는 사용자 정의 gemnasium-python:2-python-3.9 이미지를 지원 중단합니다. GitLab 15.0부터 새 기본 이미지는 지원되는 버전인 Python 3.9가 되며 3.6은 더 이상 지원되지 않습니다.

의존성 스캐닝 기본 Java 버전이 17로 변경#

GitLab 15.0에서 의존성 스캐닝의 경우 스캐너가 예상하는 Java의 기본 버전이 11에서 17로 업데이트됩니다. Java 17은 최신 장기 지원(LTS) 버전입니다. 의존성 스캐닝은 동일한 버전 범위(8, 11, 13, 14, 15, 16, 17)를 계속 지원하며 기본 버전만 변경됩니다. 프로젝트가 이전 기본값인 Java 11을 사용하는 경우 DS_Java_Version 변수를 일치하도록 설정해야 합니다.

14.0.0 미만의 의존성 스캐닝 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 의존성 스캐닝 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다.

Geo Admin UI 라우트 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 13.0에서 Geo Admin UI에 새 프로젝트 및 디자인 복제 세부 정보 라우트를 도입했습니다. 이 라우트는 /admin/geo/replication/projects/admin/geo/replication/designs입니다. 레거시 라우트를 유지하고 새 라우트로 리디렉션했습니다. GitLab 15.0에서 레거시 라우트 /admin/geo/projects/admin/geo/designs에 대한 지원을 제거합니다. 레거시 라우트를 사용하는 북마크나 스크립트를 업데이트하세요.

사용자 정의 Geo:db:* Rake 태스크 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.8에서 Geo 추적 데이터베이스가 Rails 6의 다중 데이터베이스 지원을 사용하도록 전환한 후 가능해진 내장 태스크로 geo:db:* Rake 태스크를 교체합니다. 다음 geo:db:* 태스크는 해당 db:*:geo 태스크로 교체됩니다:

  • geo:db:drop -> db:drop:geo
  • geo:db:create -> db:create:geo
  • geo:db:setup -> db:setup:geo
  • geo:db:migrate -> db:migrate:geo
  • geo:db:rollback -> db:rollback:geo
  • geo:db:version -> db:version:geo
  • geo:db:reset -> db:reset:geo
  • geo:db:seed -> db:seed:geo
  • geo:schema:load:geo -> db:schema:load:geo
  • geo:db:schema:dump -> db:schema:dump:geo
  • geo:db:migrate:up -> db:migrate:up:geo
  • geo:db:migrate:down -> db:migrate:down:geo
  • geo:db:migrate:redo -> db:migrate:redo:geo
  • geo:db:migrate:status -> db:migrate:status:geo
  • geo:db:test:prepare -> db:test:prepare:geo
  • geo:db:test:load -> db:test:load:geo
  • geo:db:test:purge -> db:test:purge:geo

기능 플래그 PUSH_RULES_SUPERSEDE_CODE_OWNERS 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

PUSH_RULES_SUPERSEDE_CODE_OWNERS 기능 플래그는 GitLab 15.0에서 제거됩니다. 제거되면 푸시 규칙이 Code Owners보다 우선합니다. Code Owner 승인이 필요하더라도 특정 사용자가 코드를 푸시할 수 있도록 명시적으로 허용하는 푸시 규칙이 Code Owners 설정보다 우선합니다.

Elasticsearch 6.8#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Elasticsearch 6.8은 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다. Elasticsearch 6.8을 사용하는 고객은 GitLab 15.0으로 업그레이드하기 전에 Elasticsearch 버전을 7.x로 업그레이드해야 합니다. 모든 Elasticsearch 개선 사항의 혜택을 받으려면 최신 버전의 Elasticsearch 7을 사용하는 것이 좋습니다.

Elasticsearch 6.8은 GitLab 15.0에서 지원 계획인 Amazon OpenSearch와도 호환되지 않습니다.

보안 보고서 스키마 강제 유효성 검사#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

14.0.0 이하의 보안 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 스키마 버전에 대한 유효성 검사를 통과하지 못하는 보고서도 GitLab 15.0에서 더 이상 지원되지 않습니다.

외부 상태 확인 API 호환성 변경#

외부 상태 확인 API는 원래 상태 확인을 통과로 표시하기 위한 기본 통과 요청을 지원하도록 구현되었습니다. 기본 통과 요청은 이제 지원 중단됩니다. 특히 다음이 지원 중단됩니다:

  • status 필드를 포함하지 않는 요청
  • status 필드가 approved로 설정된 요청

GitLab 15.0부터 상태 확인은 status 필드가 존재하고 passed로 설정된 경우에만 통과 상태로 업데이트됩니다.

GitLab Pages 데몬 모드 실행#

  • GitLab 14.9에서 발표
  • GitLab 15.0에서 제거

15.0에서 GitLab Pages의 데몬 모드 지원이 제거됩니다.

GitLab Serverless#

  • GitLab 14.3에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Serverless는 자동 배포 및 모니터링으로 Knative 기반 서버리스 개발을 지원하는 기능 세트입니다.

GitLab Serverless 기능을 제거하기로 결정했습니다. 이 기능이 사용자들에게 실제로 공감을 얻지 못했기 때문입니다. 또한 Kubernetes 및 Knative의 지속적인 개발로 현재 구현이 최신 버전에서도 작동하지 않습니다.

라이선스 컴플라이언스에서 Godep 지원#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Go용 Godep 의존성 관리자는 2020년에 Go에서 지원 중단되었으며 Go 모듈로 대체되었습니다. 유지 관리 비용을 줄이기 위해 14.7부터 Godep 프로젝트에 대한 라이선스 컴플라이언스를 지원 중단하고 GitLab 15.0에서 제거합니다.

GraphQL ID 및 GlobalID 호환성#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

하위 호환성을 위해 추가한 GraphQL 프로세서에 대한 비표준 확장을 제거합니다. 이 확장은 GraphQL 쿼리의 유효성 검사를 수정하여 일반적으로 거부될 인수에 ID 유형 사용을 허용합니다.

GraphQL 패키지 설정 권한 변경#

GitLab 패키지 스테이지는 모든 의존성을 관리하는 데 도움이 되는 패키지 레지스트리, 컨테이너 레지스트리, 의존성 프록시를 제공합니다. 이러한 각 제품 카테고리에는 API를 사용하여 조정할 수 있는 다양한 설정이 있습니다.

GraphQL의 권한 모델이 업데이트되고 있습니다. 15.0 이후 Guest, Reporter, Developer 역할을 가진 사용자는 더 이상 이러한 설정을 업데이트할 수 없습니다:

GitLab Runner SSH 실행기에 필요한 알려진 호스트#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.3에서 GitLab Runner config.toml 파일에 설정 설정을 추가했습니다. 이 설정인 [runners.ssh.disable_strict_host_key_checking]은 SSH 실행기에서 엄격한 호스트 키 확인을 사용할지 여부를 제어합니다.

GitLab 15.0 이상에서 이 설정 옵션의 기본값이 true에서 false로 변경됩니다. 이는 GitLab Runner SSH 실행기를 사용할 때 엄격한 호스트 키 확인이 강제됨을 의미합니다.

라이선스 컴플라이언스 API의 레거시 승인 상태 이름#

  • GitLab 14.6에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

managed_licenses API에서 라이선스 정책의 승인 상태에 대한 레거시 이름(blacklisted, approved)을 지원 중단했지만 여전히 API 쿼리와 응답에 사용됩니다. 이것들은 15.0에서 제거됩니다.

라이선스 컴플라이언스 API를 사용 중인 경우 approvedblacklisted 쿼리 매개변수 사용을 중단해야 합니다. 이제 alloweddenied입니다. 15.0에서 응답도 approvedblacklisted 사용을 중단하므로 15.0 릴리스에서 중단되지 않도록 사용자 정의 도구를 조정해야 합니다.

레거시 데이터베이스 설정#

  • GitLab 14.3에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

database.yml에 있는 GitLab 데이터베이스 설정의 구문이 변경되고 레거시 형식이 지원 중단됩니다. 레거시 형식은 단일 PostgreSQL 어댑터 사용을 지원했지만 새 형식은 여러 데이터베이스를 지원하도록 변경됩니다. main: 데이터베이스는 첫 번째 설정 항목으로 정의해야 합니다.

이 지원 중단은 주로 Omnibus가 이 설정을 자동으로 처리하기 때문에 GitLab을 소스에서 컴파일하는 사용자에게 영향을 줍니다.

GitLab의 로깅#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab의 로깅 기능을 통해 사용자는 애플리케이션 로그를 집계하고 관리하기 위해 ELK 스택(Elasticsearch, Logstash, Kibana)을 설치할 수 있습니다. 사용자는 GitLab에서 관련 로그를 검색할 수 있습니다. 그러나 Kubernetes 클러스터 및 GitLab 관리 앱과의 인증서 기반 통합을 지원 중단한 이후 GitLab 내 로깅에 대한 권장 솔루션이 없습니다.

GitLab Shell에서 Gitaly로 custom_hooks_dir 설정 이동#

  • GitLab 14.9에서 발표
  • GitLab 15.0에서 제거

custom_hooks_dir 설정은 이제 Gitaly에서 구성되며 GitLab 15.0에서 GitLab Shell에서 제거됩니다.

OAuth 암묵적 부여#

OAuth 암묵적 부여 인증 흐름은 다음 주요 릴리스인 GitLab 15.0에서 제거됩니다. OAuth 암묵적 부여를 사용하는 모든 애플리케이션은 대안적인 지원 OAuth 흐름으로 전환해야 합니다.

만료 없는 OAuth 토큰#

기본적으로 모든 새 애플리케이션은 2시간 후에 액세스 토큰을 만료시킵니다. GitLab 14.2 이하에서 OAuth 액세스 토큰에는 만료가 없었습니다. GitLab 15.0에서 이미 만료가 없는 기존 토큰에 만료가 자동으로 생성됩니다.

GitLab 15.0이 릴리스되기 전에 만료 토큰을 옵트인해야 합니다:

  1. 애플리케이션을 편집합니다.
  2. Expire access tokens를 선택하여 활성화합니다. 토큰은 취소되거나 만료되지 않습니다.

OmniAuth Kerberos gem#

  • GitLab 14.3에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

omniauth-kerberos gem은 다음 주요 릴리스인 GitLab 15.0에서 제거됩니다.

이 gem은 유지 관리되지 않았으며 사용량이 매우 적습니다. 따라서 이 인증 방법에 대한 지원을 제거하고 대신 Kerberos SPNEGO 통합을 사용하는 것을 권장합니다. 업그레이드 지침을 따라 omniauth-kerberos 통합에서 지원되는 통합으로 업그레이드할 수 있습니다.

Kerberos SPNEGO 통합이 아닌 이전 비밀번호 기반 Kerberos 통합만 지원 중단합니다.

PAT 만료의 선택적 적용#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

PAT 만료 적용을 비활성화하는 기능은 보안 관점에서 특이합니다. 이 특이한 기능이 사용자에게 예기치 않은 동작을 일으킬 수 있다는 우려가 있습니다. 보안 기능에서 예기치 않은 동작은 본질적으로 위험하므로 이 기능을 제거하기로 결정했습니다.

SSH 만료의 선택적 적용#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

SSH 만료 적용을 비활성화하는 기능은 보안 관점에서 특이합니다. 이 특이한 기능이 사용자에게 예기치 않은 동작을 일으킬 수 있다는 우려가 있습니다. 보안 기능에서 예기치 않은 동작은 본질적으로 위험하므로 이 기능을 제거하기로 결정했습니다.

Java 8에 대한 기본 SAST 지원#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST SpotBugs 분석기는 보안 취약점에 대해 Java, Scala, Groovy, Kotlin 코드를 스캔합니다. 기술적인 이유로 분석기는 스캔하기 전에 먼저 코드를 컴파일해야 합니다.

GitLab 15.0 이전 버전에서 분석기 이미지에는 컴파일을 용이하게 하기 위한 Java 8 및 Java 11 런타임이 포함되어 있습니다.

GitLab 15.0에서:

  • 이미지 크기를 줄이기 위해 분석기 이미지에서 Java 8을 제거합니다.
  • Java 17로 컴파일을 더 쉽게 하기 위해 분석기 이미지에 Java 17을 추가합니다.

Advanced Search 마이그레이션의 오래된 인덱스#

  • GitLab 14.10에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Advanced Search 마이그레이션은 일반적으로 여러 코드 경로를 오랫동안 지원해야 하므로 안전하게 정리할 수 있을 때 이를 정리하는 것이 중요합니다. GitLab 주요 버전 업그레이드를 완전히 마이그레이션되지 않은 인덱스에 대한 하위 호환성을 제거하기에 안전한 시점으로 사용합니다.

Pseudonymizer#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Pseudonymizer 기능은 일반적으로 사용되지 않으며 대형 데이터베이스에서 프로덕션 문제를 일으킬 수 있고 오브젝트 스토리지 개발을 방해할 수 있습니다. 이제 지원 중단으로 간주되며 GitLab 15.0에서 제거됩니다.

instanceStatisticsMeasurements GraphQL 노드를 통한 사용 추세 쿼리#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

instanceStatisticsMeasurements GraphQL 노드는 13.10에서 usageTrendsMeasurements로 이름이 변경되었으며 이전 필드 이름은 지원 중단으로 표시되었습니다. 기존 GraphQL 쿼리를 수정하려면 instanceStatisticsMeasurementsusageTrendsMeasurements로 교체하세요.

요청 프로파일링#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

요청 프로파일링은 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다.

Premium 티어의 필수 파이프라인 설정#

필수 파이프라인 설정 기능은 Premium 고객을 위해 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다. 이 기능은 GitLab Ultimate 고객에게는 지원 중단되지 않습니다.

retire-js 의존성 스캐닝 도구#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

14.8부터 retire.js 작업이 의존성 스캐닝에서 지원 중단됩니다. 지원 중단 중에는 CI/CD 템플릿에 계속 포함됩니다. GitLab 15.0에서 2022년 5월 22일에 의존성 스캐닝에서 retire.js를 제거합니다. JavaScript 스캔 기능은 Gemnasium이 계속 지원하므로 영향을 받지 않습니다.

14.0.0 미만의 SAST 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 SAST 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다.

SAST .NET 2.1 지원#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST Security Code Scan 분석기는 .NET 코드를 스캔하여 보안 취약점을 찾습니다. 기술적인 이유로 분석기는 먼저 스캔하기 위해 코드를 빌드해야 합니다.

GitLab 15.0에서 이 분석기의 기본 주요 버전을 버전 2에서 버전 3으로 변경합니다. 이 변경:

  • .NET 2.1 지원 제거
  • .NET 6.0, Visual Studio 2019, Visual Studio 2022에 대한 지원 추가

시크릿 감지 설정 변수 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 시크릿 감지 커스터마이징을 더 간단하고 신뢰할 수 있게 하기 위해 CI/CD 설정에서 이전에 설정할 수 있었던 일부 변수를 지원 중단합니다.

다음 변수는 현재 기록 스캐닝 옵션을 사용자 정의하는 데 사용할 수 있지만 GitLab 관리 CI/CD 템플릿과 잘 작동하지 않아 이제 지원 중단됩니다:

  • SECRET_DETECTION_COMMIT_FROM
  • SECRET_DETECTION_COMMIT_TO
  • SECRET_DETECTION_COMMITS
  • SECRET_DETECTION_COMMITS_FILE

SECRET_DETECTION_ENTROPY_LEVEL은 이전에 코드베이스의 문자열 엔트로피 수준만 고려하는 규칙을 구성할 수 있게 했으며 이제 지원 중단됩니다. 이 유형의 엔트로피 전용 규칙은 허용할 수 없는 수의 잘못된 결과(거짓 양성)를 생성했으며 더 이상 지원되지 않습니다.

14.0.0 미만의 시크릿 감지 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 시크릿 감지 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다.

새 위치에 게시된 Secure 및 Protect 분석기 이미지#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.8부터 새 버전의 GitLab Secure 및 Protect 분석기는 registry.gitlab.com/security-products 아래의 새 레지스트리 위치에 게시됩니다.

Secure 및 Protect 분석기 주요 버전 업데이트#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Secure 및 Protect 스테이지는 GitLab 15.0 릴리스와 함께 분석기의 주요 버전을 올립니다. 다음 버전은 지원 중단되며 15.0 GitLab 릴리스 이후 더 이상 업데이트되지 않습니다:

  • API 보안: 버전 1
  • 컨테이너 스캐닝: 버전 4
  • 커버리지 가이드 퍼즈 테스팅: 버전 2
  • 의존성 스캐닝: 버전 2
  • 동적 애플리케이션 보안 테스팅(DAST): 버전 2
  • Infrastructure as Code(IaC) 스캐닝: 버전 1
  • 라이선스 스캐닝: 버전 3
  • 시크릿 감지: 버전 3
  • 정적 애플리케이션 보안 테스팅(SAST): 모든 분석기 버전 2 (단, 현재 버전 3인 gosec 제외)

Sidekiq 메트릭 및 헬스 체크 설정#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

단일 프로세스 및 포트를 사용하여 Sidekiq 메트릭 및 헬스 체크를 내보내는 것은 지원 중단됩니다. 지원은 15.0에서 제거됩니다.

정적 사이트 편집기#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

정적 사이트 편집기는 GitLab 15.0부터 더 이상 사용할 수 없습니다. GitLab 전반의 Markdown 편집 경험 개선으로 더 넓은 범위에서 유사한 이점을 제공합니다. 정적 사이트 편집기에 대한 수신 요청은 Web IDE로 리디렉션됩니다.

SLES 12 SP2 지원#

SUSE Linux Enterprise Server(SLES) 12 SP2의 장기 서비스 및 지원(LTSS)은 2021년 3월 31일에 종료되었습니다.

Gitaly와 나머지 GitLab 사이에 배포된 gRPC 인식 프록시 지원#

Gitaly Cluster는 GitLab 13.12에서 gRPC 인식 프록시와 호환되지 않게 되었습니다. 이제 Gitaly Cluster 없이도 모든 GitLab 설치가 gRPC 인식 프록시와 호환되지 않습니다.

테스트 커버리지 프로젝트 CI/CD 설정#

테스트 커버리지 패턴 설정을 단순화하기 위해 GitLab 15.0에서 테스트 커버리지 파싱을 위한 프로젝트 설정이 제거됩니다.

대신 프로젝트의 .gitlab-ci.yml을 사용하여 coverage 키워드로 정규식을 제공하여 머지 리퀘스트에서 테스트 커버리지 결과를 설정하세요.

GitLab의 트레이싱#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab의 트레이싱은 오픈 소스 엔드 투 엔드 분산 트레이싱 시스템인 Jaeger와의 통합입니다. GitLab 사용자는 Jaeger 인스턴스로 이동하여 특정 요청을 처리하는 각 함수 또는 마이크로 서비스를 추적하며 배포된 애플리케이션의 성능에 대한 인사이트를 얻을 수 있습니다. GitLab의 트레이싱은 GitLab 14.7에서 지원 중단되었으며 15.0에서 제거될 예정입니다.

컨테이너 레지스트리 그룹 수준 API 업데이트#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

마일스톤 15.0에서 그룹에서 레지스트리 리포지터리를 가져오는 컨테이너 레지스트리 API에서 tagstags_count 매개변수에 대한 지원이 제거됩니다.

Value Stream Analytics 필터링 계산 변경#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Value Stream Analytics의 날짜 필터 작동 방식을 변경하고 있습니다. 이슈 또는 머지 리퀘스트가 생성된 시간으로 필터링하는 대신 날짜 필터는 해당 단계의 종료 이벤트 시간으로 필터링됩니다. 이 변경으로 인해 이 변경이 적용된 후 완전히 다른 수치가 나올 것입니다.

취약점 확인#

취약점 확인 기능은 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다. 대신 새 보안 승인 기능으로 마이그레이션하는 것을 권장합니다. Security & Compliance > Policies로 이동하고 새 스캔 결과 정책을 생성하여 마이그레이션할 수 있습니다.

기본 PackageTypeVersions#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

패키지 레지스트리 GraphQL API 생성 작업의 일환으로 Package 그룹은 기본 PackageType 유형의 Version 유형을 지원 중단하고 PackageDetailsType으로 이동했습니다.

마일스톤 15.0에서 PackageType에서 Version을 완전히 제거합니다.

apiFuzzingCiConfigurationCreate GraphQL 뮤테이션#

  • GitLab 14.6에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

API 퍼징 설정 스니펫이 이제 클라이언트 측에서 생성되며 더 이상 API 요청이 필요하지 않습니다. 따라서 GitLab에서 더 이상 사용되지 않는 apiFuzzingCiConfigurationCreate 뮤테이션을 지원 중단합니다.

artifacts:reports:cobertura 키워드#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

현재 GitLab의 테스트 커버리지 시각화는 Cobertura 보고서만 지원합니다. 15.0부터 artifacts:reports:cobertura 키워드는 artifacts:reports:coverage_report로 교체됩니다. Cobertura는 15.0에서 유일하게 지원되는 보고서 파일이 되지만 이것은 GitLab이 다른 보고서 유형을 지원하는 첫 번째 단계입니다.

defaultMergeCommitMessageWithDescription GraphQL API 필드#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL API 필드 defaultMergeCommitMessageWithDescription은 지원 중단되었으며 GitLab 15.0에서 제거됩니다.

dependency_proxy_for_private_groups 기능 플래그#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

마일스톤 15.0에서 기능 플래그를 완전히 제거합니다. 앞으로는 의존성 프록시를 사용할 때 인증해야 합니다.

컨테이너 레지스트리의 htpasswd 인증#

컨테이너 레지스트리는 htpasswd인증을 지원합니다. GitLab 컨텍스트에서 사용되지 않으므로 htpasswd 인증은 GitLab 14.9에서 지원 중단되고 GitLab 15.0에서 제거됩니다.

version 필드에서 pipelines 필드#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

가능한 성능 문제를 완화하기 위해 마일스톤 15.0에서 versions 필드의 pipelines 필드를 제거합니다.

PipelineSecurityReportFinding GraphQL의 projectFingerprint#

PipelineSecurityReportFinding GraphQL 오브젝트의 projectFingerprint 필드가 지원 중단됩니다. 이 필드에는 고유성을 결정하는 데 사용되는 보안 발견의 "지문"이 포함됩니다. 지문 계산 방법이 변경되어 다른 값이 나옵니다. 앞으로 새 값은 UUID 필드에 노출됩니다.

gitlab-ctlpromote-db 명령#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.5에서 페일오버 중에 모든 Geo 보조 노드를 주 노드로 승격하는 gitlab-ctl promote 명령을 도입했습니다. 이 명령은 멀티 노드 Geo 보조 사이트에서 데이터베이스 노드를 승격하는 데 사용되는 gitlab-ctl promote-db를 대체합니다. gitlab-ctl promote-db는 GitLab 15.0까지 그대로 작동하고 사용할 수 있습니다. Geo 고객은 스테이징 환경에서 새 gitlab-ctl promote 명령을 테스트하고 페일오버 절차에 새 명령을 통합하는 것을 권장합니다.

gitlab-ctlpromote-to-primary-node 명령#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.5에서 페일오버 중에 모든 Geo 보조 노드를 주 노드로 승격하는 gitlab-ctl promote 명령을 도입했습니다. 이 명령은 단일 노드 Geo 사이트에서만 사용 가능했던 gitlab-ctl promote-to-primary-node를 대체합니다. gitlab-ctl promote-to-primary-node는 GitLab 15.0까지 그대로 작동하고 사용할 수 있습니다.

CI/CD 설정의 typetypes 키워드#

typetypes CI/CD 키워드는 GitLab 15.0에서 제거됩니다. 이 키워드를 사용하는 파이프라인은 작동을 중단하므로 동일한 동작을 가진 stagestages로 전환해야 합니다.

bundler-audit 의존성 스캐닝 도구#

  • GitLab 14.6에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

14.6부터 bundler-audit가 의존성 스캐닝에서 지원 중단됩니다. 지원 중단 중에는 CI/CD 템플릿에 계속 포함됩니다. GitLab 15.0에서 2022년 5월 22일에 의존성 스캐닝에서 bundler-audit를 제거합니다. 이 제거 후 Gemnasium이 계속 지원하므로 Ruby 스캔 기능은 영향을 받지 않습니다.

GitLab 14.10#

Composer 의존성 다운로드 권한 변경#

GitLab Composer 리포지터리를 사용하여 PHP 의존성을 푸시, 검색, 메타데이터 가져오기 및 다운로드할 수 있습니다. 이러한 모든 작업은 의존성 다운로드를 제외하고 인증이 필요합니다.

인증 없이 Composer 의존성을 다운로드하는 것은 GitLab 14.9에서 지원 중단되었으며 GitLab 15.0에서 제거됩니다. GitLab 15.0부터 Composer 의존성을 다운로드하려면 인증해야 합니다.

GitLab 14.9#

설정 가능한 Gitaly per_repository 선출 전략#

  • GitLab 14.8에서 발표
  • GitLab 14.9에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

per_repository Gitaly 선출 전략을 구성하는 것은 지원 중단되었습니다. per_repository는 GitLab 14.0부터 유일한 옵션이었습니다.

이 변경은 코드베이스를 깨끗하게 유지하기 위한 일상적인 유지 관리의 일부입니다.

통합 오류 추적 기본 비활성화#

  • GitLab 14.9에서 발표
  • GitLab 14.9에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.4에서 GitLab은 Sentry를 대체하는 통합 오류 추적 백엔드를 출시했습니다. 이 기능은 데이터베이스 성능 문제를 일으켰습니다. GitLab 14.9에서 통합 오류 추적이 GitLab.com에서 제거되고 GitLab Self-Managed에서 기본적으로 꺼집니다.

GitLab 14.8#

openSUSE Leap 15.2 패키지#

  • GitLab 14.5에서 발표
  • GitLab 14.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

openSUSE Leap 15.2의 배포 지원 및 보안 업데이트는 2021년 12월에 종료됩니다.

14.5부터 openSUSE Leap 15.3용 패키지를 제공하기 시작했으며 14.8 마일스톤에서 openSUSE Leap 15.2용 패키지 제공을 중단합니다.

GitLab 14.6#

일반 패키지로 배포되는 Release CLI#

  • GitLab 14.2에서 발표
  • GitLab 14.6에서 제거

release-cli는 GitLab 14.2부터 일반 패키지로 릴리스됩니다. GitLab 14.5까지 S3에 바이너리로 계속 배포하고 GitLab 14.6에서 S3에서 배포를 중단합니다.

GitLab 14.5#

Task Runner 파드 이름을 Toolbox로 변경#

  • GitLab 14.2에서 발표
  • GitLab 14.5에서 제거

Task Runner 파드는 GitLab 애플리케이션 내에서 주기적인 하우스키핑 태스크를 실행하는 데 사용되며 GitLab Runner와 혼동되는 경우가 많습니다. 따라서 Task Runner의 이름이 Toolbox로 변경됩니다.

이로 인해 서브 차트의 이름이 gitlab/task-runner에서 gitlab/toolbox로 변경됩니다. 결과 파드는 {{ .Release.Name }}-toolbox와 같은 이름이 되며 종종 gitlab-toolbox가 됩니다. app=toolbox 레이블로 찾을 수 있습니다.

보류 중인 변경 사항#

다음 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

CodeClimate 기반 코드 품질 스캔 제거 예정#

  • GitLab 17.3에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab 19.0에서 CodeClimate 기반 코드 품질 스캔을 제거할 예정입니다. 이 변경 사항은 이전에 GitLab 18.0으로 예정되어 있었으나 지금은 지연되었습니다.

대신 CI/CD 파이프라인에서 품질 도구를 직접 사용하고 도구의 리포트를 아티팩트로 제공해야 합니다. 이미 많은 도구를 직접 통합하는 방법을 문서화했으며, 문서를 따라 통합할 수 있습니다.

이 변경 사항은 다음과 같이 구현될 예정입니다:

  1. Code-Quality.gitlab-ci.yml CI/CD 템플릿을 변경하여 스캔이 더 이상 실행되지 않도록 합니다. 현재 이 템플릿은 CodeClimate 기반 스캔을 실행합니다. (19.0 이후에도 템플릿을 include하는 파이프라인에 미치는 영향을 줄이기 위해 템플릿을 삭제하는 것보다 변경하는 방식을 선택했습니다.)
  2. Auto DevOps의 일부로 CodeClimate 기반 스캔 실행을 중단합니다.

즉시 적용되어, CodeClimate 기반 스캔은 제한된 업데이트만 받게 됩니다. GitLab 19.0에서 지원 종료 후에는 추가 업데이트를 제공하지 않습니다. 단, 이전에 게시된 컨테이너 이미지를 삭제하거나 사용자 정의 CI/CD 파이프라인 잡 정의를 사용하여 실행하는 기능을 제거하지는 않습니다.

자세한 내용은 코드 품질 위반 스캔을 참조하세요.

Container Registry 레거시 메타데이터 스토리지#

  • GitLab 18.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab 컨테이너 레지스트리의 레거시 메타데이터 스토리지 방식은 컨테이너 레지스트리 메타데이터 데이터베이스를 위해 지원 중단됩니다.

GitLab.com은 이미 메타데이터 데이터베이스를 사용하고 있습니다. 이 지원 중단은 현재 스토리지 백엔드(오브젝트 스토리지 또는 로컬 파일 시스템)에 메타데이터 정보를 직접 저장하는 레거시 컨테이너 레지스트리를 사용하는 GitLab Self-Managed 인스턴스에 영향을 미칩니다.

레거시 메타데이터 스토리지 방식은 유지 관리 모드에서 계속 지원되지만, 새로운 기능이나 개선 사항은 제공되지 않습니다. 가능한 한 빨리 컨테이너 레지스트리 메타데이터 데이터베이스로 마이그레이션하는 것을 강력히 권장합니다.

이 변경 사항은 컨테이너 레지스트리가 이미지 및 태그에 대한 메타데이터를 저장하는 방식에만 영향을 미칩니다. 스토리지 백엔드 선택(오브젝트 스토리지 또는 파일 시스템)은 동일하게 유지됩니다. 메타데이터 데이터베이스와 함께 오브젝트 스토리지 또는 파일 시스템 스토리지를 계속 사용할 수 있습니다.

레거시 메타데이터 스토리지에서 메타데이터 데이터베이스로 마이그레이션하려면 컨테이너 레지스트리 메타데이터 데이터베이스 마이그레이션 가이드를 따르세요. 마이그레이션 프로세스에는 메타데이터 데이터베이스 기능을 활성화하고 가져오기 도구를 실행하여 기존 레지스트리 데이터를 전송하는 과정이 포함됩니다.

메타데이터 데이터베이스는 더 나은 성능, 안정성을 제공하며 레거시 메타데이터 스토리지 방식으로는 사용할 수 없는 새로운 컨테이너 레지스트리 기능을 활성화합니다.

커버리지 기반 퍼즈 테스팅 지원 중단#

  • GitLab 18.0에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

커버리지 기반 퍼즈 테스팅은 지원 중단되며 GitLab 18.0부터 지원되지 않습니다. 이 기능은 GitLab 19.0에서 완전히 제거됩니다.

커버리지 기반 퍼즈 테스팅은 여러 오픈 소스 퍼저를 GitLab에 통합했습니다. 영향을 받는 경우 오픈 소스 퍼저를 독립 실행형 애플리케이션으로 통합하거나 GitLab Advanced SAST와 같은 다른 보안 기능으로 마이그레이션할 수 있습니다.

JavaScript 벤더 라이브러리에 대한 의존성 스캔#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

의존성 스캔을 위한 Gemnasium 분석기가 제공하는 JavaScript 벤더 라이브러리에 대한 의존성 스캔 기능은 GitLab 17.9에서 지원 중단됩니다.

Gemnasium 분석기를 사용할 때는 이 기능이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 사용할 수 없습니다. 자세한 내용은 마이그레이션 가이드를 참조하세요.

벤더 라이브러리에 대한 의존성 스캔으로 대체 기능이 개발될 예정이지만 제공 일정은 설정되지 않았습니다.

의존성 스캔의 GitLab SBOM 취약점 스캐너 업그레이드#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

의존성 스캔 기능이 GitLab SBOM 취약점 스캐너로 업그레이드됩니다. 이 변경의 일환으로 이전에 CI/CD 파이프라인에서 사용되던 Gemnasium 분석기는 GitLab 17.9에서 지원 중단됩니다.

이는 SBOM을 사용한 의존성 스캔 기능과 새 의존성 스캔 분석기로 대체됩니다. 새 분석기는 의존성과 그 관계(의존성 그래프)를 탐지하는 데 중점을 두며, 지속적 취약점 스캔에서 이미 사용 중인 GitLab의 내장 SBOM 취약점 스캐너를 활용하여 취약점을 식별합니다.

GitLab 18.5 기준으로 이 새 기능은 제한 가용 상태입니다. 대부분의 사용자가 새 의존성 스캔 기능으로 마이그레이션할 때까지 GitLab은 Gemnasium 분석기를 계속 지원합니다. 그 이후에야 Gemnasium 분석기가 지원 종료에 도달합니다.

이 업그레이드로 인한 상당한 변경 사항 및 기능 제거로 인해 자동으로 구현되지 않습니다. Gemnasium 분석기를 사용하는 기존 CI/CD 잡은 CI/CD 구성의 중단을 방지하기 위해 기본적으로 계속 작동합니다.

아래 자세한 변경 사항을 검토하고 전환을 돕기 위해 마이그레이션 가이드를 참조하세요.

  • CI/CD 구성의 중단을 방지하기 위해, 애플리케이션이 안정적인 의존성 스캔 CI/CD 템플릿(Dependency-Scanning.gitlab-ci.yml)을 사용하는 경우 의존성 스캔은 Gemnasium 분석기 기반의 기존 CI/CD 잡만 사용합니다.
  • 애플리케이션이 최신 의존성 스캔 CI/CD 템플릿(Dependency-Scanning.latest.gitlab-ci.yml)을 사용하는 경우 의존성 스캔은 Gemnasium 분석기 기반의 기존 CI/CD 잡을 사용하며, 지원되는 파일 유형에도 새 의존성 스캔 분석기가 실행됩니다. 모든 프로젝트에 새 의존성 스캔 분석기를 강제 적용하도록 옵트인할 수도 있습니다.
  • 기능이 성숙해짐에 따라 다른 마이그레이션 경로가 고려될 수 있습니다.
  • Gemnasium 분석기 프로젝트와 해당 컨테이너 이미지(모든 태그 및 변형): gemnasium, gemnasium-maven, gemnasium-python이 지원 중단됩니다. 이러한 이미지는 GitLab 컨테이너 레지스트리에서 제거되지 않습니다.
  • Gemnasium 분석기와 관련된 다음 CI/CD 변수들도 지원 중단됩니다. Gemnasium 분석기를 사용할 때는 이 변수들이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 적용되지 않습니다. 변수가 다른 컨텍스트에서도 사용되는 경우, 지원 중단은 의존성 스캔 기능에만 적용됩니다(예: GOOSGOARCH는 의존성 스캔 기능에 특정적이지 않습니다). DS_EXCLUDED_ANALYZERS, DS_GRADLE_RESOLUTION_POLICY, DS_IMAGE_SUFFIX, DS_JAVA_VERSION, DS_PIP_DEPENDENCY_PATH, DS_PIP_VERSION, DS_REMEDIATE_TIMEOUT, DS_REMEDIATE, GEMNASIUM_DB_LOCAL_PATH, GEMNASIUM_DB_REF_NAME, GEMNASIUM_DB_REMOTE_URL, GEMNASIUM_DB_UPDATE_DISABLED, GEMNASIUM_LIBRARY_SCAN_ENABLED, GOARCH, GOFLAGS, GOOS, GOPRIVATE, GRADLE_CLI_OPTS, GRADLE_PLUGIN_INIT_PATH, MAVEN_CLI_OPTS, PIP_EXTRA_INDEX_URL, PIP_INDEX_URL, PIPENV_PYPI_MIRROR, SBT_CLI_OPTS.
  • 다음 CI/CD 컴포넌트는 지원 중단됩니다: Android, Rust, Swift, CocoaPods. 이는 주요 의존성 스캔 CI/CD 컴포넌트로 대체되며, 지원되는 모든 언어 및 패키지 매니저를 다룹니다.
  • Yarn 프로젝트에 대한 취약점 해결 기능은 GitLab 17.9에서 지원 중단됩니다. Gemnasium 분석기를 사용할 때는 이 기능이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 사용할 수 없습니다. 자세한 내용은 해당 지원 중단 발표를 참조하세요.
  • JavaScript 벤더 라이브러리에 대한 의존성 스캔 기능은 GitLab 17.9에서 지원 중단됩니다. Gemnasium 분석기를 사용할 때는 이 기능이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 사용할 수 없습니다. 자세한 내용은 해당 지원 중단 발표를 참조하세요.

GitLab Advanced SAST가 기본으로 활성화됨#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab 19.0에서 GitLab Ultimate 프로젝트의 기본으로 GitLab Advanced SAST를 활성화하도록 SAST CI/CD 템플릿을 업데이트할 예정입니다. 이 변경 전에는 CI/CD 변수 GITLAB_ADVANCED_SAST_ENABLEDtrue로 설정한 경우에만 GitLab Advanced SAST 분석기가 활성화됩니다. 이 변경 사항은 이전에 GitLab 18.0으로 예정되어 있었으나 지금은 지연되었습니다.

Advanced SAST는 크로스 파일, 크로스 함수 스캔과 새로운 규칙셋을 사용하여 더 정확한 결과를 제공합니다. Advanced SAST는 지원되는 언어에 대한 커버리지를 인수하고 이전 스캐너의 해당 언어 스캔을 비활성화합니다. 이전 스캐너의 결과가 여전히 탐지되는 경우, 각 프로젝트의 기본 브랜치에서 첫 번째 스캔 후 자동 프로세스가 결과를 마이그레이션합니다.

더 자세하게 프로젝트를 스캔하기 때문에 Advanced SAST는 프로젝트 스캔에 더 많은 시간이 걸릴 수 있습니다. 필요한 경우 CI/CD 변수 GITLAB_ADVANCED_SAST_ENABLEDfalse로 설정하여 GitLab Advanced SAST를 비활성화할 수 있습니다. GitLab 19.0에서 Advanced SAST가 기본으로 활성화되는 것을 방지하기 위해 지금 프로젝트, 그룹 또는 정책에서 이 변수를 설정할 수 있습니다.

GitLab Runner Docker Machine 실행기 지원 중단#

  • GitLab 17.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab Runner Docker Machine 실행기는 지원 중단되며 GitLab 20.0(2027년 5월)에서 지원 기능으로 제품에서 완전히 제거됩니다. Docker Machine의 대체품인 Amazon Web Services(AWS) EC2, Google Compute Engine(GCE) 및 Microsoft Azure 가상 머신(VM)용 GitLab 개발 플러그인을 갖춘 GitLab Runner Autoscaler가 일반 공급됩니다. 이 발표와 함께 GitLab Runner 팀은 더 이상 GitLab이 유지 관리하는 Docker Machine 포크에 대한 커뮤니티 기여를 수락하거나 새로 식별된 버그를 해결하지 않습니다.

GraphQL API의 GitLab Runner 플랫폼 및 설정 지침#

  • GitLab 15.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab Runner 플랫폼 및 설치 지침을 가져오기 위한 runnerPlatformsrunnerSetup 쿼리는 지원 중단되어 GraphQL API에서 제거됩니다. 설치 지침은 이러한 API 쿼리를 사용하는 대신 GitLab Runner 문서를 참조하세요.

GitLab Self-Managed의 인증서 기반 Kubernetes 통합#

  • GitLab 14.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

Kubernetes와의 인증서 기반 통합은 지원 중단되어 제거될 예정입니다.

GitLab Self-Managed의 경우, 인증서 기반 통합을 계속 활성화 상태로 유지할 수 있도록 GitLab 15.0에서 피처 플래그 certificate_based_clusters를 도입합니다. 단, 피처 플래그는 기본적으로 비활성화되므로 이 변경 사항은 호환성 변경입니다.

보다 강력하고 안전하며 미래 지향적인 신뢰할 수 있는 Kubernetes 통합을 위해 Kubernetes용 에이전트를 사용하여 Kubernetes 클러스터를 GitLab과 연결하세요. 이 마이그레이션에 대한 정보는 Kubernetes용 에이전트로 마이그레이션을 참조하세요.

GitLab은 새 솔루션이 기능 동등성을 갖출 때까지 이 기능을 제거하지 않습니다. 제거 차단 요인에 대한 자세한 내용은 이슈 199를 참조하세요.

이 지원 중단에 대한 업데이트 및 자세한 내용은 에픽 8을 참조하세요.

GitLab.com의 인증서 기반 Kubernetes 통합#

  • GitLab 14.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

Kubernetes와의 인증서 기반 통합은 지원 중단되어 제거될 예정입니다. GitLab.com 사용자는 GitLab 15.0부터 새 네임스페이스에서 인증서 기반 방식으로 GitLab과 클러스터를 통합할 수 없게 됩니다. 현재 사용자의 통합은 네임스페이스별로 활성화됩니다.

보다 강력하고 안전하며 미래 지향적인 신뢰할 수 있는 Kubernetes 통합을 위해 Kubernetes용 에이전트를 사용하여 Kubernetes 클러스터를 GitLab과 연결하는 것을 권장합니다. 마이그레이션 방법은?

이 지원 중단에 대한 업데이트 및 자세한 내용은 이 에픽을 참조하세요.

GitLab Self-Managed 고객은 피처 플래그를 사용하여 기능을 계속 사용할 수 있습니다.

GraphQL dependencyProxyTotalSizeInBytes 필드 지원 중단#

  • GitLab 16.1에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GraphQL을 사용하여 GitLab Dependency Proxy가 사용하는 스토리지 용량을 쿼리할 수 있습니다. 단, dependencyProxyTotalSizeInBytes 필드는 약 2기가바이트로 제한되어 있어 Dependency Proxy에는 항상 충분하지 않을 수 있습니다. 이로 인해 dependencyProxyTotalSizeInBytes가 지원 중단됩니다.

GitLab 16.1에서 도입된 dependencyProxyTotalSizeBytes를 대신 사용하세요.

그룹 취약점 보고서의 OWASP 상위 10 2017 지원 중단#

  • GitLab 17.0에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

OWASP 상위 10 2017로 취약점 보고서를 그룹화하는 기능은 지원 중단되며, OWASP 상위 10 2021로 그룹화하는 기능으로 대체됩니다. 향후에는 취약점 보고서의 그룹화를 위한 가장 최신 버전의 OWASP 상위 10을 지원할 예정입니다. 이 변경과 함께 기능이 사용하는 2017 GraphQL API 열거형도 지원 중단 및 제거됩니다. 자세한 내용은 이 이슈에 포함되어 있습니다.

파이프라인 변수 사용에 대한 기본 보안 강화#

  • GitLab 17.7에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab은 기본 보안 방식을 따릅니다. 이를 위해 CI/CD 변수 사용과 관련한 최소 권한 원칙을 지원하는 몇 가지 변경 사항을 적용합니다. 현재 개발자 역할 이상의 사용자는 아무런 확인이나 옵트인 없이 기본적으로 파이프라인 변수를 사용할 수 있습니다.

파이프라인 변수의 최소 역할을 권장 사항인 소유자만 또는 아무도 없음으로 높여 이미 더 안전한 기본 환경을 사용할 수 있습니다. 17.7부터 GitLab.com의 새 네임스페이스의 모든 새 프로젝트에 대한 기본값은 no one allowed입니다.

OpenTofu CI/CD 템플릿#

  • GitLab 17.1에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

CI/CD 컴포넌트가 아직 GitLab Self-Managed에서 사용 불가능했을 때 16.8에서 OpenTofu CI/CD 템플릿을 도입했습니다. GitLab Self-Managed용 GitLab CI/CD 컴포넌트 도입으로 CI/CD 컴포넌트를 위해 중복된 OpenTofu CI/CD 템플릿을 제거합니다.

CI/CD 템플릿에서 컴포넌트로 마이그레이션하는 방법에 대한 정보는 OpenTofu 컴포넌트 문서를 참조하세요.

파이프라인 실행 정책의 inject_ci 전략이 inject_policy로 대체됨#

  • GitLab 17.11에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

파이프라인 실행 정책에서의 사용자 정의 스테이지 도입(GitLab 17.9에서 사용 가능)으로, 지원 중단된 inject_ci를 대체하기 위해 구성 옵션 inject_policy를 도입했습니다.

이 새 전략은 inject_ci 전략을 사용하는 기존 파이프라인 실행 정책을 가진 사용자들에게 사용자 정의 스테이지 기능을 원활하게 적용할 수 있게 합니다.

보류 중인 제거에 대비하여 inject_ci를 사용하는 모든 파이프라인 실행 정책을 inject_policy를 사용하도록 업데이트하세요.

일반 User, Project, Group API 엔드포인트에 대한 속도 제한#

  • GitLab 17.4에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

일반적으로 사용되는 User, Project, Group 엔드포인트에 대해 속도 제한이 기본으로 활성화됩니다. 이러한 속도 제한을 기본으로 활성화하면 대량 API 사용이 더 넓은 사용자 경험에 부정적인 영향을 미칠 가능성을 줄여 전체 시스템 안정성을 향상시킬 수 있습니다. 속도 제한을 초과하는 요청은 HTTP 429 오류 코드와 추가 속도 제한 헤더를 반환합니다.

기본 속도 제한은 GitLab.com에서 확인한 요청 속도를 기반으로 대부분의 사용을 방해하지 않도록 의도적으로 상당히 높게 설정되었습니다. 인스턴스 관리자는 이미 적용된 다른 속도 제한과 마찬가지로 관리자 영역에서 필요에 따라 더 높거나 낮은 제한을 설정할 수 있습니다.

ContainerRepository GraphQL API에서 migrationState 필드 제거#

  • GitLab 17.6에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab GraphQL API의 ContainerRepositoryType에 있는 migrationState 필드가 지원 중단됩니다. 이 지원 중단은 API를 간소화하고 개선하기 위한 노력의 일환입니다.

이 변경에 대비하여 ContainerRepositoryType과 상호 작용하는 GraphQL 쿼리를 검토하고 업데이트하는 것을 권장합니다. migrationState 필드에 대한 참조를 제거하고 애플리케이션 로직을 적절히 조정하세요.

GraphQL에서 previousStageJobsOrNeeds 제거#

  • GitLab 17.0에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GraphQL의 previousStageJobsOrNeeds 필드는 previousStageJobsneeds 필드로 대체되어 제거됩니다.

PipelineSchedulePermissions에서 GraphQL 필드 take_ownership_pipeline_scheduleadmin_pipeline_schedule로 대체#

  • GitLab 15.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GraphQL 필드 take_ownership_pipeline_schedule이 지원 중단됩니다. 사용자가 파이프라인 스케줄의 소유권을 가져올 수 있는지 여부를 확인하려면 대신 admin_pipeline_schedule 필드를 사용하세요.

Yarn 프로젝트에서 의존성 스캔에 대한 취약점 해결#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

의존성 스캔을 위한 Gemnasium 분석기가 제공하는 Yarn 프로젝트에 대한 취약점 해결 기능은 GitLab 17.9에서 지원 중단됩니다.

Gemnasium 분석기를 사용할 때는 이 기능이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 사용할 수 없습니다. 자세한 내용은 마이그레이션 가이드를 참조하세요.

대체 기능은 Auto Remediation 비전의 일환으로 계획되어 있지만 제공 일정은 설정되지 않았습니다.

공개 API의 구독 관련 API 엔드포인트 지원 중단#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

공개 REST API의 다음 엔드포인트들이 제거됩니다:

  • PUT /api/v4/user/:id/credit_card_validation
  • POST /api/v4/namespaces/:namespace_id/minutes
  • PATCH /api/v4/namespaces/:previous_namespace_id/minutes/move/:target_namespace_id
  • GET /api/v4/namespaces/:namespace_id/subscription_add_on_purchase/:id
  • PUT /api/v4/namespaces/:namespace_id/subscription_add_on_purchase/:id
  • POST /api/v4/namespaces/:namespace_id/subscription_add_on_purchase/:id
  • POST /api/v4/namespaces/:id/gitlab_subscription
  • PUT /api/v4/namespaces/:id/gitlab_subscription
  • PUT /api/v4/namespaces/:id

이 엔드포인트들은 GitLab.com의 구독 정보를 관리하기 위해 구독 포털에서 사용되었습니다. 이 엔드포인트들의 사용은 다가오는 Cells 아키텍처를 지원하기 위한 JWT 인증을 갖춘 내부 엔드포인트로 대체되었습니다. 공개 API의 엔드포인트는 실수로 다시 사용되지 않도록, 그리고 기능적으로 차이가 생기기 시작함에 따른 유지 관리 부담을 줄이기 위해 제거됩니다.

이는 내부적으로 사용되던 엔드포인트이므로 이 변경으로 인한 영향은 없을 것입니다.

agentk 컨테이너 레지스트리가 Cloud Native GitLab으로 이동#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

agentk 컨테이너 레지스트리를 프로젝트별 레지스트리에서 Cloud Native GitLab(CNG) 레지스트리로 이동합니다. GitLab 18.0부터 CNG에서 빌드된 agentk 이미지는 프로젝트별 레지스트리로 미러링됩니다. 새 이미지는 이전 이미지와 동일하지만, 새 이미지는 amd64arm64 아키텍처만 지원합니다. 32비트 arm 아키텍처는 지원하지 않습니다. GitLab 19.0부터 프로젝트별 레지스트리는 agentk 업데이트를 받지 않습니다. 로컬 레지스트리에 agentk 컨테이너를 미러링하는 경우 미러 소스를 CNG 레지스트리로 변경해야 합니다.

공식 GitLab Agent Helm 차트를 사용하는 경우, GitLab 18.0에서 새 agentk 이미지가 새 위치에서 원활하게 배포되기 시작합니다.

CI/CD 잡 토큰을 JWT 표준으로 업데이트#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab 19.0에서 CI/CD 잡 토큰은 문자열 토큰 형식에서 JWT 토큰 형식으로 전환됩니다. 이 변경은 모든 프로젝트의 새 CI/CD 잡 토큰 및 기존 CI/CD 잡 토큰에 영향을 미칩니다. 문제가 발생하면 GitLab 20.0 릴리스까지 CI/CD 토큰에 레거시 형식을 사용할 수 있습니다.

알려진 문제:

  1. GitLab Runner의 AWS Fargate 드라이버 0.5.0 이하는 JWT 표준과 호환되지 않습니다. 잡이 file name too long 오류와 함께 실패합니다. AWS Fargate 사용자 정의 실행기 드라이버 사용자는 0.5.1 이상으로 업그레이드해야 합니다. 마이그레이션 지침은 문서를 참조하세요.
  2. 훨씬 긴 JWT 표준은 일부 CI/CD 구성 파일에서 사용되는 echo $CI_JOB_TOKEN | base64 명령을 중단시킵니다. 대신 echo $CI_JOB_TOKEN | base64 -w0 명령을 사용할 수 있습니다.

Gitaly의 bin_pathuse_bundled_binaries 구성 옵션#

  • GitLab 18.2에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

Gitaly에서 bin_pathuse_bundled_binaries 구성 옵션 사용에 대한 지원은 지원 중단되며 GitLab 19.0에서 제거됩니다.

Gitaly가 제공하는 Git 바이너리가 Git을 실행하는 유일한 지원 방식이 됩니다.

kpt 기반 agentk 지원 중단#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

Kubernetes용 에이전트의 kpt 기반 설치에 대한 지원을 제거할 예정입니다. 대신 지원되는 설치 방법 중 하나를 사용하여 에이전트를 설치해야 합니다:

  • Helm (권장)
  • GitLab CLI
  • Flux

kpt에서 Helm으로 마이그레이션하려면 에이전트 설치 문서를 따라 kpt로 배포된 agentk 인스턴스를 덮어쓰세요.

mergeTrainIndexmergeTrainsCount GraphQL 필드 지원 중단#

  • GitLab 17.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

MergeRequest의 GraphQL 필드 mergeTrainIndexmergeTrainsCount가 지원 중단됩니다. 머지 트레인에서 머지 리퀘스트의 위치를 확인하려면 MergeTrainCarindex 필드를 대신 사용하세요. 머지 트레인의 MR 수를 가져오려면 MergeTrains::TrainTypecars에서 count를 대신 사용하세요.

scanResultPolicies GraphQL 필드 지원 중단#

  • GitLab 17.8에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

16.10에서 스캔 결과 정책은 정책 유형의 범위와 기능의 변화를 더 정확하게 반영하기 위해 머지 리퀘스트 승인 정책으로 이름이 변경되었습니다.

이에 따라 GraphQL 엔드포인트를 업데이트했습니다. scanResultPolicies 대신 approvalPolicies를 사용하세요.

취소된 변경 사항#

다음 변경 사항은 취소되었습니다.

컨테이너 스캐닝 기본 심각도 임계값을 medium으로 설정#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

컨테이너 스캐닝 보안 기능은 많은 보안 결과를 생성하며, 이 양은 엔지니어링 팀이 관리하기 어려운 경우가 많습니다. 심각도 임계값을 medium으로 변경하여 사용자에게 더 합리적인 기본값을 제공하며, medium 미만의 심각도를 가진 결과는 보고되지 않습니다. GitLab 18.0부터 CS_SEVERITY_THRESHOLD 환경 변수의 기본값이 unknown 대신 medium으로 설정됩니다. 결과적으로 심각도가 lowunknown인 보안 결과는 기본적으로 더 이상 보고되지 않습니다. 따라서 이전에 기본 브랜치에서 보고된 이러한 심각도를 가진 취약점은 다음 컨테이너 스캔 실행 시 더 이상 탐지되지 않는 것으로 표시됩니다. 이러한 결과를 계속 표시하려면 원하는 수준으로 CS_SEVERITY_THRESHOLD 변수를 구성해야 합니다.

License Scanning CI/CD 아티팩트 보고서 유형 지원 중단#

  • GitLab 16.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

CI/CD 아티팩트 보고서 유형은 GitLab 16.9에서 지원 중단되며 GitLab 18.0에서 제거됩니다. 이 키워드를 사용하는 CI/CD 구성은 GitLab 18.0에서 작동이 중단됩니다.

아티팩트 보고서 유형은 GitLab 16.3에서 레거시 License Scanning CI/CD 잡이 제거됨으로써 더 이상 사용되지 않습니다. 대신 CycloneDX 파일의 라이선스 스캔을 사용해야 합니다.

지원 종료된 SAST 잡이 CI/CD 템플릿에서 제거됨#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

GitLab 18.0에서 SAST CI/CD 템플릿을 업데이트하여 이전 릴리스에서 지원 종료에 도달한 분석기 잡을 제거할 예정입니다. 다음 잡들이 SAST.gitlab-ci.ymlSAST.latest.gitlab-ci.yml에서 제거됩니다:

각 분석기가 지원 종료에 도달했을 때 기본적으로 실행되지 않도록 잡 rules를 업데이트하고 업데이트 릴리스를 중단했습니다. 단, 이러한 잡을 계속 사용하거나 파이프라인에 있는 것에 의존하도록 템플릿을 사용자 정의했을 수 있습니다. 위의 잡에 의존하는 사용자 정의가 있는 경우, CI/CD 파이프라인의 중단을 피하기 위해 18.0으로 업그레이드하기 전에 필요한 조치를 수행하세요.

Secure 컨테이너 레지스트리의 공개 사용 지원 중단#

  • GitLab 17.4에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

registry.gitlab.com/gitlab-org/security-products/ 아래의 컨테이너 레지스트리는 GitLab 18.0에서 더 이상 접근할 수 없습니다. GitLab 14.8부터 올바른 위치는 registry.gitlab.com/security-products(주소에서 gitlab-org가 없음에 주의)입니다.

이 변경은 GitLab 취약점 스캐너의 릴리스 프로세스 보안을 향상시킵니다.

사용자는 GitLab 보안 스캐너 이미지의 표준 위치인 registry.gitlab.com/security-products/ 아래의 동등한 레지스트리를 사용하는 것이 권장됩니다. 관련 GitLab CI 템플릿은 이미 이 위치를 사용하므로 수정되지 않은 템플릿을 사용하는 사용자는 변경이 필요하지 않습니다.

오프라인 배포는 필요한 스캐너 이미지를 미러링하는 데 올바른 위치가 사용되고 있는지 확인하기 위해 특정 스캐너 지침을 검토해야 합니다.

SAST 잡이 더 이상 전역 캐시 설정을 사용하지 않음#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

GitLab 18.0에서 SAST 및 IaC 스캔을 업데이트하여 기본적으로 CI/CD 잡 캐시 사용을 비활성화할 예정입니다.

이 변경은 다음 CI/CD 템플릿에 영향을 미칩니다:

  • SAST: SAST.gitlab-ci.yml
  • IaC 스캔: SAST-IaC.gitlab-ci.yml

latest 템플릿인 SAST.latest.gitlab-ci.ymlSAST-IaC.latest.gitlab-ci.yml는 이미 업데이트했습니다. 이러한 템플릿 버전에 대한 자세한 내용은 안정적인 템플릿과 최신 템플릿을 참조하세요.

캐시 디렉토리는 대부분의 프로젝트에서 스캔 범위에 포함되지 않으므로, 캐시를 가져오면 타임아웃이나 거짓 양성 결과가 발생할 수 있습니다.

프로젝트를 스캔할 때 캐시를 사용해야 하는 경우, 프로젝트의 CI 구성에서 cache 속성을 재정의하여 이전 동작을 복원할 수 있습니다.

시크릿 탐지 분석기가 기본적으로 루트 사용자로 실행되지 않음#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

시크릿 탐지 분석기에 대한 이 계획된 변경은 취소되었습니다. 기본적으로 루트 사용자를 계속 사용할 수 있습니다.

SpotBugs 스캔의 일부로 프로젝트 빌드 지원#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

SpotBugs SAST 분석기는 스캔할 아티팩트가 없을 때 빌드를 수행할 수 있습니다. 이는 일반적으로 간단한 프로젝트에서는 잘 작동하지만 더 복잡한 빌드에서는 실패할 수 있습니다.

GitLab 18.0부터 SpotBugs 분석기 빌드 실패를 해결하려면 다음을 수행해야 합니다:

  1. 프로젝트를 사전 컴파일합니다.
  2. 스캔할 아티팩트를 분석기에 전달합니다.

이는 기능 변경이 아니므로 명확성을 위해 이 발표를 "취소됨"으로 표시했습니다.

지원 중단

원문 보기
요약

다음 GitLab 기능들은 지원이 중단되었으며 더 이상 사용을 권장하지 않습니다. 이 지원 중단 정보를 고급 검색 및 필터링하려면 Customer Success 팀이 만든 도구를 사용해 보세요. REST API 지원 중단은 별도로 문서화되어 있습니다.

다음 GitLab 기능들은 지원이 중단되었으며 더 이상 사용을 권장하지 않습니다.

  • 각 지원 중단 기능은 향후 릴리스에서 제거될 예정입니다.
  • 일부 기능은 제거 시 호환성 변경(breaking change)을 유발합니다.
  • GitLab.com에서는 지원 중단된 기능이 릴리스 전 한 달 이내에 언제든지 제거될 수 있습니다.
  • 제거된 기능의 문서를 확인하려면 GitLab Docs 아카이브를 참조하세요.
  • GraphQL API 지원 중단의 경우, 지원 중단 항목 없이 API 호출이 작동하는지 확인해야 합니다.

이 지원 중단 정보를 고급 검색 및 필터링하려면 Customer Success 팀이 만든 도구를 사용해 보세요.

REST API 지원 중단은 별도로 문서화되어 있습니다.

[rss] 향후 호환성 변경 사항 알림을 받으려면, 이 URL을 RSS 피드 리더에 추가하세요: https://about.gitlab.com/breaking-changes.xml

GitLab 20.0#

컴플라이언스 파이프라인#

  • GitLab 17.3에서 발표
  • GitLab 20.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

현재 프로젝트 파이프라인에서 컴플라이언스 또는 보안 관련 작업이 실행되도록 하는 방법은 두 가지가 있습니다:

프로젝트의 모든 파이프라인에서 필수 작업이 실행되도록 하는 단일 위치를 제공하기 위해, GitLab 17.3에서 컴플라이언스 파이프라인을 지원 중단하고 GitLab 20.0에서 이 기능을 제거할 예정입니다.

고객은 가능한 한 빨리 컴플라이언스 파이프라인에서 새로운 파이프라인 실행 정책 유형으로 마이그레이션해야 합니다.

자세한 내용은 다음을 참조하세요:

레거시 그룹 수준 감사 이벤트 스트리밍 대상 GraphQL API#

  • GitLab 18.10에서 발표
  • GitLab 20.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

다음 감사 이벤트 스트리밍 대상을 위한 그룹 수준 GraphQL API는 지원이 중단되며 GitLab 20.0에서 제거될 예정입니다.

지원 중단된 뮤테이션:

  • externalAuditEventDestinationCreate — 대신 groupAuditEventStreamingDestinationsCreate를 사용하세요.
  • externalAuditEventDestinationDestroy — 대신 groupAuditEventStreamingDestinationsDelete를 사용하세요.
  • externalAuditEventDestinationUpdate — 대신 groupAuditEventStreamingDestinationsUpdate를 사용하세요.
  • googleCloudLoggingConfigurationCreate — 대신 gcpLogging 카테고리와 함께 groupAuditEventStreamingDestinationsCreate를 사용하세요.
  • googleCloudLoggingConfigurationDestroy — 대신 groupAuditEventStreamingDestinationsDelete를 사용하세요.
  • googleCloudLoggingConfigurationUpdate — 대신 groupAuditEventStreamingDestinationsUpdate를 사용하세요.
  • auditEventsAmazonS3ConfigurationCreate — 대신 amazonS3 카테고리와 함께 groupAuditEventStreamingDestinationsCreate를 사용하세요.
  • auditEventsAmazonS3ConfigurationDelete — 대신 groupAuditEventStreamingDestinationsDelete를 사용하세요.
  • auditEventsAmazonS3ConfigurationUpdate — 대신 groupAuditEventStreamingDestinationsUpdate를 사용하세요.
  • auditEventsStreamingHeadersCreategroupAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingHeadersDestroygroupAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingHeadersUpdategroupAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingDestinationEventsAdd — 대신 auditEventsGroupDestinationEventsAdd를 사용하세요.
  • auditEventsStreamingDestinationEventsRemove — 대신 auditEventsGroupDestinationEventsRemove를 사용하세요.
  • auditEventsStreamingHttpNamespaceFiltersAdd — 대신 auditEventsGroupDestinationNamespaceFilterCreate를 사용하세요.
  • auditEventsStreamingHttpNamespaceFiltersDelete — 대신 auditEventsGroupDestinationNamespaceFilterDelete를 사용하세요.

지원 중단된 그룹 필드:

  • Group.externalAuditEventDestinations — 대신 Group.externalAuditEventStreamingDestinations를 사용하세요.
  • Group.googleCloudLoggingConfigurations — 대신 gcpLogging 카테고리와 함께 Group.externalAuditEventStreamingDestinations를 사용하세요.
  • Group.amazonS3Configurations — 대신 amazonS3 카테고리와 함께 Group.externalAuditEventStreamingDestinations를 사용하세요.

새로운 통합 스트리밍 대상 API는 단일 엔드포인트 세트와 category 매개변수를 통해 모든 대상 카테고리(HTTP, Google Cloud Logging, Amazon S3)를 지원합니다.

레거시 인스턴스 수준 감사 이벤트 스트리밍 대상 GraphQL API#

  • GitLab 18.10에서 발표
  • GitLab 20.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

다음 감사 이벤트 스트리밍 대상을 위한 인스턴스 수준 GraphQL API는 지원이 중단되며 GitLab 20.0에서 제거될 예정입니다.

지원 중단된 뮤테이션:

  • instanceExternalAuditEventDestinationCreate — 대신 instanceAuditEventStreamingDestinationsCreate를 사용하세요.
  • instanceExternalAuditEventDestinationDestroy — 대신 instanceAuditEventStreamingDestinationsDelete를 사용하세요.
  • instanceExternalAuditEventDestinationUpdate — 대신 instanceAuditEventStreamingDestinationsUpdate를 사용하세요.
  • instanceGoogleCloudLoggingConfigurationCreate — 대신 gcpLogging 카테고리와 함께 instanceAuditEventStreamingDestinationsCreate를 사용하세요.
  • instanceGoogleCloudLoggingConfigurationDestroy — 대신 instanceAuditEventStreamingDestinationsDelete를 사용하세요.
  • instanceGoogleCloudLoggingConfigurationUpdate — 대신 instanceAuditEventStreamingDestinationsUpdate를 사용하세요.
  • auditEventsInstanceAmazonS3ConfigurationCreate — 대신 amazonS3 카테고리와 함께 instanceAuditEventStreamingDestinationsCreate를 사용하세요.
  • auditEventsInstanceAmazonS3ConfigurationDelete — 대신 instanceAuditEventStreamingDestinationsDelete를 사용하세요.
  • auditEventsInstanceAmazonS3ConfigurationUpdate — 대신 instanceAuditEventStreamingDestinationsUpdate를 사용하세요.
  • auditEventsStreamingInstanceHeadersCreateinstanceAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingInstanceHeadersDestroyinstanceAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingInstanceHeadersUpdateinstanceAuditEventStreamingDestinationsUpdate를 사용하여 스트리밍 대상 설정으로 헤더를 구성하세요.
  • auditEventsStreamingDestinationInstanceEventsAdd — 대신 auditEventsInstanceDestinationEventsAdd를 사용하세요.
  • auditEventsStreamingDestinationInstanceEventsRemove — 대신 auditEventsInstanceDestinationEventsRemove를 사용하세요.

지원 중단된 쿼리 필드:

  • instanceExternalAuditEventDestinations — 대신 auditEventsInstanceStreamingDestinations를 사용하세요.
  • instanceGoogleCloudLoggingConfigurations — 대신 gcpLogging 카테고리와 함께 auditEventsInstanceStreamingDestinations를 사용하세요.
  • auditEventsInstanceAmazonS3Configurations — 대신 amazonS3 카테고리와 함께 auditEventsInstanceStreamingDestinations를 사용하세요.

새로운 통합 스트리밍 대상 API는 단일 엔드포인트 세트와 category 매개변수를 통해 모든 대상 카테고리(HTTP, Google Cloud Logging, Amazon S3)를 지원합니다.

NGINX Ingress, HAProxy, Traefik 차트 지원#

  • GitLab 18.9에서 발표
  • GitLab 20.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm 차트는 Kubernetes Gateway API를 사용하는 기본 Envoy Gateway의 대안으로 여러 Ingress 컨트롤러를 번들로 제공합니다.

이러한 번들 Ingress 컨트롤러, 즉 NGINX Ingress, HAProxy, Traefik은 GitLab Helm 차트와 GitLab Operator에서 제거될 예정입니다. Ingress 사용은 GitLab Helm 차트와 GitLab Operator에서 계속 지원되지만, 외부 Ingress 컨트롤러를 배포해야 합니다.

번들 Envoy Gateway와 Gateway API로 마이그레이션하는 것을 권장합니다. 또는 외부 Ingress 컨트롤러 및 클래스를 배포하고 구성할 수 있습니다.

GitLab 19.1#

고급 검색을 위한 Elasticsearch 7.x 지원 종료#

  • GitLab 18.10에서 발표
  • GitLab 19.1에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Elasticsearch 7.x의 유지 관리 기간이 2026-01-15에 종료되었습니다. GitLab Self-Managed의 경우, 관리자는 고급 검색을 사용하려면 Elasticsearch 인스턴스를 업그레이드해야 합니다.

Amazon Linux 2에 대한 Linux 패키지 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.1에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.1에서 Linux 패키지의 Amazon Linux 2(AL2) 패키지 빌드를 제거할 예정입니다.

Amazon Linux 2는 2026년 6월에 수명이 종료되며, 그 이후에는 더 이상 보안 업데이트를 받지 못합니다. Linux 패키지 지원 플랫폼 정책에 따라, 최소 6개월의 공지 기간을 두고 벤더가 운영 체제 지원을 중단하면 패키지 빌드를 중단합니다.

현재 Amazon Linux 2에서 GitLab을 실행 중이라면, GitLab 19.1로 업그레이드하기 전에 Amazon Linux 2023(AL2023) 또는 다른 지원되는 운영 체제로 마이그레이션해야 합니다. Amazon은 AL2에서 AL2023으로 이전하는 데 도움이 되는 마이그레이션 문서를 제공합니다.

GitLab 19.0#

컨테이너 레지스트리용 Azure 스토리지 드라이버#

  • GitLab 17.10에서 발표
  • GitLab 19.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리의 레거시 Azure 스토리지 드라이버는 GitLab 17.10에서 지원이 중단되었으며 GitLab 19.0에서 제거될 예정입니다. 컨테이너 레지스트리에 Azure 오브젝트 스토리지를 사용 중이며 새 드라이버를 일찍 사용하려면, 새 azure_v2 드라이버를 사용하도록 구성을 업데이트해야 합니다. GitLab 19.0에서는 지원 중단된 Azure 드라이버가 azure_v2 드라이버의 별칭이 되며 수동 작업이 필요하지 않습니다.

azure_v2 스토리지 드라이버는 레거시 드라이버에 비해 향상된 안정성, 더 나은 성능, 유지 관리가 쉬운 코드베이스를 제공합니다. 이러한 개선 사항은 레지스트리 사용량이 확장될 때 성능 문제를 예방하는 데 도움이 됩니다.

azure_v2 드라이버로 마이그레이션하려면:

  1. 레거시 azure 드라이버 대신 azure_v2 드라이버를 사용하도록 레지스트리 설정 파일을 업데이트하세요.
  2. 새 드라이버에 맞게 필요한 구성 설정을 조정하세요.
  3. 프로덕션에 배포하기 전에 비프로덕션 환경에서 새 구성을 테스트하세요.

스토리지 드라이버 구성 업데이트에 대한 자세한 내용은 오브젝트 스토리지 사용을 참조하세요.

컨테이너 레지스트리 AWS S3 서명 버전 2 지원#

  • GitLab 17.8에서 발표
  • GitLab 19.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리에서 Amazon S3 서명 버전 2를 사용한 요청 인증 지원은 GitLab 17.8에서 지원이 중단되었으며 GitLab 19.0에서 제거될 예정입니다.

AWS SDK v2 기반의 새 S3v2 스토리지 드라이버(GitLab 17.10부터 베타로 제공, 19.0에서 기본값이 됨)는 서명 버전 4만 지원합니다. S3v2 드라이버가 기본값이 되면, 서명 버전 2 설정(예: v4auth: false)은 자동으로 무시됩니다.

기본 드라이버가 S3v2로 변경되는 GitLab 버전으로 업그레이드하기 전에 서명 버전 4로 마이그레이션할 수 있습니다. 이 변경에는 S3 버킷 설정 업데이트와 GitLab 컨테이너 레지스트리 설정이 서명 버전 4와 호환되는지 확인이 필요합니다.

마이그레이션하려면:

  1. GitLab 컨테이너 레지스트리 설정의 S3 스토리지 백엔드 구성을 확인하세요.
  2. v4authfalse로 설정되어 있다면 옵션을 제거하세요.
  3. 기존 자격 증명이 v4 인증으로 작동하는지 확인하세요.

변경 후 문제가 발생하면 AWS 자격 증명을 재생성해 보세요.

Design Management 지원 중단#

  • GitLab 18.6에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 GitLab은 Design Management의 지원 중단을 시작합니다. Design Management를 사용하면 사용자가 협업을 위해 와이어프레임 및 목업과 같은 디자인 자산을 GitLab 이슈에 업로드할 수 있습니다. 기존 사용 현황과 예상 고객 영향을 신중히 고려한 후 이 결정을 내렸습니다. Design Management에 필요한 지속적인 유지 관리가 현재 사용량보다 많았으며, 현대적인 디자이너 워크플로우에 더 잘 맞는 솔루션에 노력을 집중하고 있습니다. GitLab 19.0 이후에는 새 디자인을 업로드할 수 없습니다. 기존 디자인은 GitLab 20.0까지 읽기 전용 모드로 사용 가능하여 사용자가 필요에 따라 디자인을 저장할 수 있는 시간을 제공합니다. GitLab은 디자이너가 이미 사용하는 도구와 더 잘 통합되는 대안을 모색하고 있습니다.

감사 이벤트 API에 키셋 페이지네이션 강제 적용#

  • GitLab 17.8에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

인스턴스, 그룹, 프로젝트의 감사 이벤트 API는 현재 선택적 키셋 페이지네이션을 지원합니다. GitLab 18.0에서 이러한 API에 키셋 페이지네이션을 강제 적용할 예정입니다.

비인증 Projects API 요청에 페이지 제한 강제 적용#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

모든 고객에게 플랫폼 안정성을 유지하고 최적의 성능을 보장하기 위해, 비인증 Projects API 요청에 최대 오프셋 제한을 강제 적용합니다. 오프셋 제한은 GitLab.com에만 적용됩니다. GitLab Self-Managed 및 GitLab Dedicated에서는 기본적으로 기능 플래그 뒤에서 오프셋 제한이 비활성화됩니다.

변경 사항

Projects List REST API에 대한 모든 비인증 요청에 최대 오프셋 제한 50,000이 적용됩니다. 예를 들어, 페이지당 20개 결과를 검색할 때 page 매개변수는 2,500 페이지로 제한됩니다.

더 많은 데이터에 대한 액세스가 필요한 워크플로우는 키셋 기반 페이지네이션 매개변수를 사용해야 합니다.

중요한 이유

이 제한은 리소스 활용을 효과적으로 관리하여 GitLab.com 전반에 걸쳐 일관된 서비스 품질과 성능을 보장합니다.

SUSE 배포판에 대한 Linux 패키지 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 SUSE 배포판 지원을 종료합니다. 영향을 받는 배포판:

  • openSUSE Leap 15.6
  • SUSE Linux Enterprise Server 12.5
  • SUSE Linux Enterprise Server 15.6

openSUSE Leap 15.6은 수명 종료에 가까워지고 있습니다. SUSE Linux Enterprise Server는 SUSE의 장기 서비스를 통해 계속 지원되지만, GitLab 고객들 사이의 채택율이 너무 낮아 상업적으로 지원을 지속하기 어렵습니다.

Linux 패키지를 사용하는 SUSE 배포판 고객은 18.11.x 버전 이후로 GitLab을 업그레이드할 수 없습니다.

이러한 배포판 중 하나를 사용하는 고객에게는 기존 배포판에서 GitLab의 Docker 배포로 마이그레이션하는 것을 권장합니다. 이렇게 하면 GitLab 업그레이드를 계속 받기 위해 다른 Linux 배포판으로 마이그레이션할 필요가 없습니다.

Ubuntu 20.04에 대한 Linux 패키지 지원#

  • GitLab 17.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Ubuntu 20.04에 대한 Ubuntu 표준 지원이 2025년 5월에 종료되었습니다.

Linux 패키지 지원 플랫폼 정책에 따라, 벤더가 운영 체제 지원을 중단하면 패키지 빌드를 중단합니다.

GitLab 19.0부터 Linux 패키지 설치의 Ubuntu 20.04 배포판에 대한 패키지를 더 이상 제공하지 않습니다. GitLab 18.11이 Ubuntu 20.04용 Linux 패키지가 포함된 마지막 GitLab 버전이 됩니다.

현재 Ubuntu 20.04에서 GitLab을 실행 중이라면, GitLab 19.0으로 업그레이드하기 전에 Ubuntu 22.04 또는 다른 지원되는 운영 체제로 업그레이드해야 합니다. Canonical은 마이그레이션을 도와주는 업그레이드 가이드를 제공합니다.

Linux 패키지에 번들된 Mattermost#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 Linux 패키지에서 번들 Mattermost를 제거할 예정입니다.

Mattermost는 2015년에 GitLab SSO를 포함한 오픈 소스 팀 메시징 솔루션으로 GitLab에 처음 번들되어 통합을 지원했습니다. 그 이후 Mattermost는 자체적인 패키징 및 배포 옵션을 크게 성숙시켰으며, GitLab 고객들 사이에서 번들 Mattermost의 채택율은 상대적으로 낮게 유지되었습니다.

Mattermost v11에서 Mattermost가 무료 제공에서 GitLab SSO를 지원 중단했습니다. 이 변경, Mattermost 독립 배포 옵션의 성숙도, 고객 기반에서의 낮은 채택율을 고려하여 Linux 패키지에서 Mattermost를 제거합니다.

현재 GitLab에 번들된 Mattermost를 사용 중이라면, 마이그레이션 지침과 사용 가능한 Mattermost 에디션은 Mattermost 문서의 GitLab Omnibus에서 Mattermost 독립 실행형으로 마이그레이션을 참조하세요.

리소스 소유자 암호 자격 증명 부여 지원 중단#

  • GitLab 18.0에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OAuth 플로우로 리소스 소유자 암호 자격 증명(ROPC) 부여를 사용하는 것이 지원 중단되며, GitLab 19.0에서 지원이 완전히 제거됩니다. 관리자가 인스턴스에서 클라이언트 자격 증명만으로 이 부여 유형을 사용할 수 있도록 활성화하거나 비활성화할 수 있는 설정이 추가되었습니다. 이를 통해 19.0 이전에 클라이언트 자격 증명 없이 ROPC 사용을 선택적으로 해제하려는 사용자가 그렇게 할 수 있습니다. ROPC는 19.0에서 완전히 제거되며 그 이후에는 클라이언트 자격 증명을 사용해도 사용할 수 없습니다.

GitLab은 보안상의 이유로 2025년 4월 8일부터 GitLab.com에서 ROPC에 클라이언트 인증을 요구했습니다. ROPC 지원을 완전히 제거하면 OAuth RFC 버전 2.1과 보안 수준이 일치합니다.

컨테이너 레지스트리용 S3 스토리지 드라이버(AWS SDK v1)#

  • GitLab 17.10에서 발표
  • GitLab 19.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

AWS SDK v1을 사용하는 컨테이너 레지스트리의 S3 스토리지 드라이버는 지원이 중단되었으며 GitLab 19.0에서 제거될 예정입니다. 컨테이너 레지스트리에 S3 오브젝트 스토리지를 사용 중이며 새 드라이버를 빨리 사용하려면, 새 s3_v2 드라이버를 사용하도록 구성을 업데이트해야 합니다. GitLab 19.0에서는 지원 중단된 s3 드라이버가 s3_v2 드라이버의 별칭이 되며 수동 작업이 필요하지 않습니다.

s3_v2 스토리지 드라이버는 AWS SDK v2를 기반으로 하며 향상된 성능, 더 나은 보안, AWS의 지속적인 지원을 제공합니다. 2025년 7월 31일에 지원이 종료되는 지원 중단된 AWS SDK v1을 대체하기 위해 2025년 5월부터 제공될 예정입니다.

s3_v2 드라이버는 서명 서명 알고리즘 v2를 더 이상 지원하지 않습니다. 설정에 v4auth: false 옵션이 설정된 경우, s3_v2 드라이버에서 자동으로 무시되며 더 안전한 V4 알고리즘이 사용됩니다. s3_v2 드라이버로 마이그레이션하려면:

  1. s3 대신 s3_v2 구성을 사용하도록 레지스트리 설정 파일을 업데이트하세요.
  2. AWS SDK v2는 서명 버전 4만 지원하므로, 아직 전환하지 않았다면 인증에서 서명 버전 2에서 서명 버전 4로 이동하세요.
  3. 프로덕션에 배포하기 전에 비프로덕션 환경에서 구성을 테스트하세요.

스토리지 드라이버 구성 업데이트에 대한 자세한 내용은 오브젝트 스토리지 사용을 참조하세요.

Slack 슬래시 명령#

  • GitLab 18.7에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Slack 슬래시 명령 통합은 동일한 기능을 제공하는 더 안전한 통합 방식인 GitLab for Slack 앱을 지원하기 위해 지원이 중단됩니다.

GitLab 19.0부터 사용자는 Slack 슬래시 명령 통합을 구성하거나 사용할 수 없습니다. 이 통합은 GitLab Self-Managed 및 GitLab Dedicated 인스턴스에서만 사용 가능합니다. GitLab.com을 사용 중이라면 아무것도 할 필요가 없습니다.

GitLab Self-Managed 또는 GitLab Dedicated를 사용 중이라면, 영향을 받는지 확인하려면 이슈 569345를 참조하세요.

Linux 패키지 및 GitLab Helm 차트에서의 Spamcheck 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 Linux 패키지와 GitLab Helm 차트에서 Spamcheck를 제거합니다.

Spamcheck는 공개적으로 노출된 GitLab 인스턴스의 스팸에 대응하는 서비스입니다. 그 특성상, 이 기능은 주로 대형 공개 인스턴스와 관련이 있으며, 이는 고객 기반에서 예외적인 경우입니다.

낮은 채택율과 독립 배포 옵션의 가용성을 고려하여, Linux 패키지와 GitLab Helm 차트에서 Spamcheck를 제거합니다. Spamcheck를 사용하지 않는 고객은 이 변경의 영향을 받지 않습니다. 제거로 인해 대부분의 고객의 패키지 크기와 의존성 설치 공간(및 보안)이 줄어듭니다.

현재 번들 Spamcheck를 사용 중이라면, Docker를 사용하여 별도로 배포할 수 있습니다.

데이터 마이그레이션은 필요하지 않습니다. 구성 지침은 링크된 문서에서 제공됩니다.

NGINX Ingress 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm 차트는 현재 NGINX Ingress를 기본 네트워킹 구성 요소로 번들 제공합니다. NGINX Ingress가 2026년 3월에 수명이 종료됨에 따라, Gateway API와 Envoy Gateway로 전환하고 있습니다.

GitLab 19.0부터 Gateway API와 번들 Envoy Gateway가 기본 구성이 됩니다. 배포에 Envoy Gateway로의 마이그레이션이 불가능하다면, GitLab 20.0에서 전체 제거가 계획될 때까지 계속 사용 가능한 번들 NGINX Ingress를 명시적으로 다시 활성화할 수 있습니다.

이 변경은 Linux 패키지의 NGINX, 또는 외부에서 관리되는 Ingress나 Gateway API 컨트롤러를 사용하는 GitLab Helm 차트와 GitLab Operator 인스턴스에는 영향을 미치지 않습니다.

전체 제거까지 포크된 NGINX Ingress 차트와 빌드에 대해 최선의 보안 유지 관리를 제공할 것입니다. 원활한 전환을 보장하기 위해 제공되는 Gateway API 솔루션 또는 외부에서 관리되는 Ingress 컨트롤러로의 마이그레이션을 계획하는 것을 권장합니다.

PostgreSQL 16 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 PostgreSQL의 연간 업그레이드 주기를 따릅니다.

PostgreSQL 16 지원은 GitLab 19.0에서 제거될 예정입니다. GitLab 19.0에서 PostgreSQL 17이 최소 필요 PostgreSQL 버전이 됩니다.

PostgreSQL 17은 GitLab 18.9부터 사용 가능하며, GitLab 19.0에서 PostgreSQL 16이 제거되기 전에 언제든지 업그레이드할 수 있습니다.

Linux 패키지를 사용하여 설치한 단일 PostgreSQL 인스턴스를 실행 중이라면, 18.11에서 자동 업그레이드가 시도될 수 있습니다. 업그레이드를 수용할 충분한 디스크 공간이 있는지 확인하세요.

자세한 내용은 패키지된 PostgreSQL 서버 업그레이드를 참조하세요.

Redis 6 지원#

  • GitLab 18.10에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 19.0에서 안전하고 지원 가능한 인프라 스택을 유지하는 노력의 일환으로 Redis 6 지원을 제거할 예정입니다.

GitLab 19.0으로 업그레이드하기 전에 다음 중 하나를 실행해야 합니다:

  • Redis 7.2.
  • Valkey 7.2 (GitLab 18.9부터 베타로 사용 가능하며 GitLab 19.0에서 일반 제공 예정).

Linux 패키지에 포함된 번들 Redis는 GitLab 16.2부터 Redis 7을 사용하고 있으므로 영향을 받지 않습니다. 외부 Redis 6 배포를 사용하는 GitLab Self-Managed 인스턴스만 마이그레이션해야 합니다.

외부 Redis 6 배포를 마이그레이션하기 위한 다음 리소스를 참조하세요:

  • AWS ElastiCache: Redis 6 인스턴스를 Redis 7.2 또는 Valkey 7.2로 업그레이드하세요. 사용 가능한 업그레이드 경로는 AWS ElastiCache 문서를 참조하세요.
  • GCP Memorystore: Redis 6 인스턴스를 Redis 7.2 또는 Valkey 7.2로 업그레이드하세요. 사용 가능한 업그레이드 경로는 GCP Memorystore 문서를 참조하세요.
  • Azure Cache for Redis: Azure에서는 현재 관리형 Redis 7.2 또는 Valkey 7.2 옵션을 사용할 수 없습니다. Azure VM 또는 AKS에서 Redis 7.2 또는 Valkey 7.2를 직접 호스팅할 수 있습니다. GitLab 19.0에서 일반 제공이 계획된 Valkey 7.2를 지원하는 GitLab Linux 패키지 설치 방법을 사용할 수도 있습니다.
  • 자체 호스팅: Redis 6 인스턴스를 Redis 7.2 또는 Valkey 7.2로 업그레이드하세요.

자세한 내용은 요구 사항 문서를 참조하세요.

GitLab Helm 차트에서 번들 PostgreSQL, Redis, MinIO 지원#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm 차트는 GitLab 설정을 더 쉽게 하기 위해 Bitnami PostgreSQL, Bitnami Redis, 공식 MinIO 차트 포크를 번들로 제공합니다. 라이선스, 프로젝트 유지 관리, 공개 이미지 가용성에 대한 여러 변경으로 인해 이러한 구성 요소는 대체 없이 GitLab Helm 차트와 GitLab Operator에서 제거될 예정입니다.

이러한 차트는 현재 기본으로 활성화되어 있지만 프로덕션 사용에는 권장하지 않는다고 명시적으로 문서화되어 있습니다. 그 유일한 목적은 빠른 설정 개념 증명 및 테스트 환경을 가능하게 하는 것이었습니다.

번들 PostgreSQL, Redis, MinIO가 포함된 인스턴스를 실행 중이라면, 마이그레이션 가이드를 확인하세요.

Linux 패키지가 제공하는 Redis 및 PostgreSQL은 이 변경의 영향을 받지 않습니다.

ci_job_token_scope_enabled 프로젝트 API 속성 지원 중단#

  • GitLab 16.4에서 발표
  • GitLab 19.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이 프로젝트에서 액세스 제한 CI/CD 작업 토큰 프로젝트 설정은 18.0에서 제거되었습니다. 프로젝트 API의 관련 ci_job_token_scope_enabled 속성은 이제 지원이 중단되었으며 항상 false를 반환하므로 19.0에서 제거될 예정입니다. 작업 토큰 액세스를 제어하려면 CI/CD 작업 토큰 프로젝트 설정을 사용하세요.

heroku/builder:22 이미지 지원 중단#

  • GitLab 17.4에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

클라우드 네이티브 빌드팩(CNB) 빌더 이미지가 Auto DevOps Build 프로젝트에서 heroku/builder:24로 업데이트되었습니다. 대부분의 경우 변경 사항이 큰 영향을 미치지 않을 것으로 예상되지만, 일부 Auto DevOps 사용자, 특히 Auto Build 사용자에게는 호환성 변경이 될 수 있습니다. 워크로드에 대한 영향을 더 잘 이해하려면 다음을 검토하세요:

이러한 변경 사항은 Auto DevOps의 Auto Build 단계가 제공하는 auto-build-image를 파이프라인에서 사용하는 경우에 적용됩니다.

GitLab 19.0 이후에도 heroku/builder:22를 계속 사용하려면 AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDERheroku/builder:22로 설정하세요.

Explore > Projects의 트렌딩 탭 지원 중단#

  • GitLab 18.8에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Explore > Projects트렌딩 탭과 관련 GraphQL 인수는 GitLab 18.8에서 지원이 중단되었으며 GitLab 19.0에서 제거될 예정입니다. GitLab 19.0 릴리스 전 한 달 동안, 트렌딩 탭은 GitLab.com에서 별 수 기준으로 내림차순 정렬된 활성 탭으로 리다이렉트됩니다.

제거되는 항목

  • Explore > Projects 페이지의 트렌딩
  • 다음 GraphQL 유형의 trending 인수:
    • Query.adminProjects
    • Query.projects
    • Organization.projects

변경 이유

트렌딩 알고리즘은 공개 프로젝트만 고려하므로, 주로 내부 또는 비공개 가시성을 사용하는 GitLab Self-Managed 인스턴스에서는 효과가 없습니다. 알고리즘의 한계와 검색 기능 부재로 인해 Self-Managed 사용자들로부터 명시적인 제거 요청이 있었습니다. 중요한 개선에 투자하는 대신, 기존 검색 메커니즘 강화에 리소스를 집중하고 있습니다.

필요한 조치

UI 사용자: 트렌딩 탭은 19.0에서 완전히 제거되기 전 다음 호환성 변경 기간 동안 접근이 불가능합니다. 최근 업데이트되거나 별 수가 가장 많은 프로젝트를 보려면 활성 탭을 사용하는 것을 권장합니다.

Bitbucket Cloud 가져오기 GitLab API에서 앱 암호 사용#

  • GitLab 18.9에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Atlassian은 Bitbucket Cloud의 앱 암호(사용자 이름 및 암호 인증)를 지원 중단하고 이 인증 방법이 2026-06-09에 작동을 중지할 것이라고 발표했습니다.

GitLab 19.0부터 GitLab API를 통해 Bitbucket Cloud에서 리포지터리를 가져오려면 사용자 API 토큰을 사용해야 합니다.

Bitbucket Server에서 리포지터리를 가져오거나 GitLab UI를 통해 Bitbucket Cloud에서 가져오는 사용자는 영향을 받지 않습니다.

ciJobTokenScopeAddProject GraphQL 뮤테이션 지원 중단#

  • GitLab 17.5에서 발표
  • GitLab 19.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0의 CI/CD 작업 토큰에 대한 기본 동작 변경 예정으로, 관련 ciJobTokenScopeAddProject GraphQL 뮤테이션을 ciJobTokenScopeAddGroupOrProject로 대체하여 지원 중단합니다.

GitLab 18.8#

정적 컴플라이언스 위반 보고서#

  • GitLab 18.2에서 발표
  • GitLab 18.8에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

기존 정적 컴플라이언스 위반 보고서는 GitLab 18.2에서 지원이 중단되었으며 GitLab 18.8에서 제거될 예정입니다.

정적 컴플라이언스 위반 보고서를 대체하기 위해:

이러한 기능은 정적 위반 보고서와 동일한 기능을 모두 제공하지만, 필요한 위반 사항을 구성할 수 있습니다.

GitLab 18.8에서 정적 컴플라이언스 위반 보고서를 요구 사항 및 제어에 대한 더 정확한 보고를 위해 컴플라이언스 프레임워크를 사용하는 동적 보고서로 대체할 예정입니다.

GitLab 18.6#

GitLab Duo Self-Hosted를 위한 초기 Mistral 모델 지원 중단#

  • GitLab 18.3에서 발표
  • GitLab 18.6에서 지원 종료
  • GitLab 18.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.6에서 GitLab Duo Self-Hosted와 함께 사용하기 위한 Mistral 7B-it, Mixtral 8x7B, Mixtral 8x22B 모델 지원을 제거할 예정입니다. GitLab Duo Enterprise 고객은 GitLab Duo Self-Hosted와 함께 이러한 모델을 계속 사용할 수 있지만, 이러한 모델을 사용하는 구성에 대한 기술 지원은 더 이상 받을 수 없습니다. GitLab Duo Self-Hosted는 모든 일반 제공 GitLab Duo Self-Hosted 기능과 완전히 호환되는 것으로 검증된 Mistral Small 24B Instruct 2506을 계속 지원합니다.

Omnibus Linux 패키지에 번들된 Prometheus 2.x#

  • GitLab 18.3에서 발표
  • GitLab 18.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지에 번들된 Prometheus 2.x는 지원이 중단되었으며 GitLab 18.6에서 최신 Prometheus 3.x 릴리스로 업데이트될 예정입니다.

Prometheus 3에는 새 로그 형식 및 더 엄격한 헤더 유효성 검사와 같은 잠재적인 호환성 변경이 포함되어 있습니다. 자세한 내용은 Prometheus 마이그레이션 가이드를 참조하세요.

이 변경은 GitLab Helm 차트 설치에는 영향을 미치지 않습니다.

컴플라이언스 표준 준수 대시보드를 컴플라이언스 상태 대시보드로 교체#

  • GitLab 17.11에서 발표
  • GitLab 18.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.11에서 다음을 출시했습니다:

이러한 기능은 컴플라이언스 표준 준수 대시보드와 동일한 기능을 모두 제공하지만, 필요한 준수 사항을 구성할 수 있습니다.

GitLab 18.6에서 요구 사항 및 제어에 대한 더 정확한 보고를 위해 컴플라이언스 표준 준수 대시보드를 컴플라이언스 상태 대시보드로 교체할 예정입니다.

정확한 코드 검색을 비활성화하는 사용자 설정#

  • GitLab 18.3에서 발표
  • GitLab 18.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

정확한 코드 검색을 비활성화하는 사용자 설정이 지원 중단되었습니다. GitLab.com에서는 더 이상 프로필 기본 설정에서 정확한 코드 검색을 비활성화할 수 없습니다.

정확한 코드 검색은 더 나은 사용자 경험을 제공하며 기존 검색 API와 호환됩니다. 모든 사용자가 향상된 검색 기능의 이점을 누릴 수 있도록 이 사용자 설정은 GitLab 18.6에서 제거될 예정입니다.

GitLab 18.5#

고급 검색에서 OpenSearch 1.x 지원#

  • GitLab 18.2에서 발표
  • GitLab 18.5에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OpenSearch 1.x의 유지 관리 기간이 종료되었습니다. GitLab Self-Managed 및 GitLab Dedicated의 경우, 관리자는 고급 검색을 사용하려면 OpenSearch 인스턴스를 업그레이드해야 합니다.

GitLab 18.4#

GitLab 차트에서 Bitnami PostgreSQL 및 Redis 이미지#

  • GitLab 18.4에서 발표
  • GitLab 18.4에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm 차트 기본 구성은 PostgreSQL 및 Redis를 위해 Bitnami 차트와 컨테이너 이미지에 의존합니다. Bitnami는 2025년 9월 29일부터 무료 카탈로그에서 이러한 이미지를 중단할 예정입니다. 2025년 8월 28일부터 일시적으로 이미지를 중단하는 브라운아웃이 시작되었습니다.

GitLab 차트는 데모 및 테스트 목적으로만 Bitnami의 PostgreSQL 및 Redis를 번들로 제공합니다. 지원되는 GitLab 참조 아키텍처의 일부가 아닙니다. 참조 아키텍처를 사용하거나 다른 벤더의 패키지 또는 이미지로 외부 PostgreSQL 및 Redis를 배포한 경우, 이 변경의 영향을 받지 않습니다.

임시 해결책으로 GitLab은 차트 구성을 Bitnami 레거시 리포지터리로 마이그레이션했습니다. 그러나 패치되지 않은 GitLab 차트 환경(GitLab 17.11, GitLab 18.0.5, GitLab 18.1.4, GitLab 18.2.1 이하)은 계속 지원 중단된 Bitnami 리포지터리에서 이미지를 가져오므로, 9월 29일 이후 배포 실패가 발생하고 브라운아웃 단계 동안 배포 실패가 발생할 수 있습니다.

영향을 받는 GitLab 차트 구성을 실행 중이라면 다음 중 하나를 수행해야 합니다:

  • 지원되는 GitLab 참조 아키텍처로 마이그레이션하세요.
  • 패치된 차트 버전으로 업그레이드하세요.
  • 차트 값에서 레거시 리포지터리를 구성하세요. 예시는 머지 리퀘스트 4421을 참조하세요.

앞으로 GitLab 차트에서 Bitnami 구성 요소를 대체하거나 잠재적으로 제거할 대안을 평가할 예정입니다. 자세한 내용은 공식 Bitnami 발표를 참조하세요.

GitLab 18.3#

cert-manager Helm 차트 업데이트#

  • GitLab 18.0에서 발표
  • GitLab 18.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

최신 cert-manager 차트의 스키마 유효성 검사를 활성화하기 위해, GitLab Helm 차트의 certmanager.install 값이 installCertmanager로 대체되어 지원이 중단됩니다. 스키마 정의는 GitLab 차트의 certmanager 섹션 내에 추가한 추가 속성을 허용하지 않습니다.

GitLab 18.3(GitLab 차트 9.3)에서 지원 중단된 값을 제거하고 번들 cert-manager를 업데이트할 예정입니다.

이전에 certmanager.install 설정을 사용했다면:

  1. certmanager.install 값을 installCertmanager로 이전하세요.
  2. certmanager.install 설정을 완전히 제거하세요.

또한 cert-manager 릴리스 노트를 검토하세요:

GitLab 18.1#

커밋 API에 적용된 파이프라인 작업 제한#

  • GitLab 17.7에서 발표
  • GitLab 18.1에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0부터 활성 파이프라인의 최대 작업 수커밋 API를 사용하여 작업을 생성할 때도 적용됩니다. 구성된 작업 제한 내에 유지되도록 통합을 검토하세요.

GitLab 18.0#

API Discovery가 기본적으로 브랜치 파이프라인을 사용#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0에서 API Discovery의 CI/CD 템플릿(API-Discovery.gitlab-ci.yml)의 기본 동작을 업데이트할 예정입니다.

GitLab 18.0 이전에는 이 템플릿이 MR이 열려 있을 때 기본적으로 머지 리퀘스트(MR) 파이프라인에서 작업을 실행하도록 구성합니다. GitLab 18.0부터 이 템플릿의 동작을 다른 AST 스캐너의 안정적인 템플릿 에디션 동작에 맞출 예정입니다:

  • 기본적으로 템플릿은 브랜치 파이프라인에서 스캔 작업을 실행합니다.
  • MR이 열려 있을 때 대신 MR 파이프라인을 사용하려면 CI/CD 변수 AST_ENABLE_MR_PIPELINES: true를 설정할 수 있습니다. 이 새 변수의 구현은 이슈 410880에서 추적됩니다.

Application Security Testing 분석기 주요 버전 업데이트#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0에서 모든 Application Security Testing 분석기 컨테이너 이미지의 주요 버전을 업데이트할 예정입니다.

기본 포함 템플릿을 사용하지 않거나 분석기 버전을 고정한 경우, 고정된 버전을 제거하거나 최신 주요 버전으로 업데이트하도록 CI/CD 작업 정의를 업데이트해야 합니다.

GitLab 17.0에서 GitLab 17.11을 사용하는 사용자는 GitLab 18.0 릴리스까지 분석기 업데이트를 정상적으로 받게 되며, 이후 새로 수정된 버그와 출시된 기능은 분석기의 새 주요 버전에서만 릴리스됩니다. 그러나 컨테이너 레지스트리에서 게시된 컨테이너 이미지를 제거하지는 않습니다.

유지 관리 정책에 따라 지원 중단된 버전에 버그 및 기능을 백포트하지 않습니다. 필요한 경우 최신 3개 마이너 릴리스 내에서 보안 패치가 백포트됩니다.

특히 다음 분석기는 GitLab 18.0 릴리스 이후 더 이상 업데이트되지 않습니다:

  • GitLab Advanced SAST: 버전 1
  • 컨테이너 스캐닝: 버전 7
  • Gemnasium: 버전 5
  • DAST: 버전 5
  • DAST API: 버전 4
  • Fuzz API: 버전 4
  • IaC 스캐닝: 버전 5
  • 파이프라인 시크릿 탐지: 버전 6
  • 정적 애플리케이션 보안 테스팅(SAST): 모든 분석기의 버전 5
    • kics
    • kubesec
    • pmd-apex
    • semgrep
    • sobelow
    • spotbugs

Upcoming 및 Started 마일스톤 필터의 동작 변경#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

"Upcoming" 및 "Started" 특수 필터의 동작이 다가오는 GitLab 주요 릴리스 18.0에서 변경될 예정입니다. 두 필터의 새로운 동작은 이슈 429728에 설명되어 있습니다.

이 변경은 기존 마일스톤 필터링 로직을 계속 사용하는 GitLab REST API에는 영향을 미치지 않습니다. GitLab GraphQL API는 새 필터링 로직을 따르도록 업데이트됩니다.

CI/CD 작업 토큰 - 승인된 그룹 및 프로젝트 허용 목록 적용#

  • GitLab 16.5에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.9에 도입된 승인된 그룹 및 프로젝트 설정 (GitLab 16.3에서 이 프로젝트에 대한 액세스 제한에서 이름 변경)을 사용하면 프로젝트에 대한 CI/CD 작업 토큰 액세스를 제어할 수 있습니다. 이 프로젝트 및 허용 목록에 있는 그룹과 프로젝트만으로 설정하면, 허용 목록에 추가된 그룹이나 프로젝트만 작업 토큰을 사용하여 프로젝트에 액세스할 수 있습니다.

GitLab 15.9 이전에 생성된 프로젝트의 경우, 허용 목록이 기본적으로 비활성화되어 (모든 그룹 및 프로젝트 액세스 설정 선택), 모든 프로젝트에서 작업 토큰 액세스를 허용했습니다. 허용 목록은 이제 모든 새 프로젝트에서 기본적으로 활성화됩니다. 이전 프로젝트에서는 여전히 비활성화되어 있거나 모든 그룹 및 프로젝트 옵션을 수동으로 선택하여 액세스를 제한하지 않았을 수 있습니다.

GitLab 17.6부터 GitLab Self-Managed 및 GitLab Dedicated 인스턴스 관리자는 선택적으로 모든 프로젝트에 이 더 안전한 설정을 강제 적용할 수 있습니다. 이 설정은 프로젝트 유지 관리자가 모든 그룹 및 프로젝트를 선택하지 못하도록 합니다. 이 변경은 프로젝트 간 더 높은 보안 수준을 보장합니다.

GitLab 18.0에서 이 인스턴스 설정이 GitLab.com, GitLab Self-Managed, GitLab Dedicated에서 기본적으로 활성화됩니다. GitLab Self-Managed 및 GitLab Dedicated 관리자는 GitLab 18.0으로 업그레이드한 후 설정을 비활성화하여 업그레이드 이전 동작을 복원할 수 있습니다. GitLab 18.0에서는 GitLab Self-Managed 및 GitLab Dedicated의 프로젝트 설정이 변경되지 않지만, 인스턴스 설정 상태는 인스턴스의 모든 프로젝트에 영향을 미칩니다.

이 변경에 대비하여, 교차 프로젝트 인증을 위해 작업 토큰을 사용하는 프로젝트 유지 관리자는 프로젝트의 승인된 그룹 및 프로젝트 허용 목록을 채워야 합니다. 그런 다음 설정을 이 프로젝트 및 허용 목록에 있는 그룹과 프로젝트만으로 변경해야 합니다.

CI/CD 작업 토큰으로 인증하여 프로젝트에 액세스해야 하는 프로젝트를 식별하는 데 도움이 되도록, GitLab 17.6에 프로젝트에 대한 작업 토큰 인증을 추적하는 방법도 도입했습니다. 해당 데이터를 사용하여 CI/CD 작업 토큰 허용 목록을 채울 수 있습니다.

GitLab 17.10에서 18.6까지 마이그레이션 도구를 사용하여 작업 토큰 인증 로그에서 CI/CD 작업 토큰 허용 목록을 자동으로 채울 수 있습니다. GitLab 18.0에서 허용 목록의 일반적 적용 전에 이 마이그레이션 도구를 사용하여 허용 목록을 채우고 사용하는 것을 권장합니다. GitLab 18.0에서는 이전에 발표된 대로 GitLab.com에서 허용 목록의 자동 채우기 및 적용이 발생합니다.

이 마이그레이션 도구는 GitLab 18.6에서 제거됩니다.

CI/CD 작업 토큰 - 프로젝트에서 액세스 제한 설정 제거#

  • GitLab 15.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.4에서 더 안전하게 만들기 위해 프로젝트의 CI/CD 작업 토큰(CI_JOB_TOKEN)에서 액세스를 제한하는 설정을 도입했습니다. 이 설정은 CI_JOB_TOKEN 액세스 제한이었습니다. GitLab 16.3에서 명확성을 위해 이 프로젝트에서 액세스 제한으로 이름을 변경했습니다.

GitLab 15.9에서 승인된 그룹 및 프로젝트라는 대체 설정을 도입했습니다. 이 설정은 허용 목록을 사용하여 프로젝트에 대한 작업 토큰 액세스를 _제어_합니다. 이 새 설정은 원본보다 크게 개선된 것입니다. 첫 번째 반복은 GitLab 16.0에서 지원 중단되었으며 GitLab 18.0에서 제거될 예정입니다.

이 프로젝트에서 액세스 제한 설정은 모든 새 프로젝트에서 기본적으로 비활성화됩니다. GitLab 16.0 이후로는 어떤 프로젝트에서든 비활성화된 후 이 설정을 다시 활성화할 수 없습니다. 대신 승인된 그룹 및 프로젝트 설정을 사용하여 프로젝트에 대한 작업 토큰 액세스를 제어하세요.

DAST dast_crawl_extract_element_timeoutdast_crawl_search_element_timeout 변수 지원 중단#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

DAST 변수 DAST_CRAWL_EXTRACT_ELEMENT_TIMEOUTDAST_CRAWL_SEARCH_ELEMENT_TIMEOUT은 지원이 중단되었으며 GitLab 18.0에서 제거될 예정입니다. 도입 당시 이 변수들은 특정 브라우저 인터랙션에 대한 세분화된 타임아웃 제어를 제공했습니다. 이러한 인터랙션은 이제 공통 타임아웃 값으로 관리되어 변수가 불필요해졌습니다. 또한 기본 구현 문제로 인해 DAST 브라우저 기반 분석기 도입 이후 이 변수들은 기능하지 않았습니다. 이 두 변수를 제거하면 DAST 설정이 단순해지고 사용자에게 더 나은 온보딩 경험을 제공합니다.

DAST dast_devtools_api_timeout의 기본값이 낮아집니다#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

DAST_DEVTOOLS_API_TIMEOUT 환경 변수는 DAST 스캔이 브라우저의 응답을 기다리는 시간을 결정합니다. GitLab 18.0 이전에는 변수의 정적 값이 45초입니다. GitLab 18.0 이후에는 DAST_DEVTOOLS_API_TIMEOUT 환경 변수의 값이 동적으로 계산되며, 다른 타임아웃 설정을 기반으로 합니다. 대부분의 경우 45초 값은 많은 스캐너 함수의 타임아웃 값보다 높았습니다. 동적으로 계산된 값은 DAST_DEVTOOLS_API_TIMEOUT 변수가 적용되는 경우 수를 늘려 더 유용하게 만듭니다.

잠재적 중단을 줄이기 위해 다음 일정에 따라 기본 타임아웃 값을 점진적으로 조정합니다:

타임아웃 값 마일스톤
45 17.11 이하
30 18.0
20 18.1
10 18.2
5 18.3

Dependency Proxy 토큰 범위 적용#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너용 Dependency Proxy는 범위를 확인하지 않고 개인 액세스 토큰 또는 그룹 액세스 토큰을 사용하여 docker logindocker pull 요청을 수락합니다.

GitLab 18.0에서 Dependency Proxy는 인증을 위해 read_registrywrite_registry 범위 모두를 요구합니다. 이 변경 이후에는 이러한 범위가 없는 토큰을 사용한 인증 시도가 거부됩니다.

이것은 호환성 변경입니다. 업그레이드 전에 필요한 범위가 있는 새 액세스 토큰을 생성하고 이러한 새 토큰으로 워크플로우 변수 및 스크립트를 업데이트하세요.

이 변경이 GitLab Self-Managed 인스턴스에 미치는 영향을 평가하려면 GitLab 17.10 이후 경고 메시지에 대한 인증 로그를 모니터링할 수 있습니다. auth_json.log 파일에서 Dependency proxy missing authentication abilities를 포함하는 항목을 찾으세요. GitLab Helm 차트나 GitLab Dedicated를 사용하는 경우 로그는 component: "gitlab"subcomponent: "auth_json"에 있습니다. 이러한 항목은 필요한 범위 없이 토큰을 사용한 인증 시도를 보여주며, GitLab 18.0으로 업그레이드한 후 실패합니다.

Terraform CI/CD 템플릿 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Terraform CI/CD 템플릿은 지원이 중단되었으며 GitLab 18.0에서 제거될 예정입니다. 영향을 받는 템플릿:

  • Terraform.gitlab-ci.yml
  • Terraform.latest.gitlab-ci.yml
  • Terraform/Base.gitlab-ci.yml
  • Terraform/Base.latest.gitlab-ci.yml

GitLab 16.9에서 지원 중단을 사용자에게 알리기 위해 템플릿에 새 작업이 추가되었습니다. 영향을 받는 파이프라인에서 deprecated-and-will-be-removed-in-18.0 작업을 자리 표시자 작업으로 덮어써서 경고를 끌 수 있습니다.

GitLab은 BSL 라이선스 하에 있는 버전으로 작업 이미지의 terraform 바이너리를 업데이트할 수 없습니다.

Terraform을 계속 사용하려면, 템플릿과 Terraform 이미지를 복제하여 필요에 따라 유지 관리하세요. GitLab은 사용자 지정 빌드 이미지로 마이그레이션하기 위한 자세한 지침을 제공합니다.

대안으로 GitLab.com에서 새로운 OpenTofu CI/CD 구성 요소를 사용하거나 GitLab Self-Managed에서 새로운 OpenTofu CI/CD 템플릿을 사용하는 것을 권장합니다. CI/CD 구성 요소는 아직 GitLab Self-Managed에서 사용할 수 없지만, 이슈 #415638에서 이 기능 추가를 제안하고 있습니다. CI/CD 구성 요소가 GitLab Self-Managed에서 사용 가능해지면 OpenTofu CI/CD 템플릿이 제거됩니다.

새로운 OpenTofu CI/CD 구성 요소에 대해 자세히 알아보세요.

라이선스 메타데이터 형식 V1 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

라이선스 메타데이터 형식 V1 데이터셋은 지원이 중단되었으며 GitLab 18.0에서 제거될 예정입니다.

package_metadata_synchronization 기능 플래그가 활성화된 사용자는 GitLab 16.3 이상으로 업그레이드하고 기능 플래그 구성을 제거하는 것이 좋습니다.

GraphQL API의 NamespaceProjectSortEnum에서 STORAGE 열거형 지원 중단#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab GraphQL API의 NamespaceProjectSortEnum에서 STORAGE 열거형이 GitLab 18.0에서 제거됩니다.

이 변경에 대비하여, NamespaceProjectSortEnum과 상호 작용하는 GraphQL 쿼리를 검토하고 업데이트하는 것을 권장합니다. STORAGE 필드에 대한 참조를 EXCESS_REPO_STORAGE_SIZE_DESC로 교체하세요.

GraphQL API의 ProjectMonthlyUsageType에서 name 필드 지원 중단#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab GraphQL API의 ProjectMonthlyUsageType에서 name 필드가 GitLab 18.0에서 제거됩니다.

이 변경에 대비하여, ProjectMonthlyUsageType과 상호 작용하는 GraphQL 쿼리를 검토하고 업데이트하는 것을 권장합니다. name 필드에 대한 참조를 project.name으로 교체하세요.

GitLab NGINX 차트 컨트롤러 이미지 v1.3.1에 대한 폴백 지원#

  • GitLab 17.6에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경은 GitLab NGINX 차트를 사용하고 있고 자체 NGINX RBAC 규칙을 설정한 경우에만 영향을 미칩니다.

자체 외부 NGINX 차트를 사용 중이거나, NGINX RBAC 규칙 변경 없이 GitLab NGINX 차트를 사용 중이라면 이 지원 중단이 적용되지 않습니다.

GitLab 17.6(Helm 차트 8.6)에서 GitLab 차트는 기본 NGINX 컨트롤러 이미지를 버전 1.3.1에서 1.11.2로 업데이트했습니다. 이 새 버전은 GitLab NGINX 차트에 추가된 새 RBAC 규칙이 필요하므로 해당 규칙을 최종적으로 생성해야 합니다. 이 변경은 다음 버전에도 백포트됩니다:

  • GitLab 17.5.1(Helm 차트 8.5.1)
  • GitLab 17.4.3(Helm 차트 8.4.3)
  • GitLab 17.3.6(Helm 차트 8.3.6)
Note

Helm 차트 8.3에서 8.7까지의 최신 패치 버전에는 NGINX 컨트롤러 버전 1.11.2가 포함되어 있습니다. 이후 차트 버전에는 다양한 보안 수정이 포함된 버전 1.11.5가 포함됩니다. GitLab 18.0은 기본적으로 컨트롤러 버전 1.11.5를 사용합니다.

자체 NGINX RBAC 규칙을 관리하는 경우 nginx-ingress.rbac.createfalse로 설정한 것입니다. 이 경우 GitLab 17.3(Helm 차트 8.3)부터 GitLab 17.11(Helm 차트 8.11)까지는 이 변경을 감지하고 이전 컨트롤러 이미지를 사용하는 폴백 메커니즘이 있어 RBAC 규칙 변경이 필요하지 않습니다.

GitLab 18.0(Helm 차트 9.0)부터 이 폴백 메커니즘이 제거되므로 새 컨트롤러 이미지가 사용되고 새 RBAC 규칙이 존재해야 합니다.

GitLab 18.0에서 강제 적용되기 전에 새 NGINX 컨트롤러 이미지를 활용하려면:

  1. 클러스터에 새 RBAC 규칙을 추가하세요 예시 참조.
  2. nginx-ingress.controller.image.disableFallbacktrue로 설정하세요.

자세한 내용은 차트 릴리스 페이지를 참조하세요.

Gitaly 속도 제한#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Git 작업과 리포지터리 지연의 가변성이 높기 때문에, Gitaly RPC 기반 속도 제한은 효과가 없습니다. 적절한 속도 제한을 구성하는 것은 어렵고 해로운 작업이 초당 요청 수가 두드러질 만큼 충분히 생성되는 경우가 드물어 빠르게 쓸모없어지는 경우가 많습니다.

Gitaly는 이미 동시성 제한적응형 제한 추가 기능을 지원하며, 이는 프로덕션에서 잘 작동하는 것으로 입증되었습니다.

Gitaly는 외부 네트워크에 직접 노출되지 않으며 로드 밸런서와 같은 외부 보호 레이어가 더 나은 보안을 제공하므로 속도 제한은 효과가 적습니다.

따라서 더 신뢰할 수 있는 동시성 제한을 위해 속도 제한을 지원 중단합니다. Gitaly RPC 기반 속도 제한은 GitLab 18.0에서 제거될 예정입니다.

레거시 Web IDE 지원 중단#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

레거시 Vue 기반 GitLab Web IDE 구현이 GitLab에서 제거될 예정입니다. 이 변경은 GitLab 15.11부터 기본 Web IDE 경험이 된 GitLab VSCode Fork 기반 Web IDE로의 성공적인 전환에 따른 것입니다.

이 제거는 레거시 Web IDE 구현에 여전히 액세스하는 사용자에게 영향을 미칩니다.

이 제거에 대비하여, GitLab 인스턴스에서 이전에 비활성화된 경우 vscode_web_ide 기능 플래그를 활성화하세요.

정책당 허용되는 스캔 실행 정책 작업 수 제한#

  • GitLab 17.5에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

정책당 허용되는 최대 스캔 실행 정책 작업 수에 새 제한이 추가되었습니다. 이 변경은 17.4에서 기능 플래그 scan_execution_policy_action_limitscan_execution_policy_action_limit_group 뒤에 도입되었습니다. 활성화되면 스캔 실행 정책의 처음 10개 작업만 처리됩니다.

제한을 추가함으로써 보안 정책의 성능과 확장성을 보장할 수 있습니다.

추가 작업이 필요한 경우, 기존 정책을 10개 이하의 작업으로 제한하세요. 그런 다음 보안 정책 프로젝트당 5개의 스캔 실행 정책 제한 내에서 추가 작업이 있는 새 스캔 실행 정책을 만드세요.

GitLab Self-Managed 및 GitLab Dedicated 관리자는 scan_execution_policies_action_limit 애플리케이션 설정으로 사용자 지정 제한을 구성할 수 있습니다.

스캔 실행 정책에서 제한된 scan 작업#

  • GitLab 17.5에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab.com에서 GitLab 18.0부터 스캔 실행 정책은 정책당 10개의 scan 작업으로 제한됩니다. 제한을 초과하는 새 정책을 생성할 수 없으며 제한을 초과하는 기존 정책을 업데이트할 수 없습니다. 제한을 초과하는 기존 정책의 경우 정책의 처음 10개 scan 작업만 실행됩니다.

GitLab Self-Managed 및 GitLab Dedicated 인스턴스에서는 scan_execution_policies_action_limit 애플리케이션 설정으로 사용자 지정 제한을 구성할 수 있습니다. 이러한 인스턴스의 제한은 기본적으로 0개 작업입니다. 10개 작업의 제한을 구성하는 것이 좋습니다.

Prometheus 서브차트의 주요 업데이트#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0 및 GitLab 차트 9.0에서 Prometheus 서브차트가 15.3에서 27.3으로 업데이트됩니다. 이 업데이트와 함께 Prometheus 3이 기본으로 제공됩니다.

업그레이드를 수행하려면 수동 단계가 필요합니다. Alertmanager, Node Exporter 또는 Pushgateway가 활성화된 경우 Helm 값도 업데이트해야 합니다.

자세한 내용은 마이그레이션 가이드를 참조하세요.

GitLab.com의 취약점에 대한 새로운 데이터 보존 제한#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 18.0에서 시스템 성능과 안정성을 향상시키기 위해 GitLab.com Ultimate 고객을 위한 새로운 데이터 보존 제한을 도입합니다. 데이터 보존 제한은 취약점 데이터가 저장되는 기간에 영향을 줍니다. 업데이트되지 않은 12개월 이상 된 취약점은 자동으로 콜드 스토리지 아카이브로 이동됩니다. 이러한 아카이브는:

  • GitLab UI를 통해 계속 액세스 및 다운로드 가능합니다.
  • 3년간 보존됩니다.
  • 3년 후 영구적으로 삭제됩니다.

PostgreSQL 14 및 15 더 이상 지원되지 않음#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 PostgreSQL의 연간 업그레이드 주기를 따릅니다.

PostgreSQL 14 및 15 지원은 GitLab 18.0에서 제거될 예정입니다. GitLab 18.0에서 PostgreSQL 16이 최소 필요 PostgreSQL 버전이 됩니다.

PostgreSQL 14 및 15는 전체 GitLab 17 릴리스 주기 동안 지원됩니다. PostgreSQL 16도 GitLab 18.0 이전에 업그레이드하려는 인스턴스를 위해 지원됩니다.

Omnibus Linux 패키지를 사용하여 설치한 단일 PostgreSQL 인스턴스를 실행 중이라면 17.11에서 자동 업그레이드가 시도될 수 있습니다. 업그레이드를 수용할 충분한 디스크 공간이 있는지 확인하세요. 자세한 내용은 Omnibus 데이터베이스 문서를 참조하세요.

그룹 설정의 프로젝트 페이지 지원 중단#

  • GitLab 17.0에서 발표
  • GitLab 17.9에서 지원 종료
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

그룹 소유자는 그룹 설정의 프로젝트 페이지에 액세스할 수 있으며, 여기에는 그룹이 포함하는 프로젝트 목록과 프로젝트 생성, 편집, 삭제 옵션, 그리고 각 프로젝트의 구성원 페이지 링크가 있습니다. 이 모든 기능은 그룹 개요 페이지와 프로젝트의 각 구성원 페이지에서 사용 가능합니다. 그룹 설정의 프로젝트 페이지에 대한 낮은 사용량과 제한된 접근성으로 인해 이 페이지는 지원이 중단될 예정입니다. 이 변경은 사용자 인터페이스에만 영향을 미칩니다. 기본 API는 계속 사용 가능하므로 프로젝트 API를 사용하여 프로젝트 생성, 편집, 삭제를 계속 수행할 수 있습니다. 17.9에서 이 페이지에서 그룹 개요 페이지로 리다이렉트를 구현할 예정입니다. 프로젝트 페이지는 18.0에서 그룹 설정에서 완전히 제거됩니다.

REST API 엔드포인트 pre_receive_secret_detection_enabled 지원 중단#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

REST API 엔드포인트 pre_receive_secret_detection_enabledsecret_push_protection_enabled로 대체되어 지원이 중단됩니다. 기능 pre_receive_secret_detection에서 secret_push_protection으로의 이름 변경을 반영하기 위해 일부 API 필드 이름을 변경하고 있습니다.

새 API 필드 이름을 추가했지만 원래 발표된 대로 GitLab 18.0에서 이전 필드 이름을 더 이상 제거하지 않을 예정입니다.

이전 pre_receive_secret_detection_enabled 데이터베이스 열을 제거하도록 데이터베이스를 계속 업데이트하지만, API 필드 이름 중 하나를 사용할 수 있습니다. 둘 다 새 secret_push_protection_enabled 데이터베이스 열의 값을 반영합니다.

Raspberry Pi 32비트 패키지 지원 중단#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 버전 18.0부터 Raspberry Pi용 32비트 패키지를 더 이상 제공하지 않습니다. 64비트 Raspberry Pi OS를 사용하고 arm64 Debian 패키지를 설치해야 합니다. 32비트 OS에서 데이터를 백업하고 64비트 OS로 복원하는 방법은 PostgreSQL을 위한 운영 체제 업그레이드를 참조하세요.

allowed_pull_policies에 없는 컨테이너 이미지 풀 정책 거부#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

구성된 모든 풀 정책은 러너의 config.toml 파일에 지정된 allowed_pull_policies 구성에 있어야 합니다. 그렇지 않으면 작업이 incompatible pull policy 오류로 실패해야 합니다.

현재 구현에서 여러 풀 정책이 정의된 경우, 다른 정책이 포함되지 않더라도 적어도 하나의 풀 정책이 allowed-pull-policies의 정책과 일치하면 작업이 통과됩니다.

GitLab 18.0에서는 allowed-pull-policies의 정책과 일치하는 풀 정책이 없는 경우에만 작업이 실패합니다. 그러나 현재 동작과 달리, 작업은 allowed-pull-policies에 나열된 풀 정책만 사용합니다. 이 차이로 인해 현재 통과하는 작업이 GitLab 18.0에서 실패할 수 있습니다.

duoProAssignedUsersCount GraphQL 필드 제거#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

18.0에서 duoProAssignedUsersCount GraphQL 필드를 제거합니다. aiMetrics API로 이 필드를 사용하는 경우 문제가 발생할 수 있으며, 대신 duoAssignedUsersCount를 사용할 수 있습니다. 이 제거는 GitLab Duo Pro 및 Duo 시트 할당 사용자 모두를 계산하는 수정의 일부입니다.

setPreReceiveSecretDetection GraphQL 뮤테이션을 setSecretPushProtection으로 이름 변경#

  • GitLab 17.7에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

setPreReceiveSecretDetection GraphQL 뮤테이션이 setSecretPushProtection으로 이름 변경되었습니다. 기능 pre_receive_secret_detection에서 secret_push_protection으로의 이름 변경을 반영하기 위해 뮤테이션 응답의 일부 필드 이름도 변경하고 있습니다.

새 뮤테이션 이름을 추가했지만 원래 발표된 대로 GitLab 18.0에서 이전 뮤테이션 이름을 더 이상 제거하지 않을 예정입니다.

이전 pre_receive_secret_detection_enabled 데이터베이스 열을 제거하도록 데이터베이스를 계속 업데이트하지만, 뮤테이션 이름 중 하나를 사용할 수 있습니다. 둘 다 새 secret_push_protection_enabled 데이터베이스 열의 값을 반영합니다.

GitGuardian 시크릿 탐지 건너뛰기 옵션 이름 변경#

  • GitLab 17.3에서 발표
  • GitLab 18.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitGuardian 시크릿 탐지를 건너뛰는 옵션인 [skip secret detection]secret_detection.skip_all이 지원 중단됩니다. 대신 [skip secret push protection]secret_push_protection.skip_all을 사용해야 합니다.

새 표현을 사용하는 것을 권장하지만, GitLab 18.0에서는 이전 옵션을 더 이상 제거하지 않을 예정입니다.

add_on_purchase GraphQL 필드를 add_on_purchases로 교체#

  • GitLab 17.4에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL 필드 add_on_purchase는 GitLab 17.4에서 지원이 중단되고 GitLab 18.0에서 제거될 예정입니다. 대신 add_on_purchases 필드를 사용하세요.

네임스페이스 add_on_purchase GraphQL 필드를 add_on_purchases로 교체#

  • GitLab 17.5에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

네임스페이스 GraphQL 필드 add_on_purchase는 GitLab 17.5에서 지원이 중단되고 GitLab 18.0에서 제거될 예정입니다. 대신 루트 add_on_purchases 필드를 사용하세요.

SUSE Linux Enterprise Server 15 SP2 지원#

  • GitLab 17.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

SUSE Linux Enterprise Server(SLES) 15 SP2의 장기 서비스 및 지원(LTSS)이 2024년 12월에 종료되었습니다.

따라서 Linux 패키지 설치를 위한 SLES SP2 배포판을 더 이상 지원하지 않습니다. 계속 지원받으려면 SLES 15 SP6으로 업그레이드해야 합니다.

ciJobTokenScopeRemoveProjectdirection GraphQL 인수 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

ciJobTokenScopeRemoveProject 뮤테이션의 direction GraphQL 인수가 지원 중단됩니다. GitLab 15.9에서 발표된 기본 CI/CD 작업 토큰 범위 변경에 따라, direction 인수는 GitLab 17.0에서 INBOUND가 기본값이 되고 OUTBOUND는 더 이상 유효하지 않습니다. GitLab 18.0에서 direction 인수를 제거할 예정입니다.

프로젝트의 토큰 액세스 방향을 제어하기 위해 direction 인수와 함께 OUTBOUND를 사용하고 있다면, 작업 토큰을 사용하는 파이프라인이 인증 실패 위험이 있습니다. 파이프라인이 예상대로 계속 실행되도록 다른 프로젝트를 프로젝트의 허용 목록에 명시적으로 추가해야 합니다.

API에서 노트 기밀성 전환#

  • GitLab 14.10에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

REST 및 GraphQL API를 사용한 노트 기밀성 전환이 지원 중단됩니다. 어떠한 방법으로도 노트 기밀 속성 업데이트가 더 이상 지원되지 않습니다. 경험을 단순화하고 개인 정보가 의도치 않게 노출되는 것을 방지하기 위해 이를 변경합니다.

Gitaly 스토리지 구성을 위한 git_data_dirs#

  • GitLab 16.0에서 발표
  • GitLab 18.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지 인스턴스의 Gitaly 스토리지를 구성하기 위해 git_data_dirs를 사용하는 지원은 16.0 이후로 지원 중단되었으며 18.0에서 제거될 예정입니다.

마이그레이션 지침은 git_data_dirs에서 마이그레이션을 참조하세요.

GitLab 17.11#

클라이언트 자격 증명 없는 OAuth ROPC 그랜트가 지원 중단됨#

  • GitLab 17.11에서 발표
  • GitLab 17.11에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab.com은 2025년 4월 8일부로 OAuth Resource Owner Password Credentials (ROPC) OAuth 그랜트에 클라이언트 인증을 요구합니다. ROPC는 RFC 버전 2.1에서 OAuth 워킹 그룹에 의해 제외되었습니다. 클라이언트 자격 증명 없는 기존 ROPC 연동은 이 날짜 이후 서비스 중단이 발생합니다. 중단이 발생하는 경우 마감 전에 연동을 업데이트하여 클라이언트 자격 증명을 포함하세요. 자세한 내용은 블로그에서 확인할 수 있습니다.

GitLab 17.9#

openSUSE Leap 15.5 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.9에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

openSUSE Leap의 장기 서비스 및 지원(LTSS)은 2024년 12월에 종료됩니다.

따라서 Linux 패키지 설치에 대해 openSUSE Leap 15.5 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 openSUSE Leap 15.6으로 업그레이드하세요.

GitLab 17.8#

CentOS 7 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

CentOS 7의 장기 서비스 및 지원(LTSS)은 2024년 6월에 종료되었습니다.

따라서 Linux 패키지 설치에 대해 CentOS 7 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 다른 운영 체제로 업그레이드하세요.

Oracle Linux 7 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Oracle Linux 7의 장기 서비스 및 지원(LTSS)은 2024년 12월에 종료됩니다.

따라서 Linux 패키지 설치에 대해 Oracle Linux 7 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 Oracle Linux 8로 업그레이드하세요.

Raspberry Pi OS Buster 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Raspberry Pi OS Buster(이전에는 Raspbian Buster로 알려진)의 장기 서비스 및 지원(LTSS)이 2024년 6월에 종료되었습니다.

따라서 Linux 패키지 설치에 대해 PiOS Buster 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 PiOS Bullseye로 업그레이드하세요.

Red Hat Enterprise Linux 7 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Red Hat Enterprise Linux (RHEL) 7은 2024년 6월에 유지보수 지원이 종료되었습니다.

따라서 RHEL 7 및 RHEL 7 호환 운영 체제에 대한 Linux 패키지를 더 이상 게시하지 않습니다. 지속적인 지원을 위해 RHEL 8로 업그레이드하세요.

Scientific Linux 7 지원#

  • GitLab 17.6에서 발표
  • GitLab 17.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Scientific Linux 7의 장기 서비스 및 지원(LTSS)은 2024년 6월에 종료되었습니다.

따라서 Linux 패키지 설치에 대해 Scientific Linux 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 다른 RHEL 호환 운영 체제로 업그레이드하세요.

GitLab 17.7#

/repository/tree REST API 엔드포인트의 오류 처리가 404를 반환#

  • GitLab 16.5에서 발표
  • GitLab 17.7에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.7에서 요청한 경로를 찾을 수 없을 때 리포지터리 트리 목록 API 엔드포인트 /projects/:id/repository/tree의 오류 처리 동작이 업데이트됩니다. 이제 엔드포인트는 상태 코드 404 Not Found를 반환합니다. 이전에는 상태 코드가 200 OK였습니다.

이 변경 사항은 GitLab 16.5의 GitLab.com에서 활성화되었으며 GitLab 17.7에서 Self-Managed 인스턴스에서 사용할 수 있습니다.

구현이 누락된 경로에 대해 빈 배열과 함께 200 상태 코드를 수신하는 것에 의존하는 경우 새 404 응답을 처리하도록 오류 처리를 업데이트해야 합니다.

TLS 1.0 및 1.1이 더 이상 지원되지 않음#

  • GitLab 17.4에서 발표
  • GitLab 17.7에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OpenSSL 버전 1.1.1의 장기 지원(LTS)이 2023년 9월에 종료되었습니다. 따라서 OpenSSL 3이 GitLab 17.7의 기본값이 됩니다. GitLab은 OpenSSL 3을 번들로 제공하므로 운영 체제를 변경할 필요가 없습니다.

OpenSSL 3으로 업그레이드하면:

  • GitLab은 모든 아웃바운드 및 인바운드 TLS 연결에 TLS 1.2 이상을 요구합니다.
  • TLS/SSL 인증서는 최소 112비트의 보안을 가져야 합니다. 2048비트보다 짧은 RSA, DSA, DH 키와 224비트보다 짧은 ECC 키는 금지됩니다.

자세한 내용은 GitLab 17.5 변경 사항을 참조하세요.

GitLab 17.6#

Debian 10 지원#

  • GitLab 17.3에서 발표
  • GitLab 17.6에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Debian 10의 장기 서비스 및 지원(LTSS)이 2024년 6월에 종료되었습니다.

따라서 Linux 패키지 설치에 대해 Debian 10 배포판을 더 이상 지원하지 않습니다. 지속적인 지원을 위해 Debian 11 또는 Debian 12로 업그레이드하세요.

GitLab 17.4#

파이프라인 뷰에서 Needs 탭 제거#

  • GitLab 17.1에서 발표
  • GitLab 17.4에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Job dependencies 그룹화 옵션이 있는 일반 파이프라인 뷰에 표시되는 정보를 복제하므로 파이프라인 뷰에서 Needs 탭을 제거합니다. 앞으로도 메인 파이프라인 그래프의 뷰를 계속 개선할 예정입니다.

GitLab 17.3#

FIPS 호환 Secure 분석기가 UBI Minimal에서 UBI Micro로 변경#

  • GitLab 17.2에서 발표
  • GitLab 17.3에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

보안 취약점을 위한 코드 스캔에 사용되는 일부 분석기의 기본 이미지를 업데이트하고 있습니다. 이미 Red Hat Universal Base Image (UBI)를 기반으로 하는 분석기 이미지만 변경하므로 보안 스캔에 대해 특별히 FIPS 모드를 활성화한 경우에만 이 변경 사항이 적용됩니다. GitLab 보안 스캔이 사용하는 기본 이미지는 UBI를 기반으로 하지 않으므로 영향을 받지 않습니다.

GitLab 17.3에서는 UBI 기반 분석기의 기본 이미지를 UBI Minimal에서 UBI Micro로 변경합니다. 불필요한 패키지가 적고 패키지 관리자가 포함되지 않습니다. 업데이트된 이미지는 더 작아지고 운영 체제에서 제공하는 패키지의 취약점에 덜 영향을 받습니다.

GitLab 지원팀의 지원 성명서는 분석기 이미지의 특정 내용에 의존하는 것을 포함하여 문서화되지 않은 커스터마이징을 제외합니다. 예를 들어 before_script에 추가 패키지를 설치하는 것은 지원되는 수정 사항이 아닙니다. 그럼에도 불구하고 이러한 유형의 커스터마이징에 의존하는 경우 이 변경 사항에 대한 응답 방법 또는 현재 커스터마이징에 대한 피드백을 제공하는 방법을 알아보려면 이 변경 사항에 대한 지원 중단 이슈를 참조하세요.

GitLab 17.0#

Kubernetes용 에이전트 옵션 ca-cert-file 이름 변경#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Kubernetes용 GitLab 에이전트(agentk)에서 --ca-cert-file 명령줄 옵션과 해당 config.caCert Helm 차트 값이 각각 --kas-ca-cert-fileconfig.kasCaCert로 이름이 변경되었습니다.

기존의 --ca-cert-fileconfig.caCert 옵션은 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

Herokuish에 대한 Auto DevOps 지원이 지원 중단됨#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Herokuish에 대한 Auto DevOps 지원은 Cloud Native Buildpacks을 위해 지원 중단됩니다. Herokuish에서 Cloud Native Buildpacks으로 빌드를 마이그레이션해야 합니다. GitLab 14.0부터 Auto Build는 기본적으로 Cloud Native Buildpacks를 사용합니다.

Cloud Native Buildpacks는 자동 테스트를 지원하지 않으므로 Auto DevOps의 Auto Test 기능도 지원 중단됩니다.

대시(-) 문자가 있는 자동 생성 Markdown 앵커 링크#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 모든 제목에 대한 앵커 링크를 자동으로 생성하므로 Markdown 문서나 위키 페이지의 특정 위치에 링크를 연결할 수 있습니다. 그러나 일부 엣지 케이스에서 자동 생성된 앵커는 많은 사용자가 예상하는 것보다 적은 대시(-) 문자로 생성됩니다. 예를 들어 ## Step - 1이라는 제목에서 대부분의 다른 Markdown 도구와 린터는 #step---1을 예상합니다. 그러나 GitLab은 연속 대시를 하나로 압축하여 #step-1의 앵커를 생성합니다.

GitLab 17.0에서는 연속 대시를 더 이상 제거하지 않음으로써 자동 생성 앵커를 업계 표준에 맞춥니다. 17.0에서 여러 대시가 있을 수 있는 제목에 Markdown 문서가 링크하는 경우 이 엣지 케이스를 피하도록 제목을 업데이트해야 합니다. 위의 예시에서는 ## Step - 1## Step 1로 변경하여 페이지 내 링크가 계속 작동하도록 할 수 있습니다.

CiRunner.projects 기본 정렬이 id_desc로 변경#

  • GitLab 16.0에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

CiRunner.projects 필드의 기본 정렬 순서 값이 id_asc에서 id_desc로 변경됩니다. 반환된 프로젝트 순서가 id_asc인 것에 의존하는 경우 선택을 명시적으로 만들기 위해 스크립트를 변경하세요.

일반 설정의 컴플라이언스 프레임워크#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컴플라이언스 센터의 프레임워크 및 프로젝트 보고서로 컴플라이언스 프레임워크 관리를 이동했습니다.

따라서 GitLab 17.0에서는 그룹 및 프로젝트의 일반 설정 페이지에서 컴플라이언스 프레임워크 관리를 제거합니다.

Swift 및 OSS 스토리지 드라이버에 대한 컨테이너 레지스트리 지원#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리는 스토리지 드라이버를 사용하여 다양한 객체 스토리지 플랫폼과 작동합니다. 각 드라이버의 코드는 상대적으로 독립적이지만, 이러한 드라이버에 대한 유지보수 부담이 큽니다. 각 드라이버 구현은 고유하며 드라이버를 변경하려면 해당 특정 드라이버에 대한 높은 수준의 도메인 전문 지식이 필요합니다.

유지보수 비용을 줄이기 위해 OSS(Object Storage Service)와 OpenStack Swift에 대한 지원을 지원 중단합니다. 두 가지 모두 이미 업스트림 Docker Distribution에서 제거되었습니다. 이는 객체 스토리지 지원과 관련하여 컨테이너 레지스트리를 더 넓은 GitLab 제품 제공과 일치시키는 데 도움이 됩니다.

OSS에는 S3 호환 모드가 있으므로 지원되는 드라이버로 마이그레이션할 수 없는 경우 이를 사용하는 것을 고려하세요. Swift는 S3 스토리지 드라이버에서도 필요한 S3 API 작업과 호환됩니다.

DAST ZAP 고급 구성 변수 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.7에서 새 브라우저 기반 DAST 분석기가 GA로 출시되면서 향후 언젠가 기본 DAST 분석기로 만들기 위한 작업을 진행 중입니다. 이를 위해 다음 레거시 DAST 변수가 지원 중단되어 GitLab 17.0에서 제거될 예정입니다: DAST_ZAP_CLI_OPTIONSDAST_ZAP_LOG_CONFIGURATION. 이러한 변수는 OWASP ZAP을 기반으로 한 레거시 DAST 분석기의 고급 구성을 허용했습니다. 새 브라우저 기반 분석기에는 ZAP 작동 방식에 고유한 동일한 기능이 포함되지 않습니다.

이 세 변수는 GitLab 17.0에서 제거됩니다.

의존성 스캐닝의 잘못된 SBOM 메타데이터 속성#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0은 CycloneDX SBOM 보고서에서 다음 메타데이터 속성 지원을 제거합니다:

  • gitlab:dependency_scanning:input_file
  • gitlab:dependency_scanning:package_manager

이러한 속성은 의존성 스캐닝에 의해 생성된 SBOM에 GitLab 15.7에서 추가되었습니다. 그러나 이러한 속성은 올바르지 않으며 GitLab CycloneDX 속성 분류 체계와 일치하지 않습니다. 이 문제를 해결하기 위해 GitLab 15.11에서 다음 올바른 속성이 추가되었습니다:

  • gitlab:dependency_scanning:input_file:path
  • gitlab:dependency_scanning:package_manager:name

잘못된 속성은 하위 호환성을 위해 유지되었습니다. 이제 지원 중단되었으며 17.0에서 제거됩니다.

sbt 1.0.X에 대한 의존성 스캐닝 지원#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

매우 오래된 버전의 sbt를 지원하면 유지보수 비용을 늘리지 않고 이 패키지 관리자에 대한 추가 사용 사례 지원을 개선하는 것이 어렵습니다.

sbt 버전 1.1.0은 6년 전에 출시되었으며, 의존성 스캐닝이 더 이상 작동하지 않으므로 1.0.x에서 업그레이드하는 것이 좋습니다.

임시 스토리지 증가와 관련된 GraphQL 필드 지원 중단#

  • GitLab 16.7에서 발표
  • GitLab 17.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL 필드 isTemporaryStorageIncreaseEnabledtemporaryStorageIncreaseEndsOn이 지원 중단되었습니다. 이러한 GraphQL 필드는 임시 스토리지 증가 프로젝트와 관련이 있습니다. 프로젝트가 취소되었고 필드가 사용되지 않았습니다.

컨테이너 스캐닝을 위한 Grype 스캐너 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 컨테이너 스캐닝 분석기에서 Grype 스캐너에 대한 지원은 GitLab 16.9에서 지원 중단됩니다.

GitLab 17.0부터 Grype 분석기는 지원 성명서에 설명된 제한적인 수정을 제외하고 더 이상 유지보수되지 않습니다.

Trivy 스캐너를 사용하는 CS_ANALYZER_IMAGE의 기본 설정을 사용하는 것이 좋습니다.

Grype 분석기 이미지의 기존 현재 메이저 버전은 GitLab 19.0까지 최신 권고 데이터베이스와 운영 체제 패키지로 계속 업데이트되며, 이후 분석기가 작동을 멈춥니다.

19.0 이후에도 Grype를 계속 사용하려면 보안 스캐너 통합 문서를 참조하여 GitLab과의 자체 통합을 만드는 방법을 알아보세요.

라이선스 스캐닝 CI 템플릿 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0은 다음 라이선스 스캐닝 CI 템플릿을 제거합니다:

위 템플릿 중 하나를 포함하는 CI 구성은 GitLab 17.0에서 작동을 멈춥니다.

대신 CycloneDX 파일의 라이선스 스캐닝을 사용하는 것이 좋습니다.

의존성 스캐닝 및 라이선스 스캐닝에서 Python 3.9 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.9부터 의존성 스캐닝 및 라이선스 스캐닝의 Python 3.9 지원이 지원 중단됩니다. GitLab 17.0에서 Python 3.10이 의존성 스캐닝 CI/CD 작업의 기본 버전이 됩니다.

GitLab 17.0부터 의존성 스캐닝 및 라이선스 스캐닝 기능은 호환 가능한 잠금 파일 없이 Python 3.9가 필요한 프로젝트를 지원하지 않습니다.

GitLab Runner에서 Windows CMD 지원 중단#

  • GitLab 16.1에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 11.11에서 Windows Batch 실행기인 CMD 쉘이 PowerShell을 위해 GitLab Runner에서 지원 중단되었습니다. 그 이후로 CMD 쉘은 GitLab Runner에서 계속 지원되었습니다. 그러나 이는 엔지니어링 팀과 Windows에서 Runner를 사용하는 고객 모두에게 추가적인 복잡성을 초래했습니다. 17.0에서 GitLab Runner에서 Windows CMD에 대한 지원을 완전히 제거할 계획입니다. 고객은 쉘 실행기와 함께 Windows에서 Runner를 사용할 때 PowerShell을 사용할 계획을 세워야 합니다. 고객은 제거 이슈 이슈 29479에서 피드백을 제공하거나 질문할 수 있습니다.

CiRunnerManager에서 중복된 CiRunner GraphQL 필드 지원 중단#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이러한 필드들(architectureName, ipAddress, platformName, revision, version)은 러너 구성 내에 그룹화된 러너 매니저 도입으로 중복되어 GraphQL CiRunner 유형에서 지원 중단됩니다.

Terraform Module CI/CD 템플릿의 fmt 작업 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Terraform Module CI/CD 템플릿의 fmt 작업은 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 이는 다음 템플릿에 영향을 줍니다:

  • Terraform-Module.gitlab-ci.yml
  • Terraform/Module-Base.gitlab-ci.yml

다음을 사용하여 파이프라인에 Terraform fmt 작업을 수동으로 다시 추가할 수 있습니다:

fmt:
  image: hashicorp/terraform
  script: terraform fmt -chdir "$TF_ROOT" -check -diff -recursive

OpenTofu CI/CD 컴포넌트fmt 템플릿을 사용할 수도 있습니다.

Vulnerability Management 기능에서 message 필드 지원 중단#

  • GitLab 16.1에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이 MR은 VulnerabilityCreate GraphQL 뮤테이션에서 message 필드와 취약점 내보내기의 AdditionalInfo 열을 지원 중단합니다. message 필드는 GitLab 16.0의 보안 보고서 스키마에서 제거되었으며 다른 곳에서 더 이상 사용되지 않습니다.

GitLab Runner Kubernetes 실행기에서 terminationGracePeriodSeconds 지원 중단#

  • GitLab 16.3에서 발표
  • GitLab 17.0에서 지원 종료
  • GitLab 17.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Runner Kubernetes 실행기 설정인 terminationGracePeriodSeconds는 지원 중단되었으며 GitLab 17.0에서 제거됩니다. Kubernetes에서 GitLab Runner 워커 Pod의 정리 및 종료를 관리하려면 대신 cleanupGracePeriodSecondspodTerminationGracePeriodSeconds를 구성해야 합니다. cleanupGracePeriodSecondspodTerminationGracePeriodSeconds 사용 방법에 대한 자세한 내용은 GitLab Runner 실행기 문서를 참조하세요.

피처 플래그 API의 version 필드 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

피처 플래그 REST APIversion 필드는 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

version 필드가 제거된 후에는 레거시 피처 플래그를 생성할 방법이 없어집니다.

Developer 역할에서 취약점 상태 변경 지원 중단#

  • GitLab 16.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Developer가 취약점 상태를 변경하는 기능이 지원 중단됩니다. 다가오는 GitLab 17.0 릴리스에서 Developer 역할에서 이 기능을 제거하는 호환성 변경을 계획하고 있습니다. 개발자에게 이 권한을 계속 부여하려는 사용자는 개발자를 위한 커스텀 역할을 생성하고 admin_vulnerability 권한을 추가하여 해당 액세스를 부여할 수 있습니다.

GitLab Self-Managed에서 그룹 Owner의 커스텀 역할 생성 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Self-Managed 17.0에서는 그룹 Owner에 대한 커스텀 역할 생성이 제거됩니다. 이 기능은 관리자 전용 인스턴스 수준으로 이동합니다. 그룹 Owner는 그룹 수준에서 커스텀 역할을 할당할 수 있습니다.

GitLab.com의 그룹 Owner는 계속해서 커스텀 역할을 관리하고 그룹 수준에서 할당할 수 있습니다.

GitLab Self-Managed에서 API를 사용하여 커스텀 역할을 관리하는 경우 새 인스턴스 엔드포인트가 추가되었으며 API 작업을 계속하려면 이를 사용해야 합니다.

  • 인스턴스의 모든 멤버 역할 나열 - GET /api/v4/member_roles
  • 인스턴스에 멤버 역할 추가 - POST /api/v4/member_roles
  • 인스턴스에서 멤버 역할 제거 - DELETE /api/v4/member_roles/:id

GraphQL VulnerabilityType에서 hasSolutions 필드 지원 중단#

  • GitLab 16.3에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL 필드 Vulnerability.hasSolutions는 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 대신 Vulnerability.hasRemediations를 사용하세요.

러너 쉘 실행기에서 레거시 쉘 이스케이핑 및 인용 지원 중단#

  • GitLab 15.11에서 발표
  • GitLab 17.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

변수 확장을 처리하기 위한 러너의 레거시 이스케이프 시퀀스 메커니즘은 Ansi-C 인용의 최적화되지 않은 구현을 사용합니다. 이 방법은 러너가 큰따옴표에 포함된 인수를 확장한다는 것을 의미합니다. 15.11부터 러너 쉘 실행기의 레거시 이스케이핑 및 인용 방법을 지원 중단합니다.

로그인 페이지의 커스텀 텍스트와 관련된 지원 중단 매개변수#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

sign_in_texthelp_text 매개변수는 Settings API에서 지원 중단됩니다. 로그인 및 회원가입 페이지에 커스텀 텍스트를 추가하려면 Appearance APIdescription 필드를 사용하세요.

Windows Server 2022를 위해 Windows Server 2019 지원 중단#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

최근 GitLab.com 러너의 Windows Server 2022(베타) 출시를 발표했습니다. 이와 함께 GitLab 17.0에서 Windows 2019를 지원 중단합니다.

Windows 2022로 마이그레이션하는 방법에 대한 자세한 내용은 GitLab.com 러너에 대한 Windows 2022 지원 이제 사용 가능을 참조하세요.

DingTalk OmniAuth 제공자#

  • GitLab 15.10에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab에 DingTalk OmniAuth 제공자를 제공하는 omniauth-dingtalk gem은 다음 메이저 릴리스인 GitLab 17.0에서 제거됩니다. 이 gem은 사용량이 매우 적으며 JiHu 에디션에 더 적합합니다.

Gitaly 구성의 중복 스토리지#

  • GitLab 16.10에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

동일한 스토리지 경로를 가리키는 여러 Gitaly 스토리지를 구성하는 지원은 지원 중단되었으며 GitLab 17.0에서 제거됩니다. GitLab 17.0 이상에서는 이 유형의 구성이 오류를 발생시킵니다.

이 유형의 구성은 백그라운드 리포지터리 유지보수에 문제를 일으킬 수 있고 향후 Gitaly 스토리지 구현과 호환되지 않으므로 지원을 제거합니다.

인스턴스 관리자는 각 스토리지가 고유한 경로로 구성되도록 gitlab.rb 구성 파일의 gitaly['configuration'] 섹션에 있는 storage 항목을 업데이트해야 합니다.

다운스트림 파이프라인에서 파일 유형 변수 확장 수정#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에는 다른 CI/CD 변수에서 파일 유형 CI/CD 변수를 참조하려고 하면 CI/CD 변수가 파일 내용을 포함하도록 확장되었습니다. 이 동작은 일반적인 쉘 변수 확장 규칙을 따르지 않아 올바르지 않았습니다. CI/CD 변수 참조는 파일 내용이 아닌 파일 경로만 포함하도록 확장되어야 합니다. 이것은 GitLab 15.7에서 대부분의 사용 사례에 대해 수정되었습니다. 안타깝게도 다운스트림 파이프라인에 CI/CD 변수를 전달하는 것은 아직 수정되지 않은 엣지 케이스였지만 GitLab 17.0에서 수정될 예정입니다.

이 변경으로 .gitlab-ci.yml 파일에 구성된 변수가 파일 변수를 참조하고 다운스트림 파이프라인으로 전달될 수 있으며, 파일 변수도 다운스트림 파이프라인으로 전달됩니다. 다운스트림 파이프라인은 파일 내용이 아닌 파일 경로로 변수 참조를 확장합니다.

이 호환성 변경은 다운스트림 파이프라인에서 파일 변수 확장에 의존하는 사용자 워크플로를 중단시킬 수 있습니다.

Geo: 디자인 및 프로젝트에 대한 레거시 복제 세부 정보 라우트 지원 중단#

  • GitLab 16.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

레거시 데이터 유형을 Geo 셀프 서비스 프레임워크로 마이그레이션하는 일환으로 다음 복제 세부 정보 라우트가 지원 중단됩니다:

  • 디자인 /admin/geo/replication/designs/admin/geo/sites//replication/design_management_repositories로 대체
  • 프로젝트 /admin/geo/replication/projects/admin/geo/sites//replication/projects로 대체

GitLab 16.4부터 17.0까지 레거시 라우트에 대한 조회는 자동으로 새 라우트로 리디렉션됩니다. 17.0에서 리디렉션을 제거합니다. 레거시 라우트를 사용할 수 있는 북마크나 스크립트를 업데이트하세요.

GitLab Helm 차트 값 gitlab.kas.privateApi.tls.*가 지원 중단됨#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

KAS와 Helm 차트 컴포넌트 간의 TLS 통신을 용이하게 하기 위해 global.kas.tls.* Helm 값을 도입했습니다. 이전 값인 gitlab.kas.privateApi.tls.enabledgitlab.kas.privateApi.tls.secretName은 지원 중단되었으며 GitLab 17.0에서 제거될 예정입니다.

새 값이 KAS에 대해 TLS를 활성화하는 간소화된 포괄적인 방법을 제공하므로 gitlab.kas.privateApi.tls.* 대신 global.kas.tls.*를 사용해야 합니다. 자세한 내용은 다음을 참조하세요:

GitLab Runner 출처 메타데이터 SLSA v0.2 성명서#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

러너는 출처 메타데이터를 생성하며 현재 기본적으로 SLSA v0.2를 준수하는 성명서를 생성합니다. SLSA v1.0이 출시되었고 GitLab에서 지원되므로 v0.2 성명서는 지원 중단되었으며 GitLab 17.0에서 제거가 계획되었습니다. SLSA v1.0 성명서는 GitLab 17.0에서 새 기본 성명서 형식이 될 계획입니다.

지원되지 않는 방법을 통한 GraphQL API 액세스#

  • GitLab 17.0에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0부터 GraphQL에 대한 액세스를 이미 문서화된 지원되는 토큰 유형을 통해서만 제한합니다.

이미 문서화되고 지원되는 토큰 유형을 사용하는 고객의 경우 호환성 변경이 없습니다.

GraphQL networkPolicies 리소스 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

networkPolicies GraphQL 리소스는 지원 중단되었으며 GitLab 17.0에서 제거됩니다. GitLab 15.0 이후로 이 필드는 데이터를 반환하지 않았습니다.

노트의 GraphQL 필드 confidentialinternal로 변경#

  • GitLab 15.5에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Noteconfidential 필드는 지원 중단되고 internal로 이름이 변경됩니다.

GraphQL 필드 registrySizeEstimated가 지원 중단됨#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

명확성을 위해 GraphQL 필드 registrySizeEstimated는 대응 항목과 일치하도록 containerRegistrySizeIsEstimated로 이름이 변경되었습니다. registrySizeEstimated는 GitLab 16.2에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 대신 GitLab 16.2에서 도입된 containerRegistrySizeIsEstimated를 사용하세요.

GraphQL 필드 totalWeight가 지원 중단됨#

  • GitLab 16.3에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL을 사용하여 이슈 보드의 이슈 총 가중치를 쿼리할 수 있습니다. 그러나 totalWeight 필드는 최대 크기인 2147483647로 제한됩니다. 따라서 totalWeight는 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

대신 GitLab 16.2에서 도입된 totalIssueWeight를 사용하세요.

GraphQL 유형 RunnerMembershipFilterCiRunnerMembershipFilter로 이름 변경#

  • GitLab 16.0에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL 유형 RunnerMembershipFilterCiRunnerMembershipFilter로 이름이 변경되었습니다. GitLab 17.0에서 RunnerMembershipFilter 유형에 대한 별칭이 제거됩니다.

GraphQL: SharedRunnersSetting 열거형의 DISABLED_WITH_OVERRIDE 값이 지원 중단됨#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0에서 SharedRunnersSetting GraphQL 열거형 유형의 DISABLED_WITH_OVERRIDE 값이 제거됩니다. 대신 DISABLED_AND_OVERRIDABLE을 사용하세요.

GraphQL: canDestroycanDelete에 대한 지원 중단#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

패키지 레지스트리 사용자 인터페이스는 GitLab GraphQL API에 의존합니다. 모든 사람이 쉽게 기여할 수 있도록 프론트엔드가 모든 GitLab 제품 영역에서 일관되게 코딩되는 것이 중요합니다. 그러나 GitLab 16.6 이전에는 패키지 레지스트리 UI가 제품의 다른 영역과 다르게 권한을 처리했습니다.

16.6에서 패키지 레지스트리를 GitLab의 나머지 부분과 일치시키기 위해 Types::PermissionTypes::Package 유형 아래에 새 UserPermissions 필드를 추가했습니다. 이 새 필드는 Package, PackageBase, PackageDetailsType 유형 아래의 canDestroy 필드를 대체합니다. 또한 ContainerRepository, ContainerRepositoryDetails, ContainerRepositoryTagcanDelete 필드를 대체합니다. GitLab 17.0에서 canDestroycanDelete 필드가 제거됩니다.

이는 17.0에서 완료될 호환성 변경입니다.

HashiCorp Vault 연동이 기본적으로 CI_JOB_JWT CI/CD 작업 토큰을 더 이상 사용하지 않음#

  • GitLab 15.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

JWT 및 OIDC를 사용하여 CI 워크플로의 보안을 개선하는 노력의 일환으로 네이티브 HashiCorp 연동도 GitLab 16.0에서 업데이트되고 있습니다. Vault에서 시크릿을 검색하기 위해 secrets:vault 키워드를 사용하는 모든 프로젝트는 ID 토큰을 사용하도록 구성해야 합니다. ID 토큰은 15.7에서 도입되었습니다.

이 변경에 대비하려면 새 id_tokens 키워드를 사용하고 aud 클레임을 구성하세요. 바인드된 대상이 https://로 시작하는지 확인하세요.

GitLab 15.9부터 15.11에서는 JSON Web Token (JWT) 액세스 제한 활성화 설정을 활성화할 수 있습니다. 이 설정은 이전 토큰이 모든 작업에 노출되지 않도록 방지하고 secrets:vault 키워드에 대한 ID 토큰 인증을 활성화합니다.

GitLab 16.0 이상에서:

  • 이 설정이 제거됩니다.
  • id_tokens 키워드를 사용하는 CI/CD 작업은 secrets:vault와 함께 ID 토큰을 사용할 수 있으며, CI_JOB_JWT* 토큰을 사용할 수 없습니다.
  • id_tokens 키워드를 사용하지 않는 작업은 GitLab 17.0까지 CI_JOB_JWT* 토큰을 계속 사용할 수 있습니다.

Auto DevOps 빌드에서 Heroku 이미지 업그레이드#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0에서 auto-build-image 프로젝트가 heroku/builder:20 이미지에서 heroku/builder:22로 업그레이드됩니다.

새 이미지의 동작을 테스트하려면 CI/CD 변수 AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDERheroku/builder:22로 설정하세요.

GitLab 17.0 이후에도 heroku/builder:20을 계속 사용하려면 AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDERheroku/builder:20으로 설정하세요.

내부 컨테이너 레지스트리 API 태그 삭제 엔드포인트#

  • GitLab 16.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OCI Distribution Spec으로 나중에 대체된 Docker Registry HTTP API V2 Spec은 태그 삭제 작업을 포함하지 않았으며, 같은 목적을 달성하기 위해 안전하지 않고 느린 방법(태그가 아닌 매니페스트 삭제 포함)을 사용해야 했습니다.

태그 삭제는 중요한 기능이므로 Docker 및 OCI 배포 스펙의 범위를 넘어 V2 API를 확장하여 GitLab 컨테이너 레지스트리에 태그 삭제 작업을 추가했습니다.

그 이후로 OCI Distribution Spec이 일부 업데이트되었으며 이제 DELETE /v2/<name>/manifests/<tag> 엔드포인트를 사용하는 태그 삭제 작업이 있습니다.

이로 인해 컨테이너 레지스트리에는 완전히 동일한 기능을 제공하는 두 개의 엔드포인트가 남게 됩니다. DELETE /v2/<name>/tags/reference/<tag>는 커스텀 GitLab 태그 삭제 엔드포인트이고 DELETE /v2/<name>/manifests/<tag>는 GitLab 16.4에서 도입된 OCI 호환 태그 삭제 엔드포인트입니다.

커스텀 GitLab 태그 삭제 엔드포인트에 대한 지원은 GitLab 16.4에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

이 엔드포인트는 공개 GitLab 컨테이너 레지스트리 API가 아닌 내부 컨테이너 레지스트리 애플리케이션 API에서 사용됩니다. 대부분의 컨테이너 레지스트리 사용자는 조치가 필요하지 않습니다. 태그 삭제와 관련된 모든 GitLab UI 및 API 기능은 새 OCI 호환 엔드포인트로 전환하는 동안 그대로 유지됩니다.

내부 컨테이너 레지스트리 API에 액세스하고 원래 태그 삭제 엔드포인트를 사용하는 경우 새 엔드포인트로 업데이트해야 합니다.

JWT /-/jwks 인스턴스 엔드포인트가 지원 중단됨#

  • GitLab 16.7에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0에서 이전 JSON 웹 토큰 버전의 지원 중단으로 인해 /oauth/discovery/keys의 별칭인 관련 /-/jwks 엔드포인트가 더 이상 필요하지 않으며 제거됩니다. auth 구성에서 jwks_url을 지정하고 있다면 구성을 oauth/discovery/keys로 업데이트하고 엔드포인트에서 /-/jwks의 모든 사용을 제거하세요. auth 구성에서 이미 oauth_discovery_keys를 사용하고 엔드포인트에서 /-/jwks 별칭을 사용하는 경우 엔드포인트에서 /-/jwks를 제거하세요. 예를 들어 https://gitlab.example.com/-/jwkshttps://gitlab.example.com으로 변경하세요.

레거시 Geo Prometheus 메트릭#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

프로젝트를 Geo 셀프 서비스 프레임워크로 마이그레이션한 후 여러 Prometheus 메트릭을 지원 중단했습니다. 다음 Geo 관련 Prometheus 메트릭은 지원 중단되었으며 17.0에서 제거됩니다. 아래 표는 지원 중단된 메트릭과 각 대체 메트릭을 나열합니다. 대체 메트릭은 GitLab 16.3.0 이상에서 사용할 수 있습니다.

지원 중단된 메트릭 대체 메트릭
geo_repositories_synced geo_project_repositories_synced
geo_repositories_failed geo_project_repositories_failed
geo_repositories_checksummed geo_project_repositories_checksummed
geo_repositories_checksum_failed geo_project_repositories_checksum_failed
geo_repositories_verified geo_project_repositories_verified
geo_repositories_verification_failed geo_project_repositories_verification_failed
geo_repositories_checksum_mismatch 사용 가능한 대체 없음
geo_repositories_retrying_verification 사용 가능한 대체 없음

License 목록이 지원 중단됨#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

오늘날 GitLab에서는 라이선스 목록에서 프로젝트의 모든 라이선스와 해당 라이선스를 사용하는 컴포넌트 목록을 볼 수 있습니다. 16.8부터 라이선스 목록이 지원 중단되었으며 호환성 변경으로 17.0에서 제거될 예정입니다. 이제 라이선스별로 필터링하는 기능을 포함하여 의존성 목록에서 프로젝트 또는 그룹이 사용하는 모든 라이선스에 액세스할 수 있습니다.

sbt 1.0.X에 대한 라이선스 스캐닝 지원#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0은 sbt 1.0.x에 대한 라이선스 스캐닝 지원을 제거합니다.

sbt 1.0.x에서 업그레이드하는 것이 좋습니다.

Ubuntu 18.04용 Linux 패키지#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Ubuntu 18.04에 대한 표준 지원이 2023년 6월에 종료되었습니다.

GitLab 17.0부터 Ubuntu 18.04에 대한 Linux 패키지를 제공하지 않습니다.

GitLab 17.0 이상에 대비하려면:

  1. GitLab 인스턴스를 실행하는 서버를 Ubuntu 18.04에서 Ubuntu 20.04 또는 Ubuntu 22.04로 이동하세요.
  2. 현재 사용 중인 Ubuntu 버전에 대한 Linux 패키지를 사용하여 GitLab 인스턴스를 업그레이드하세요.

리포지터리 디렉터리 나열 Rake 작업#

  • GitLab 16.7에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

gitlab-rake gitlab:list_repos Rake 작업은 작동하지 않으며 GitLab 17.0에서 제거됩니다. GitLab을 마이그레이션하는 경우 대신 백업 및 복원을 사용하세요.

Maintainer 역할이 GraphQL API를 사용하여 패키지 설정을 변경하는 기능 제공#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Maintainer 역할을 가진 사용자가 GraphQL API를 사용하여 그룹의 패키지 및 레지스트리 설정을 변경하는 기능은 GitLab 15.8에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 이러한 설정에는 다음이 포함됩니다:

GitLab 17.0 이상에서는 GitLab UI 또는 GraphQL API를 사용하여 그룹의 패키지 및 레지스트리 설정을 변경하려면 그룹에 대한 Owner 역할이 있어야 합니다.

의존성 스캐닝 및 라이선스 스캐닝에서 Maven 3.8.8 미만 버전 지원#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0은 3.8.8 미만의 Maven 버전에 대한 의존성 스캐닝 및 라이선스 스캐닝 지원을 중단합니다.

3.8.8 이상으로 업그레이드하는 것이 좋습니다.

Sidekiq 옵션의 최소 동시성 및 최대 동시성#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지(Omnibus) 설치의 경우 sidekiq['min_concurrency']sidekiq['max_concurrency'] 설정은 GitLab 16.9에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

GitLab 16.9 이상에서 sidekiq['concurrency']를 사용하여 각 프로세스의 스레드 수를 명시적으로 설정할 수 있습니다.

위의 변경 사항은 Linux 패키지(Omnibus) 설치에만 적용됩니다.

GitLab Helm 차트 설치의 경우 SIDEKIQ_CONCURRENCY_MIN 및/또는 SIDEKIQ_CONCURRENCY_MAXsidekiq 서브 차트의 extraEnv로 전달하는 것은 GitLab 16.10에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

concurrency 옵션을 사용하여 각 프로세스의 스레드 수를 명시적으로 설정할 수 있습니다.

/users REST API 엔드포인트의 오프셋 페이지네이션이 지원 중단됨#

  • GitLab 16.5에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

/users REST API의 오프셋 페이지네이션은 GitLab 16.5에서 지원 중단되었으며 GitLab 17.0에서 제거됩니다. 대신 키셋 페이지네이션을 사용하세요.

JSON 웹 토큰의 이전 버전이 지원 중단됨#

  • GitLab 15.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OIDC 지원이 있는 ID 토큰은 GitLab 15.7에서 도입되었습니다. 이러한 토큰은 이전 JSON 웹 토큰(JWT)보다 더 구성 가능하고 OIDC를 준수하며 ID 토큰이 명시적으로 구성된 CI/CD 작업에서만 사용할 수 있습니다. ID 토큰은 모든 작업에 노출되는 이전 CI_JOB_JWT* JSON 웹 토큰보다 더 안전하므로 이러한 이전 JSON 웹 토큰은 지원 중단됩니다:

  • CI_JOB_JWT
  • CI_JOB_JWT_V1
  • CI_JOB_JWT_V2

이 변경에 대비하려면 지원 중단된 토큰 대신 ID 토큰을 사용하도록 파이프라인을 구성하세요. OIDC 준수를 위해 iss 클레임은 이제 CI_JOB_JWT_V2 토큰과 함께 이전에 도입된 완전한 도메인 이름(예: https://example.com)을 사용합니다.

GitLab 15.9부터 15.11에서는 JSON Web Token (JWT) 액세스 제한 활성화 설정을 활성화할 수 있습니다. 이 설정은 이전 토큰이 모든 작업에 노출되지 않도록 방지하고 secrets:vault 키워드에 대한 ID 토큰 인증을 활성화합니다.

GitLab 16.0 이상에서:

  • 이 설정이 제거됩니다.
  • id_tokens 키워드를 사용하는 CI/CD 작업은 secrets:vault와 함께 ID 토큰을 사용할 수 있으며, CI_JOB_JWT* 토큰을 사용할 수 없습니다.
  • id_tokens 키워드를 사용하지 않는 작업은 GitLab 17.0까지 CI_JOB_JWT* 토큰을 계속 사용할 수 있습니다.

GitLab 17.0에서 지원 중단된 토큰은 완전히 제거되며 CI/CD 작업에서 더 이상 사용할 수 없습니다.

OmniAuth Facebook이 지원 중단됨#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OmniAuth Facebook 지원은 GitLab 17.0에서 제거됩니다. 마지막 gem 릴리스는 2021년이었으며 현재 유지보수가 중단되었습니다. 현재 사용량은 0.1% 미만입니다. OmniAuth Facebook을 사용하는 경우 지원 제거 전에 지원되는 제공자로 전환하세요.

API 페이로드의 패키지 파이프라인이 페이지네이션됨#

  • GitLab 14.5에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

/api/v4/projects/:id/packages에 대한 API 요청은 패키지의 페이지네이션된 결과를 반환합니다. 각 패키지는 이 응답에서 모든 파이프라인을 나열합니다. 패키지에 수백 또는 수천 개의 관련 파이프라인이 있을 수 있으므로 성능 문제가 있습니다.

마일스톤 17.0에서 API 응답에서 pipelines 속성을 제거합니다.

PostgreSQL 13이 더 이상 지원되지 않음#

  • GitLab 16.0에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 PostgreSQL에 대한 연간 업그레이드 주기를 따릅니다.

PostgreSQL 13에 대한 지원은 GitLab 17.0에서 제거될 예정입니다. GitLab 17.0에서 PostgreSQL 14가 최소 필요 PostgreSQL 버전이 됩니다.

PostgreSQL 13은 전체 GitLab 16 릴리스 주기 동안 지원됩니다. PostgreSQL 14는 GitLab 17.0 이전에 업그레이드하려는 인스턴스도 지원됩니다. Omnibus Linux 패키지를 사용하여 설치한 단일 PostgreSQL 인스턴스를 실행하는 경우 16.11로 자동 업그레이드가 시도될 수 있습니다. 업그레이드를 수용할 충분한 디스크 공간이 있는지 확인하세요. 자세한 내용은 Omnibus 데이터베이스 문서를 참조하세요.

프록시 기반 DAST 지원 중단#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 17.0부터 프록시 기반 DAST는 지원되지 않습니다. 동적 분석을 통해 프로젝트의 보안 취약점을 계속 분석하려면 브라우저 기반 DAST로 마이그레이션하세요. 프록시 기반 DAST를 기반으로 구축된 인큐베이팅 기능인 Breach and Attack Simulation도 이 지원 중단에 포함되어 17.0 이후에는 지원되지 않습니다.

Sidekiq 실행을 위한 큐 선택기가 지원 중단됨#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 지원 종료
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

큐 선택기(큐 세트를 수신하는 여러 프로세스 포함)와 부정 설정으로 Sidekiq를 실행하는 것은 지원 중단되었으며 17.0에서 완전히 제거됩니다.

큐 선택기에서 모든 프로세스의 모든 큐 수신으로 마이그레이션할 수 있습니다. 예를 들어 Sidekiq가 현재 큐 선택기(sidekiq['queue_selector'] = true)와 함께 4개의 프로세스(/ etc/gitlab/gitlab.rb의 sidekiq['queue_groups']에 4개의 요소로 표시)로 실행 중인 경우 4개의 모든 프로세스에서 모든 큐를 수신하도록 Sidekiq를 변경할 수 있습니다(예: sidekiq['queue_groups'] = ['*'] * 4). 이 접근 방식은 참조 아키텍처에서도 권장됩니다. Sidekiq는 머신의 CPU 수만큼 프로세스를 효과적으로 실행할 수 있습니다.

위의 접근 방식이 대부분의 인스턴스에 권장되지만 GitLab.com에서도 사용되는 라우팅 규칙을 사용하여 Sidekiq를 실행할 수도 있습니다. 큐 선택기에서 라우팅 규칙으로의 마이그레이션 가이드를 따를 수 있습니다. 작업을 완전히 잃지 않도록 마이그레이션에 주의해야 합니다.

Linux에서 소형 GitLab.com 러너의 태그 제거#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

역사적인 이유로 소형 Linux GitLab.com 러너에는 레이블로 사용되어 많은 태그가 첨부되어 있었습니다. saas-linux-small-amd64만 사용하고 모든 GitLab.com 러너에서 일관성을 유지하도록 태그를 간소화하려 합니다.

다음 태그를 지원 중단합니다: docker, east-c, gce, git-annex, linux, mongo, mysql, postgres, ruby, shared.

자세한 내용은 Linux에서 소형 SaaS 러너의 태그 제거를 참조하세요.

필수 파이프라인 구성이 지원 중단됨#

  • GitLab 15.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

필수 파이프라인 구성은 GitLab 17.0에서 제거됩니다. 이는 Ultimate 티어의 GitLab Self-Managed 사용자에게 영향을 줍니다.

필수 파이프라인 구성을 다음 중 하나로 대체해야 합니다:

이러한 대안을 권장하는 이유는 필수 파이프라인을 특정 컴플라이언스 프레임워크 레이블에 할당할 수 있도록 더 큰 유연성을 제공하기 때문입니다.

컴플라이언스 파이프라인은 향후 지원 중단되어 보안 정책으로 마이그레이션됩니다. 자세한 내용은 마이그레이션 및 지원 중단 에픽을 참조하세요.

GitLab 17.0에서 SAST 분석기 커버리지 변경#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST에서 기본적으로 사용되는 지원 분석기 수를 줄이고 있습니다. 이는 다양한 프로그래밍 언어에서 더 빠르고 일관된 사용자 경험을 제공하기 위한 장기 전략의 일부입니다.

GitLab 17.0에서는:

  1. SAST CI/CD 템플릿에서 일련의 언어별 분석기를 제거하고 Semgrep 기반 분석기GitLab 지원 감지 규칙으로 커버리지를 대체합니다. 다음 분석기는 이제 지원 중단되었으며 GitLab 17.0에서 지원 종료에 도달합니다:
    1. Brakeman (Ruby, Ruby on Rails)
    2. Flawfinder (C, C++)
    3. MobSF (Android, iOS)
    4. NodeJS Scan (Node.js)
    5. PHPCS Security Audit (PHP)
  2. Kotlin 및 Scala 코드에 대해 SpotBugs 기반 분석기 실행을 중단하도록 SAST CI/CD 템플릿을 변경합니다. 이러한 언어는 대신 Semgrep 기반 분석기GitLab 지원 감지 규칙을 사용하여 스캔됩니다.

즉시 적용되어 지원 중단된 분석기는 보안 업데이트만 받습니다. 다른 일상적인 개선이나 업데이트는 보장되지 않습니다. GitLab 17.0에서 분석기가 지원 종료에 도달한 후에는 더 이상 업데이트가 제공되지 않습니다. 그러나 이러한 분석기에 대해 이전에 게시된 컨테이너 이미지를 삭제하거나 커스텀 CI/CD 파이프라인 작업 정의를 사용하여 실행하는 기능을 제거하지는 않습니다.

취약점 관리 시스템은 대부분의 기존 발견 사항이 새 감지 규칙과 일치하도록 업데이트합니다. 새 분석기로 마이그레이션되지 않은 발견 사항은 자동으로 해결됩니다. 자세한 내용은 취약점 번역 문서를 참조하세요.

제거된 분석기에 커스터마이징을 적용했거나 파이프라인에서 Semgrep 기반 분석기를 현재 비활성화하고 있다면 이 변경 사항에 대한 지원 중단 이슈에 자세히 설명된 대로 조치를 취해야 합니다.

_EXCLUDED_ANALYZERS 변수를 사용하는 스캔 실행 정책이 프로젝트 변수를 재정의#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

최고 우선순위로 SEP 변수 적용을 제공하고 검증한 후 의도하지 않은 동작을 발견했습니다. 사용자가 파이프라인 구성에서 _EXCLUDED_PATHS를 설정하도록 허용하고 정책 및 파이프라인 구성 모두에서 _EXCLUDED_ANALYZERS를 설정하지 못하도록 합니다.

스캔 실행 변수의 올바른 적용을 보장하기 위해 GitLab 스캔 작업을 사용하는 스캔 실행 정책에 _EXCLUDED_ANALYZERS 또는 _EXCLUDED_PATHS 변수가 지정된 경우 이제 변수가 제외된 분석기에 대해 정의된 프로젝트 변수를 재정의합니다.

사용자는 17.0 이전에 이 동작을 적용하기 위해 피처 플래그를 활성화할 수 있습니다. 17.0에서는 변수가 정의된 스캔 실행 정책이 있는 _EXCLUDED_ANALYZERS/_EXCLUDED_PATHS 변수를 활용하는 프로젝트가 기본적으로 재정의됩니다.

Secure 분석기 메이저 버전 업데이트#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Secure 단계는 GitLab 17.0 릴리스와 함께 분석기의 메이저 버전을 올릴 예정입니다.

기본 포함 템플릿을 사용하지 않거나 분석기 버전을 고정한 경우 고정된 버전을 제거하거나 최신 메이저 버전으로 업데이트하도록 CI/CD 작업 정의를 업데이트해야 합니다.

GitLab 16.0-16.11 사용자는 GitLab 17.0이 출시될 때까지 정상적으로 분석기 업데이트를 경험하며, 이후 새로 수정된 버그와 출시된 기능은 분석기의 새 메이저 버전에서만 출시됩니다.

유지보수 정책에 따라 지원 중단된 버전에 버그와 기능을 백포트하지 않습니다. 필요한 경우 보안 패치가 최신 3개 마이너 릴리스 내에서 백포트됩니다.

구체적으로 다음 분석기가 지원 중단되었으며 GitLab 17.0 릴리스 이후에는 더 이상 업데이트되지 않습니다:

  • 컨테이너 스캐닝: 버전 6
  • 의존성 스캐닝: 버전 4
  • DAST: 버전 4
  • DAST API: 버전 3
  • Fuzz API: 버전 3
  • IaC 스캐닝: 버전 4
  • 시크릿 감지: 버전 5
  • 정적 애플리케이션 보안 테스팅(SAST): 모든 분석기의 버전 4
    • brakeman
    • flawfinder
    • kubesec
    • mobsf
    • nodejs-scan
    • phpcs-security-audit
    • pmd-apex
    • semgrep
    • sobelow
    • spotbugs

보안 정책 필드 match_on_inclusion이 지원 중단됨#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

스캔 결과 정책에 대한 추가 필터 지원에서 newly_detected 필드를 두 가지 옵션(new_needs_triagenew_dismissed)으로 분리했습니다. 보안 정책 YAML에 두 옵션을 모두 포함하면 원래 newly_detected 필드와 동일한 결과를 얻을 수 있습니다. 그러나 이제 new_needs_triage만 사용하여 해제된 발견 사항을 무시하도록 필터를 좁힐 수 있습니다. 에픽 10203의 논의를 바탕으로 YAML 정의에서 더 명확성을 위해 match_on_inclusion 필드 이름을 match_on_inclusion_license로 변경했습니다.

보안 정책 필드 newly_detected가 지원 중단됨#

  • GitLab 16.5에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

스캔 결과 정책에 대한 추가 필터 지원에서 newly_detected 필드를 두 가지 옵션(new_needs_triagenew_dismissed)으로 분리했습니다. 보안 정책 YAML에 두 옵션을 모두 포함하면 원래 newly_detected 필드와 동일한 결과를 얻을 수 있습니다. 그러나 이제 new_needs_triage만 사용하여 해제된 발견 사항을 무시하도록 필터를 좁힐 수 있습니다.

셀프 호스팅 Sentry 버전 21.4.1 이하 지원#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

셀프 호스팅 Sentry 버전 21.4.1 이하에 대한 지원은 지원 중단되었으며 GitLab 17.0에서 제거됩니다.

셀프 호스팅 Sentry 버전이 21.4.1 이하인 경우 GitLab 17.0 이상으로 업그레이드한 후 GitLab 인스턴스에서 오류를 수집하지 못할 수 있습니다. GitLab 인스턴스에서 Sentry 인스턴스로 오류를 계속 보내려면 Sentry를 버전 21.5.0 이상으로 업그레이드하세요. 자세한 내용은 Sentry 문서를 참조하세요.

Note

지원 중단된 지원은 관리자를 위한 GitLab 인스턴스 오류 추적 기능에 관한 것입니다. 지원 중단된 지원은 개발자의 자체 배포 애플리케이션을 위한 GitLab 오류 추적과 관련이 없습니다.

백업에 대한 커스텀 스키마 설정 지원이 지원 중단됨#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지 설치의 경우 /etc/gitlab/gitlab.rb에서 gitlab_rails['backup_pg_schema'] = '<schema_name>'을 설정하거나, 셀프 컴파일 설치의 경우 config/gitlab.yml을 편집하여 백업에 커스텀 스키마를 사용하도록 GitLab을 구성할 수 있었습니다.

구성 설정은 사용 가능했지만 효과가 없었으며 의도한 목적을 제공하지 않았습니다. 이 구성 설정은 GitLab 17.0에서 제거됩니다.

GitHub 가져오기 Rake 작업#

  • GitLab 16.6에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.6에서 GitHub 가져오기 Rake 작업이 지원 중단되었습니다. Rake 작업에는 API에서 지원하는 여러 기능이 없으며 적극적으로 유지보수되지 않습니다.

GitLab 17.0에서 Rake 작업이 제거됩니다.

대신 GitHub 리포지터리는 API 또는 UI를 사용하여 가져올 수 있습니다.

Visual Reviews 도구가 지원 중단됨#

  • GitLab 15.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

제한된 고객 사용량과 기능으로 인해 Review Apps의 Visual Reviews 기능은 지원 중단되어 제거됩니다. 계획된 대체 기능이 없으며 사용자는 GitLab 17.0 이전에 Visual Reviews 사용을 중단해야 합니다.

gitlab-runner exec 명령이 지원 중단됨#

  • GitLab 15.7에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

gitlab-runner exec 명령은 지원 중단되었으며 16.0의 GitLab Runner에서 완전히 제거됩니다. gitlab-runner exec 기능은 처음에 GitLab 인스턴스에 업데이트를 커밋하지 않고도 로컬 시스템에서 GitLab CI 파이프라인을 검증하는 기능을 제공하기 위해 개발되었습니다. 그러나 GitLab CI의 지속적인 발전으로 인해 모든 GitLab CI 기능을 gitlab-runner exec에 복제하는 것이 더 이상 실행 가능하지 않았습니다. 파이프라인 구문 및 검증 시뮬레이션은 GitLab 파이프라인 편집기에서 사용할 수 있습니다.

Kubernetes용 GitLab 에이전트의 풀 기반 배포 기능이 지원 중단됨#

  • GitLab 16.2에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Flux 및 관련 연동을 위해 Kubernetes용 GitLab 에이전트의 내장 풀 기반 배포 기능을 지원 중단합니다.

Kubernetes용 GitLab 에이전트는 지원 중단되지 않습니다. 이 변경 사항은 에이전트의 풀 기반 기능에만 영향을 줍니다. 다른 모든 기능은 그대로 유지되며 GitLab은 Kubernetes용 에이전트를 계속 지원합니다.

풀 기반 배포에 에이전트를 사용하는 경우 Flux로 마이그레이션해야 합니다. Flux는 GitOps를 위한 성숙한 CNCF 프로젝트이므로 2023년 2월에 Flux를 GitLab과 통합하기로 결정했습니다.

Twitter OmniAuth 로그인 옵션이 GitLab Self-Managed에서 지원 중단됨#

  • GitLab 16.3에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Twitter OAuth 1.0a OmniAuth는 낮은 사용량과 gem 지원 부재로 인해 GitLab 17.0에서 GitLab Self-Managed에 대해 지원 중단되고 제거됩니다. 대신 다른 지원되는 OmniAuth 제공자를 사용하세요.

통합 승인 규칙이 지원 중단됨#

  • GitLab 16.1에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

통합 승인 규칙은 더 많은 유연성을 제공하는 여러 승인 규칙을 위해 지원 중단됩니다. 호환성 변경 없이 통합 승인 규칙을 여러 승인 규칙으로 마이그레이션하지 못할 수 있습니다. 수동 마이그레이션을 도와드리기 위해 마이그레이션 문서를 도입했습니다.

통합 승인 규칙이 제거되기 전에 수동으로 마이그레이션하지 않으면 GitLab이 자동으로 설정을 마이그레이션합니다. 여러 승인 규칙은 승인 규칙에 대한 더 세밀한 설정을 허용하므로 마이그레이션을 GitLab에 맡기면 자동 마이그레이션이 선호하는 것보다 더 제한적인 규칙으로 끝날 수 있습니다. 예상보다 더 많은 승인이 필요한 문제가 있는 경우 마이그레이션 규칙을 확인하세요.

GitLab 15.11에서 통합 승인 규칙에 대한 UI 지원이 제거되었습니다. API를 통해 여전히 통합 승인 규칙에 액세스할 수 있습니다.

Linux에서 GitLab.com 러너의 운영 체제 버전 업그레이드#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 Linux의 GitLab.com 러너에 대한 작업을 실행하는 데 사용되는 임시 VM의 컨테이너 최적화 운영 체제(COS)를 업그레이드하고 있습니다. 해당 COS 업그레이드에는 알려진 호환성 문제를 도입하는 Docker Engine 버전 19.03.15에서 버전 23.0.5로의 업그레이드가 포함됩니다.

버전 20.10 이전의 Docker-in-Docker 또는 v1.9.0보다 오래된 Kaniko 이미지는 컨테이너 런타임을 감지하지 못하고 실패합니다.

자세한 내용은 Linux에서 SaaS 러너의 운영 체제 버전 업그레이드를 참조하세요.

취약점 신뢰도 필드#

  • GitLab 15.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.3에서 버전 15 미만의 보안 보고서 스키마가 지원 중단되었습니다. 취약점 발견의 confidence 속성은 15-0-0 이전 스키마 버전에만 존재하므로 GitLab 15.4가 스키마 버전 15-0-0을 지원하기 때문에 사실상 지원 중단되었습니다. 보고서와 공개 API 간의 일관성을 유지하기 위해 GraphQL API의 취약점 관련 컴포넌트에 대한 confidence 속성은 이제 지원 중단되었으며 17.0에서 제거됩니다.

after_script 키워드가 취소된 작업에 대해 실행됨#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

after_script CI/CD 키워드는 작업의 메인 script 섹션 이후에 추가 명령을 실행하는 데 사용됩니다. 이는 종종 작업에서 사용된 환경이나 다른 리소스를 정리하는 데 사용됩니다. 많은 사용자에게 작업이 취소된 경우 after_script 명령이 실행되지 않는다는 사실은 예상치 못하고 원치 않는 것이었습니다. 17.0에서 키워드는 작업 취소 후에도 명령을 실행하도록 업데이트됩니다. after_script 키워드를 사용하는 CI/CD 구성이 취소된 작업에도 실행되는 것을 처리할 수 있는지 확인하세요.

dependency_files가 지원 중단됨#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

오늘날 GitLab에서 프로젝트의 의존성 목록은 의존성 스캐닝 보고서의 dependency_files 내용을 사용하여 생성됩니다. 그러나 그룹 의존성 목록과의 일관성을 유지하기 위해 GitLab 17.0부터 프로젝트의 의존성 목록은 PostgreSQL 데이터베이스에 저장된 CycloneDX SBOM 보고서 아티팩트를 사용합니다. 따라서 의존성 스캐닝 보고서 스키마의 dependency_files 속성은 지원 중단되었으며 17.0에서 제거됩니다.

이 지원 중단의 일환으로 dependency_path도 17.0에서 지원 중단되고 제거됩니다. GitLab은 유사한 정보를 제공하기 위해 CycloneDX 사양을 사용한 의존성 그래프 구현을 진행할 것입니다.

또한 컨테이너 스캐닝 CI 작업은 CycloneDX SBOM 보고서로 대체되므로 더 이상 운영 체제 컴포넌트 목록을 제공하는 의존성 스캐닝 보고서를 생성하지 않습니다. 컨테이너 스캐닝을 위한 CS_DISABLE_DEPENDENCY_LIST 환경 변수는 더 이상 사용되지 않으며 17.0에서도 제거됩니다.

DORA API의 metric 필터 및 value 필드#

  • GitLab 16.8에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이제 새 metrics 필드를 사용하여 여러 DORA 메트릭을 동시에 쿼리할 수 있습니다. GraphQL DORA API의 metric 필터 및 value 필드는 GitLab 17.0에서 제거됩니다.

omniauth-azure-oauth2 gem이 지원 중단됨#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 사용자는 omniauth-azure-oauth2 gem을 사용하여 GitLab으로 인증할 수 있습니다. 17.0에서 이 gem은 omniauth_openid_connect gem으로 교체됩니다. 새 gem은 이전 gem과 동일한 모든 기능을 포함하지만 업스트림 유지보수가 있으며 보안 및 중앙화된 유지보수에 더 좋습니다.

이 변경 사항은 마이그레이션 시 사용자가 OAuth 2.0 제공자에 다시 연결해야 합니다. 중단을 피하려면 17.0 전에 언제든지 omniauth_openid_connect를 새 제공자로 추가하세요. 사용자는 새 로그인 버튼을 볼 것이며 자격 증명을 수동으로 다시 연결해야 합니다. 17.0 이전에 omniauth_openid_connect gem을 구현하지 않으면 사용자는 Azure 로그인 버튼을 사용하여 로그인할 수 없게 되며 관리자가 올바른 gem을 구현할 때까지 사용자 이름과 비밀번호를 사용하여 로그인해야 합니다.

omnibus_gitconfig 구성 항목이 지원 중단됨#

  • GitLab 16.10에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

omnibus_gitconfig['system'] 구성 항목이 지원 중단되었습니다. omnibus_gitconfig['system']을 사용하여 Gitaly에 대한 커스텀 Git 구성을 설정하는 경우 GitLab 17.0으로 업그레이드하기 전에 gitaly[:configuration][:git][:config] 아래의 Gitaly 구성을 통해 Git을 직접 구성해야 합니다.

예를 들어:

  gitaly[:configuration][:git][:config] = [
    {
      key: 'fetch.fsckObjects',
      value: 'true',
    },
    # ...
  ]

구성 키의 형식은 CLI 플래그 git -c <configuration>을 통해 git에 전달되는 것과 일치해야 합니다.

기존 키를 예상 형식으로 변환하는 데 어려움이 있는 경우 Gitaly의 Linux 패키지 생성 구성 파일에서 올바른 형식의 기존 키를 참조하세요. 기본적으로 구성 파일은 /var/opt/gitlab/gitaly/config.toml에 있습니다.

Gitaly가 관리하는 다음 구성 옵션은 제거해야 합니다. 이러한 키는 Gitaly로 마이그레이션할 필요가 없습니다:

  • pack.threads=1
  • receive.advertisePushOptions=true
  • receive.fsckObjects=true
  • repack.writeBitmaps=true
  • transfer.hideRefs=^refs/tmp/
  • transfer.hideRefs=^refs/keep-around/
  • transfer.hideRefs=^refs/remotes/
  • core.alternateRefsCommand="exit 0 #"
  • core.fsyncObjectFiles=true
  • fetch.writeCommitGraph=true

postgres_exporter['per_table_stats'] 구성 설정#

  • GitLab 16.4에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지는 번들 PostgreSQL 익스포터에 대한 커스텀 쿼리를 제공하며, 여기에는 postgres_exporter['per_table_stats'] 구성 설정으로 제어되는 per_table_stats 쿼리가 포함되었습니다.

PostgreSQL 익스포터는 이제 동일한 메트릭을 제공하는 stat_user_tables 수집기를 제공합니다. postgres_exporter['per_table_stats']가 활성화되어 있었다면 대신 postgres_exporter['flags']['collector.stat_user_tables']를 활성화하세요.

projectFingerprint GraphQL 필드#

  • GitLab 15.1에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

취약점 발견의 project_fingerprint 속성은 uuid 속성을 위해 지원 중단됩니다. UUIDv5 값을 사용하여 발견을 식별함으로써 관련 엔티티를 발견과 쉽게 연결할 수 있습니다. project_fingerprint 속성은 더 이상 발견을 추적하는 데 사용되지 않으며 GitLab 17.0에서 제거됩니다. 16.1부터 project_fingerprint의 출력은 uuid 필드와 동일한 값을 반환합니다.

공개 프로젝트에 대한 repository_download_operation 감사 이벤트 유형#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

감사 이벤트 유형 repository_download_operation은 현재 공개 프로젝트와 비공개 프로젝트 모두의 모든 프로젝트 다운로드에 대해 데이터베이스에 저장됩니다. 공개 프로젝트의 경우 인증되지 않은 사용자가 이 감사 이벤트를 트리거할 수 있으므로 감사 목적에 가장 유용하지 않습니다.

GitLab 17.0부터 repository_download_operation 감사 이벤트 유형은 비공개 또는 내부 프로젝트에 대해서만 트리거됩니다. 공개 프로젝트 다운로드를 위해 public_repository_download_operation이라는 새 감사 이벤트 유형을 추가합니다. 이 새 감사 이벤트 유형은 스트리밍 전용입니다.

npm 패키지 업로드가 이제 비동기적으로 발생#

  • GitLab 16.9에서 발표
  • GitLab 17.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 패키지 레지스트리는 npm 및 Yarn을 지원합니다. npm 또는 Yarn 패키지를 업로드하면 업로드가 동기적으로 처리됩니다. 그러나 동기 업로드에는 알려진 문제가 있습니다. 예를 들어 GitLab은 overrides와 같은 기능을 지원하지 않습니다.

17.0부터 npm 및 Yarn 패키지는 비동기적으로 업로드됩니다. 패키지가 게시되는 즉시 사용 가능할 것으로 예상하는 파이프라인이 있을 수 있으므로 이는 호환성 변경입니다.

해결 방법으로 패키지 API를 사용하여 패키지를 확인해야 합니다.

GitLab 16.9#

lfs_check 피처 플래그 지원 중단#

  • GitLab 16.6에서 발표
  • GitLab 16.9에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.9에서 lfs_check 피처 플래그를 제거합니다. 이 피처 플래그는 4년 전에 도입되었으며 LFS 무결성 검사가 활성화되어 있는지 여부를 제어합니다. 피처 플래그는 기본적으로 활성화되어 있지만 일부 고객은 LFS 무결성 검사로 인한 성능 문제를 경험하고 이를 명시적으로 비활성화했습니다.

LFS 무결성 검사의 성능을 크게 개선한 후 피처 플래그를 제거할 준비가 되었습니다. 플래그가 제거된 후 현재 비활성화된 환경에서는 기능이 자동으로 켜집니다.

이 피처 플래그가 환경에 비활성화되어 있고 성능 문제가 우려되는 경우 16.9에서 제거되기 전에 활성화하고 성능을 모니터링하세요. 활성화 후 성능 문제가 발생하면 이 피드백 이슈에서 알려주세요.

GitLab 16.8#

openSUSE Leap 15.4 패키지#

  • GitLab 16.5에서 발표
  • GitLab 16.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

openSUSE Leap 15.4에 대한 지원 및 보안 업데이트가 2023년 11월에 종료됩니다.

GitLab 15.4는 openSUSE Leap 15.5용 패키지를 제공했습니다. GitLab 15.8 이상에서는 openSUSE Leap 15.4용 패키지를 제공하지 않습니다.

GitLab 15.8 이상에 대비하려면:

  1. 인스턴스를 openSUSE Leap 15.4에서 openSUSE Leap 15.5로 이동하세요.
  2. openSUSE Leap 15.4 GitLab 제공 패키지에서 openSUSE Leap 15.5 GitLab 제공 패키지로 전환하세요.

GitLab 16.7#

Shimo 연동#

  • GitLab 15.7에서 발표
  • GitLab 16.7에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Shimo Workspace 연동이 지원 중단되었으며 JiHu GitLab 코드베이스로 이동됩니다.

user_email_lookup_limit API 필드#

user_email_lookup_limit API 필드는 GitLab 14.9에서 지원 중단되었으며 GitLab 16.7에서 제거됩니다. 기능이 제거될 때까지 user_email_lookup_limitsearch_rate_limit의 별칭이며 기존 워크플로는 계속 작동합니다.

user_email_lookup_limit에 대한 속도 제한을 변경하는 모든 API 호출은 대신 search_rate_limit를 사용해야 합니다.

GitLab 16.6#

작업 토큰 허용 목록이 공개 및 내부 프로젝트를 포함#

  • GitLab 16.3에서 발표
  • GitLab 16.6에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

16.6부터 이 프로젝트에 대한 액세스 제한이 활성화된 경우 공개 또는 내부 프로젝트는 프로젝트의 허용 목록에 없는 프로젝트의 작업 토큰 요청을 더 이상 승인하지 않습니다.

공개 또는 내부 프로젝트에 이 프로젝트에 대한 액세스 제한 설정이 활성화되어 있는 경우 프로젝트에 작업 토큰 요청을 하는 모든 프로젝트를 프로젝트의 허용 목록에 추가해야 계속 승인됩니다.

GitLab 16.5#

잠긴 LDAP 그룹에 LDAP 동기화되지 않은 멤버 추가가 지원 중단됨#

  • GitLab 16.0에서 발표
  • GitLab 16.5에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

ldap_settings_unlock_groups_by_owners 피처 플래그를 활성화하면 LDAP 동기화되지 않은 사용자가 잠긴 LDAP 그룹에 추가될 수 있었습니다. 이 기능은 항상 기본적으로 비활성화되었으며 피처 플래그 뒤에 있었습니다. SAML 연동과의 연속성을 유지하고 동기화되지 않은 그룹 멤버를 허용하는 것이 디렉터리 서비스 사용의 "단일 진실 소스" 원칙을 무효화하기 때문에 이 기능을 제거합니다. 이 기능이 제거되면 LDAP와 동기화되지 않은 모든 LDAP 그룹 멤버는 해당 그룹에 대한 액세스를 잃게 됩니다.

Geo: Housekeeping Rake 작업#

  • GitLab 16.3에서 발표
  • GitLab 16.5에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Geo 셀프 서비스 프레임워크(SSF)로 복제 및 검증 마이그레이션의 일환으로 프로젝트 리포지터리에 대한 레거시 복제가 제거되었습니다. 결과적으로 레거시 코드에 의존했던 다음 Rake 작업도 제거되었습니다. 이러한 Rake 작업에 의해 호출된 작업은 이제 주기적으로 또는 트리거 이벤트를 기반으로 자동으로 트리거됩니다.

Rake 작업 대체
geo:git:housekeeping:full_repack UI로 이동. SSF에는 해당 Rake 작업이 없습니다.
geo:git:housekeeping:gc 새 리포지터리에 대해 항상 실행되고 필요할 때 실행됩니다. SSF에는 해당 Rake 작업이 없습니다.
geo:git:housekeeping:incremental_repack 필요할 때 실행됩니다. SSF에는 해당 Rake 작업이 없습니다.
geo:run_orphaned_project_registry_cleaner 고아 레지스트리를 제거하는 레지스트리 일관성 워커에 의해 정기적으로 실행됩니다. SSF에는 해당 Rake 작업이 없습니다.
geo:verification:repository:reset UI로 이동. SSF에는 해당 Rake 작업이 없습니다.
geo:verification:wiki:reset UI로 이동. SSF에는 해당 Rake 작업이 없습니다.

GitLab 16.3#

번들 Grafana 지원 중단 및 비활성화#

  • GitLab 16.0에서 발표
  • GitLab 16.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Omnibus GitLab과 함께 번들된 Grafana 버전은 16.0에서 지원 중단 및 비활성화되었으며 16.3에서 제거됩니다. 번들 Grafana를 사용하는 경우 다음 중 하나로 마이그레이션해야 합니다:

현재 제공되는 Grafana 버전은 더 이상 지원되는 버전이 아닙니다.

GitLab 버전 16.0부터 16.2에서는 번들 Grafana를 다시 활성화할 수 있습니다. 그러나 번들 Grafana 활성화는 GitLab 16.3부터 더 이상 작동하지 않습니다.

RSA 키 크기 제한#

  • GitLab 16.3에서 발표
  • GitLab 16.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Go 버전 1.20.7 이상은 RSA 키를 최대 8192비트로 제한하는 maxRSAKeySize 상수를 추가합니다. 결과적으로 8192비트보다 큰 RSA 키는 GitLab에서 더 이상 작동하지 않습니다. 8192비트보다 큰 RSA 키는 더 작은 크기로 재생성해야 합니다.

로그에 tls: server sent certificate containing RSA key larger than 8192 bits와 같은 오류가 포함되어 있어 이 문제를 알아차릴 수 있습니다. 키의 길이를 테스트하려면 이 명령을 사용하세요: openssl rsa -in <your-key-file> -text -noout | grep "Key:".

Twitter OmniAuth 로그인 옵션이 GitLab.com에서 제거됨#

  • GitLab 16.3에서 발표
  • GitLab 16.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Twitter OAuth 1.0a OmniAuth는 낮은 사용량, gem 지원 부재 및 이 기능에 대한 기능적인 로그인 옵션이 없어 GitLab 16.3에서 GitLab.com에서 지원 중단되고 제거됩니다. Twitter를 사용하여 GitLab.com에 로그인하는 경우 비밀번호나 다른 지원되는 OmniAuth 제공자로 로그인할 수 있습니다.

라이선스 컴플라이언스 CI 템플릿#

  • GitLab 15.9에서 발표
  • GitLab 16.3에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

업데이트: 이전에 GitLab 16.0에서 기존 라이선스 컴플라이언스 CI/CD 템플릿을 제거하겠다고 발표했습니다. 그러나 CycloneDX 파일의 라이선스 스캐닝의 성능 문제로 인해 16.3에서 대신 이를 수행합니다.

GitLab 라이선스 컴플라이언스 CI/CD 템플릿은 이제 지원 중단되었으며 GitLab 16.3 릴리스에서 제거될 예정입니다.

라이선스 컴플라이언스를 위해 GitLab을 계속 사용하려면 CI/CD 파이프라인에서 라이선스 컴플라이언스 템플릿을 제거하고 의존성 스캐닝 템플릿을 추가하세요. 의존성 스캐닝 템플릿은 이제 필요한 라이선스 정보를 수집할 수 있으므로 별도의 라이선스 컴플라이언스 작업을 실행할 필요가 없습니다.

라이선스 컴플라이언스 CI/CD 템플릿을 제거하기 전에 인스턴스가 새 라이선스 스캐닝 방법을 지원하는 버전으로 업그레이드되었는지 확인하세요.

대규모로 의존성 스캐너를 빠르게 사용하기 시작하려면 그룹 수준에서 스캔 실행 정책을 설정하여 그룹의 모든 프로젝트에 대해 SBOM 기반 라이선스 스캔을 적용할 수 있습니다. 그런 다음 CI/CD 구성에서 Jobs/License-Scanning.gitlab-ci.yml 템플릿의 포함을 제거할 수 있습니다.

레거시 라이선스 컴플라이언스 기능을 계속 사용하려면 LICENSE_MANAGEMENT_VERSION CI 변수를 4로 설정하여 계속 사용할 수 있습니다. 이 변수는 프로젝트, 그룹 또는 인스턴스 수준에서 설정할 수 있습니다. 이 구성 변경으로 새 접근 방식을 채택하지 않고도 기존 버전의 라이선스 컴플라이언스를 계속 사용할 수 있습니다.

이 레거시 분석기의 버그와 취약점은 더 이상 수정되지 않습니다.

CI 파이프라인 포함 GitLab <= 15.8 15.9 <= GitLab < 16.3 GitLab >= 16.3
DS 및 LS 템플릿 모두 LS 작업의 라이선스 데이터 사용 LS 작업의 라이선스 데이터 사용 DS 작업의 라이선스 데이터 사용
DS 템플릿은 포함되지만 LS 템플릿은 아님 라이선스 데이터 없음 DS 작업의 라이선스 데이터 사용 DS 작업의 라이선스 데이터 사용
LS 템플릿은 포함되지만 DS 템플릿은 아님 LS 작업의 라이선스 데이터 사용 LS 작업의 라이선스 데이터 사용 라이선스 데이터 없음

GitLab 16.1#

Alpine 3.12, 3.13, 3.14 기반 GitLab Runner 이미지#

  • GitLab 15.11에서 발표
  • GitLab 16.1에서 지원 종료
  • GitLab 16.1에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

다음 수명 종료 Alpine 버전을 기반으로 하는 러너 이미지 게시를 중단합니다:

  • Alpine 3.12
  • Alpine 3.13
  • Alpine 3.14 (2023-05-23 수명 종료)

GitLab 16.0#

Auto DevOps의 PostgreSQL 데이터베이스 기본 프로비저닝 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

현재 Auto DevOps는 기본적으로 클러스터 내 PostgreSQL 데이터베이스를 프로비저닝합니다. GitLab 16.0부터는 옵트인한 사용자에게만 데이터베이스가 프로비저닝됩니다. 이 변경으로 더 강력한 데이터베이스 관리가 필요한 프로덕션 배포를 지원합니다.

Auto DevOps가 클러스터 내 데이터베이스를 프로비저닝하도록 하려면 POSTGRES_ENABLED CI/CD 변수를 true로 설정하세요.

Azure Storage Driver가 올바른 루트 접두사 기본값으로 변경#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리의 Azure Storage Driver는 기본 루트 디렉터리로 //에 씁니다. 이 기본 루트 디렉터리는 Azure UI 일부에서 /<no-name>/으로 표시됩니다. 이 스토리지 드라이버를 사용하는 이전 배포를 지원하기 위해 이 레거시 동작을 유지해 왔습니다. 그러나 다른 스토리지 드라이버에서 Azure로 이동할 때 trimlegacyrootprefix: true를 설정하여 스토리지 드라이버가 추가 슬래시 없이 루트 경로를 빌드하도록 구성하지 않으면 모든 데이터가 숨겨집니다.

스토리지 드라이버의 새 기본 설정은 trimlegacyrootprefix: true로 설정되며, /가 기본 루트 디렉터리가 됩니다. 중단을 피하려면 현재 설정에 trimlegacyrootprefix: false를 추가할 수 있습니다.

이 호환성 변경은 GitLab 16.0에서 적용됩니다.

번들 Grafana Helm Chart 지원 중단#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm Chart에 번들로 제공되는 Grafana Helm Chart는 지원 중단되며 GitLab Helm Chart 7.0 릴리스(GitLab 16.0과 함께 출시)에서 제거됩니다.

번들 Grafana Helm Chart는 GitLab Helm Chart의 Prometheus 메트릭에 연결된 Grafana UI를 제공하기 위해 켤 수 있는 선택적 서비스입니다.

GitLab Helm Chart가 현재 제공하는 Grafana 버전은 더 이상 지원되지 않는 Grafana 버전입니다. 번들 Grafana를 사용 중인 경우 Grafana Labs의 최신 차트 버전이나 신뢰할 수 있는 공급업체의 Grafana Operator로 전환해야 합니다.

새 Grafana 인스턴스에서 GitLab에서 제공하는 Prometheus를 데이터 소스로 구성하고 GitLab UI에 Grafana를 연결할 수 있습니다.

CAS OmniAuth 공급자#

  • GitLab 15.3에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab에 CAS OmniAuth 공급자를 제공하는 omniauth-cas3 gem은 다음 주요 릴리스인 GitLab 16.0에서 제거됩니다. 이 gem은 거의 사용되지 않으며 업스트림 유지 관리 부재로 인해 GitLab이 OmniAuth 2.0으로 업그레이드하는 것을 방해하고 있습니다.

HashiCorp Vault에서 시크릿이 반환되지 않으면 CI/CD 작업 실패#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

네이티브 HashiCorp Vault 통합을 사용할 때 Vault에서 시크릿이 반환되지 않으면 CI/CD 작업이 실패합니다. GitLab 16.0 이전에 설정이 항상 시크릿을 반환하도록 하거나 이 변경을 처리하도록 파이프라인을 업데이트하세요.

멀티 모듈 Android 프로젝트에서 MobSF 기반 SAST 분석기 동작 변경#

  • GitLab 16.0에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

업데이트: MobSF 기반 GitLab SAST 분석기가 멀티 모듈 Android 프로젝트를 스캔하는 방법에 대한 변경을 이전에 발표했습니다. 해당 변경을 취소했으며 별도 조치가 필요 없습니다.

어떤 단일 모듈이 스캔될지 변경하는 대신 멀티 모듈 지원을 개선했습니다.

/approvals API 엔드포인트로 머지 리퀘스트 승인 변경#

  • GitLab 14.0에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

머지 리퀘스트에 필요한 승인을 변경하려면 GitLab 14.0에서 지원 중단된 /approvals API 엔드포인트를 더 이상 사용해서는 안 됩니다.

대신 /approval_rules 엔드포인트를 사용하여 머지 리퀘스트의 승인 규칙을 생성하거나 업데이트하세요.

Conan 프로젝트 수준 검색 엔드포인트가 프로젝트별 결과 반환#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Conan 리포지터리를 프로젝트 수준 또는 인스턴스 수준 엔드포인트와 함께 사용할 수 있습니다. 각 수준은 Conan 검색 명령을 지원합니다. 그러나 프로젝트 수준의 검색 엔드포인트가 대상 프로젝트 외부의 패키지도 반환하고 있습니다.

이 의도하지 않은 기능은 GitLab 15.8에서 지원 중단되며 GitLab 16.0에서 제거됩니다. 프로젝트 수준의 검색 엔드포인트는 대상 프로젝트의 패키지만 반환합니다.

GitLab Runner Helm Chart의 설정 필드#

  • GitLab 15.6에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 13.6부터 사용자는 GitLab Runner Helm Chart에서 모든 러너 설정을 지정할 수 있습니다. 이 기능을 구현할 때 GitLab Runner에 특정한 GitLab Helm Chart 설정의 값을 지원 중단했습니다. 지원 중단된 값은 GitLab 16.0에서 제거됩니다.

환경 변수를 사용한 Redis 설정 파일 경로 구성 지원 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GITLAB_REDIS_CACHE_CONFIG_FILE 또는 GITLAB_REDIS_QUEUES_CONFIG_FILE과 같은 환경 변수를 사용하여 Redis 설정 파일 위치를 더 이상 지정할 수 없습니다. 대신 config/redis.cache.yml 또는 config/redis.queues.yml과 같은 기본 설정 파일 위치를 사용하세요.

컨테이너 레지스트리 풀스루 캐시#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

컨테이너 레지스트리 풀스루 캐시는 GitLab 15.8에서 지원 중단되며 GitLab 16.0에서 제거됩니다. 풀스루 캐시는 업스트림 Docker Distribution 프로젝트의 일부입니다. 그러나 Docker Hub의 컨테이너 이미지를 프록시하고 캐시할 수 있는 GitLab 의존성 프록시를 위해 풀스루 캐시를 제거합니다. 풀스루 캐시를 제거하면 기능을 희생하지 않고 업스트림 클라이언트 코드도 제거할 수 있습니다.

Docker를 참조하는 컨테이너 스캐닝 변수#

  • GitLab 15.4에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

변수 이름에 DOCKER_ 접두사가 붙은 모든 컨테이너 스캐닝 변수는 지원 중단됩니다. 여기에는 DOCKER_IMAGE, DOCKER_PASSWORD, DOCKER_USER, DOCKERFILE_PATH 변수가 포함됩니다. 이러한 변수에 대한 지원은 GitLab 16.0 릴리스에서 제거됩니다. 지원 중단된 이름 대신 새 변수 이름 CS_IMAGE, CS_REGISTRY_PASSWORD, CS_REGISTRY_USER, CS_DOCKERFILE_PATH를 사용하세요.

GitLab for Jira Cloud 앱의 쿠키 인증#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab for Jira Cloud 앱의 쿠키 인증은 OAuth 인증을 위해 지원 중단되었습니다. GitLab Self-Managed에서 GitLab for Jira Cloud 앱을 계속 사용하려면 OAuth 인증을 설정해야 합니다. OAuth 없이는 연결된 네임스페이스를 관리할 수 없습니다.

DAST 템플릿을 사용한 DAST API 스캔 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

DAST API 스캔을 위한 새 DAST API 분석기 및 DAST-API.gitlab-ci.yml 템플릿으로 이동하면서 DAST 분석기로 API를 스캔하는 기능을 제거합니다. API 스캔에 DAST.gitlab-ci.yml 또는 DAST-latest.gitlab-ci.yml 템플릿을 사용하는 것은 GitLab 15.7부터 지원 중단되었으며 GitLab 16.0에서 더 이상 작동하지 않습니다. DAST-API.gitlab-ci.yml 템플릿을 사용하고 구성 세부 정보는 DAST API 분석기 문서를 참조하세요.

DAST API 변수#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.6에서 새 DAST API 분석기로 전환하면서 두 가지 레거시 DAST API 변수가 지원 중단됩니다. DAST_API_HOST_OVERRIDEDAST_API_SPECIFICATION 변수는 더 이상 DAST API 스캔에 사용되지 않습니다.

DAST_API_HOST_OVERRIDE는 OpenAPI 사양의 호스트를 자동으로 재정의하기 위해 DAST_API_TARGET_URL을 사용하는 것으로 대체되어 지원 중단되었습니다.

DAST_API_SPECIFICATIONDAST_API_OPENAPI로 대체되어 지원 중단되었습니다. OpenAPI 사양을 사용하여 테스트를 계속 안내하려면 DAST_API_SPECIFICATION 변수를 DAST_API_OPENAPI 변수로 교체해야 합니다. 값은 동일하게 유지할 수 있지만 변수 이름은 교체해야 합니다.

이 두 변수는 GitLab 16.0에서 제거됩니다.

DAST 보고서 변수 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.7에서 새 브라우저 기반 DAST 분석기가 GA로 출시되면서 미래의 어느 시점에 기본 DAST 분석기로 만드는 작업을 진행 중입니다. 이를 위해 다음 레거시 DAST 변수들이 지원 중단되며 GitLab 16.0에서 제거될 예정입니다: DAST_HTML_REPORT, DAST_XML_REPORT, DAST_MARKDOWN_REPORT. 이러한 보고서는 레거시 DAST 분석기에 의존했으며 새 브라우저 기반 분석기에서 구현할 계획이 없습니다. GitLab 16.0부터 이러한 보고서 아티팩트는 더 이상 생성되지 않습니다.

이 세 가지 변수는 GitLab 16.0에서 제거됩니다.

Java 13, 14, 15, 16에 대한 의존성 스캐닝 지원#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab은 Java 버전 13, 14, 15, 16에 대한 의존성 스캐닝 지원을 지원 중단했으며 다가오는 GitLab 16.0 릴리스에서 해당 지원을 제거할 계획입니다. 이는 Oracle Premier 및 Extended 지원이 이러한 버전에 대해 종료됨에 따라 Oracle 지원 정책과 일치합니다. 또한 GitLab이 앞으로 LTS 버전에 집중하여 의존성 스캐닝 Java 지원을 제공할 수 있게 합니다.

updated_atupdated_at를 함께 사용하지 않을 때 배포 API 오류 반환#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

배포 API는 이제 updated_at 필터링과 updated_at 정렬을 함께 사용하지 않을 때 오류를 반환합니다. 일부 사용자가 updated_at 정렬 없이 updated_at 필터링을 사용하여 "최신" 배포를 가져오고 있었으며, 이로 인해 잘못된 결과가 생성될 수 있습니다. 대신 함께 사용하거나, 일관된 방식으로 "최신 배포"를 제공하는 finished_at 필터링 및 finished_at 정렬로 마이그레이션해야 합니다.

레거시 Gitaly 설정 방법 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GIT_CONFIG_SYSTEMGIT_CONFIG_GLOBAL 환경 변수를 사용하여 Gitaly를 구성하는 것은 지원 중단되었습니다. 이러한 변수는 표준 config.toml Gitaly 설정으로 교체됩니다.

GIT_CONFIG_SYSTEMGIT_CONFIG_GLOBAL을 사용하여 Gitaly를 구성하는 GitLab 인스턴스는 config.toml을 사용한 설정으로 전환해야 합니다.

지원 중단된 Consul http 메트릭#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Linux 패키지에 포함된 Consul은 GitLab 16.0부터 이전에 지원 중단된 Consul 메트릭을 더 이상 제공하지 않습니다.

GitLab 14.0에서 Consul이 1.9.6으로 업데이트되어 일부 텔레메트리 메트릭이 consul.http 경로에서 지원 중단되었습니다. GitLab 16.0에서 consul.http 경로가 제거됩니다.

Consul 메트릭을 소비하는 모니터링이 있는 경우 consul.http 대신 consul.api.http를 사용하도록 업데이트하세요. 자세한 내용은 Consul 1.9.0의 지원 중단 노트를 참조하세요.

GitLab.com의 CI_PRE_CLONE_SCRIPT 변수 지원 중단 및 제거 계획#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab.com 러너에서 지원하는 CI_PRE_CLONE_SCRIPT 변수는 GitLab 15.9부터 지원 중단되었으며 16.0에서 제거됩니다. CI_PRE_CLONE_SCRIPT 변수를 사용하면 러너가 Git init 및 get fetch를 실행하기 전에 CI/CD 작업에서 명령을 실행할 수 있습니다. 이 기능 작동 방법에 대한 자세한 내용은 Pre-clone 스크립트를 참조하세요. 대안으로 pre_get_sources_script를 사용할 수 있습니다.

그룹에 프로젝트 임포트 시 Developer 역할 권한 제거#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

그룹에 Developer 역할을 가진 사용자가 해당 그룹에 프로젝트를 임포트할 수 있는 기능은 GitLab 15.8에서 지원 중단되며 GitLab 16.0에서 제거됩니다. GitLab 16.0부터 그룹에 Maintainer 또는 Owner 역할을 가진 사용자만 해당 그룹에 프로젝트를 임포트할 수 있습니다.

PHP 및 Python에 대한 개발 의존성 보고#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0에서 GitLab 의존성 스캐닝 분석기는 Python/pipenv 및 PHP/composer 프로젝트 모두에 대한 개발 의존성을 보고하기 시작합니다. 이러한 개발 의존성을 보고하지 않으려는 사용자는 CI/CD 파일에 DS_INCLUDE_DEV_DEPENDENCIES: false를 설정해야 합니다.

Markdown에 Grafana 패널 임베딩 지원 중단#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Flavored Markdown에 Grafana 패널을 추가하는 기능은 15.9에서 지원 중단되었으며 16.0에서 제거됩니다. GitLab Observability UI차트를 임베딩하는 기능으로 이 기능을 대체할 예정입니다.

CI/CD 매개변수 문자 길이의 강제 유효성 검사#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

CI/CD 작업 이름에는 엄격한 255자 제한이 있지만 다른 CI/CD 매개변수는 아직 해당 제한을 유지하는 유효성 검사가 없습니다.

GitLab 16.0에서는 다음에 대한 유효성 검사도 255자로 엄격하게 제한됩니다:

  • stage 키워드
  • 파이프라인의 Git 브랜치 또는 태그 이름인 ref
  • 외부 CI/CD 통합에서 사용하는 descriptiontarget_url 매개변수

GitLab Self-Managed 사용자는 255자를 초과하는 매개변수를 사용하지 않도록 파이프라인을 업데이트해야 합니다. GitLab.com 사용자는 데이터베이스에서 이미 제한되어 있으므로 변경할 필요가 없습니다.

환경 검색 쿼리에 최소 세 자 필요#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0부터 API로 환경을 검색할 때 최소 세 자를 사용해야 합니다. 이 변경으로 검색 작업의 확장성을 보장합니다.

GraphQL API에서 ReleaseAssetLink 유형external 필드는 릴리스 링크가 GitLab 인스턴스에 내부적인지 외부적인지 나타내는 데 사용되었습니다. GitLab 15.9부터 모든 릴리스 링크를 외부로 처리하므로 이 필드는 GitLab 15.9에서 지원 중단되며 GitLab 16.0에서 제거됩니다. 워크플로에 중단이 발생하지 않도록 external 필드 사용을 중단하세요. 이 필드는 제거되며 대체되지 않습니다.

Releases APIRelease Links API에서 external 필드는 릴리스 링크가 GitLab 인스턴스에 내부적인지 외부적인지 나타내는 데 사용되었습니다. GitLab 15.9부터 모든 릴리스 링크를 외부로 처리하므로 이 필드는 GitLab 15.9에서 지원 중단되며 GitLab 16.0에서 제거됩니다. 워크플로에 중단이 발생하지 않도록 external 필드 사용을 중단하세요. 이 필드는 제거되며 대체되지 않습니다.

Geo: 프로젝트 리포지터리 재다운로드 지원 중단#

  • GitLab 15.11에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

보조 Geo 사이트에서 프로젝트 리포지터리를 "재다운로드"하는 버튼은 지원 중단됩니다. 재다운로드 로직에는 발생 시 해결하기 어려운 데이터 일관성 문제가 있습니다. 이 버튼은 GitLab 16.0에서 제거됩니다.

GitLab 관리자는 보호된 브랜치 또는 태그를 수정하려면 권한이 필요#

  • GitLab 16.0에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 관리자는 이제 명시적으로 권한이 부여되지 않는 한 보호된 브랜치 또는 태그에 대한 작업을 수행할 수 없습니다. 이러한 작업에는 보호된 브랜치에 푸시 및 머지, 브랜치 보호 해제, 보호된 태그 생성이 포함됩니다.

GitLab 셀프 모니터링 프로젝트#

  • GitLab 14.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 셀프 모니터링은 인스턴스 관리자에게 인스턴스 상태를 모니터링하는 도구를 제공합니다. 이 기능은 GitLab 14.9에서 지원 중단되었으며 16.0에서 제거될 예정입니다.

GitLab.com 임포터#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab.com 임포터는 GitLab 15.8에서 지원 중단되었으며 GitLab 16.0에서 제거됩니다.

GitLab.com 임포터는 UI를 통해 GitLab.com에서 GitLab Self-Managed 인스턴스로 프로젝트를 임포트하기 위해 2015년에 도입되었습니다. 이 기능은 GitLab Self-Managed에서만 사용 가능합니다. 직접 전송을 통한 GitLab 그룹 및 프로젝트 마이그레이션이 GitLab.com 임포터를 대체하며 보다 일관된 임포트 기능을 제공합니다.

개요는 마이그레이션된 그룹 항목마이그레이션된 프로젝트 항목을 참조하세요.

GraphQL API 러너 상태에서 paused 반환 중단#

  • GitLab 14.5에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Runner GraphQL API 엔드포인트는 GitLab 16.0에서 상태로 paused 또는 active를 반환하지 않습니다. REST API의 향후 v5에서도 GitLab Runner 엔드포인트는 paused 또는 active를 반환하지 않습니다.

러너의 상태는 online, offline, not_connected와 같은 러너 연결 상태에만 관련됩니다. 상태 paused 또는 active는 더 이상 표시되지 않습니다.

러너가 paused인지 확인할 때 API 사용자는 대신 불리언 속성 pausedtrue인지 확인하는 것이 좋습니다. 러너가 active인지 확인할 때는 pausedfalse인지 확인하세요.

Jira Cloud용 Jira DVCS 커넥터#

  • GitLab 15.1에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Jira Cloud용 Jira DVCS 커넥터는 지원 중단되었으며 GitLab 16.0에서 제거됩니다. Jira Cloud에서 Jira DVCS 커넥터를 사용 중인 경우 GitLab for Jira Cloud 앱으로 마이그레이션하세요.

Jira DVCS 커넥터는 Jira 8.13 이하에서도 지원 중단됩니다. Jira DVCS 커넥터는 Jira 8.14 이상의 Jira Server 또는 Jira Data Center에서만 사용할 수 있습니다.

GitLab Helm Chart의 KAS 메트릭 포트#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Helm Chart에서 gitlab.kas.metrics.port는 새 gitlab.kas.observability.port 설정 필드를 위해 지원 중단되었습니다. 이 포트는 단순한 메트릭 이상으로 사용되므로 설정 혼란을 피하기 위해 이 변경이 필요했습니다.

레거시 Gitaly 설정 방법#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Omnibus GitLab 내의 Gitaly 설정이 업데이트되어 모든 Gitaly 관련 설정 키가 표준 Gitaly 설정과 일치하는 단일 설정 구조에 있습니다. 따라서 이전 설정 구조는 지원 중단됩니다.

단일 설정 구조는 GitLab 15.10부터 사용 가능하지만 하위 호환성은 유지됩니다. 제거된 후에는 단일 설정 구조를 사용하여 Gitaly를 설정해야 합니다. 최대한 빨리 Gitaly 설정을 업데이트해야 합니다.

이 변경은 Omnibus GitLab과 소스 설치 간의 일관성을 향상시키고 두 가지 모두에 대한 더 나은 문서 및 도구를 제공할 수 있게 합니다.

업그레이드 지침을 사용하여 최대한 빨리 새 설정 구조로 업데이트해야 합니다.

레거시 Praefect 설정 방법#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에는 Praefect 설정 키가 설정 파일 전체에 흩어져 있었습니다. 이제 Praefect 설정과 일치하는 단일 설정 구조에 있으므로 이전 설정 방법은 지원 중단됩니다.

단일 설정 구조는 GitLab 15.9부터 사용 가능하지만 하위 호환성은 유지됩니다. 제거된 후에는 단일 설정 구조를 사용하여 Praefect를 설정해야 합니다. 업그레이드 지침을 사용하여 최대한 빨리 Praefect 설정을 업데이트해야 합니다.

이 변경은 Omnibus GitLab의 Praefect 설정을 Praefect의 설정 구조와 일치시킵니다. 이전에는 계층 구조와 설정 키가 일치하지 않았습니다. 이 변경은 Omnibus GitLab과 소스 설치 간의 일관성을 향상시키고 두 가지 모두에 대한 더 나은 문서 및 도구를 제공할 수 있게 합니다.

레거시 URL 교체 또는 제거#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0은 GitLab 애플리케이션에서 레거시 URL을 제거합니다.

GitLab 9.0에서 서브그룹이 도입되었을 때 그룹 경로의 끝을 나타내기 위해 URL에 /-/ 구분자가 추가되었습니다. 이제 모든 GitLab URL은 프로젝트, 그룹, 인스턴스 수준 기능에 이 구분자를 사용합니다.

/-/ 구분자를 사용하지 않는 URL은 GitLab 16.0에서 제거될 예정입니다. 이러한 URL의 전체 목록과 대체 URL은 이슈 28848을 참조하세요.

레거시 URL을 참조하는 스크립트나 북마크를 업데이트하세요. GitLab API는 이 변경의 영향을 받지 않습니다.

라이선스 컴플라이언스 페이지의 License-Check 및 정책 탭#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

License-Check 기능은 이제 지원 중단되었으며 GitLab 16.0에서 제거될 예정입니다. 또한 라이선스 컴플라이언스 페이지의 정책 탭과 License-Check 기능과 관련된 모든 API가 지원 중단되었으며 GitLab 16.0에서 제거될 예정입니다. 감지된 라이선스를 기반으로 승인을 계속 강제하려는 사용자는 새 라이선스 승인 정책을 생성하는 것이 좋습니다.

외부 인증으로 개인 액세스 토큰 및 배포 토큰 접근 제한#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

외부 인증이 활성화된 경우 개인 액세스 토큰(PAT) 및 배포 토큰은 더 이상 컨테이너 또는 패키지 레지스트리에 액세스할 수 없습니다. 이 심층 방어 보안 조치는 16.0에 배포됩니다. PAT 및 배포 토큰을 사용하여 이러한 레지스트리에 액세스하는 사용자의 경우 이 조치로 이러한 토큰 사용이 중단됩니다. 컨테이너 또는 패키지 레지스트리에서 토큰을 사용하려면 외부 인증을 비활성화하세요.

GitLab Helm Chart의 주요 번들 Helm Chart 업데이트#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0에 맞춰 GitLab Helm Chart는 7.0 주요 버전을 출시합니다. 다음 주요 번들 차트 업데이트가 포함됩니다:

전체 GitLab Helm Chart 7.0 업그레이드 단계는 업그레이드 문서에서 확인할 수 있습니다.

Managed Licenses API#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Managed Licenses API는 이제 지원 중단되었으며 GitLab 16.0에서 제거될 예정입니다.

프로젝트당 최대 활성 파이프라인 수 제한 (ci_active_pipelines)#

  • GitLab 15.3에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

프로젝트당 최대 활성 파이프라인 수 제한은 기본적으로 활성화된 적이 없으며 GitLab 16.0에서 제거됩니다. 이 제한은 ci_active_pipelines 아래 Rails 콘솔에서도 구성할 수 있습니다. 대신 유사한 보호 기능을 제공하는 다른 권장 속도 제한을 사용하세요:

Prometheus를 통한 성능 메트릭 모니터링#

  • GitLab 14.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Prometheus 인스턴스에 저장된 데이터를 표시함으로써 GitLab은 사용자가 성능 메트릭을 볼 수 있도록 합니다. GitLab은 또한 대시보드에서 이러한 메트릭의 시각화를 표시합니다. 사용자는 이전에 구성된 외부 Prometheus 인스턴스에 연결하거나 Prometheus를 GitLab 관리 앱으로 설정할 수 있습니다. 그러나 GitLab에서 Kubernetes 클러스터와의 인증서 기반 통합이 지원 중단됨에 따라 Prometheus에 의존하는 GitLab의 메트릭 기능도 지원 중단됩니다. 여기에는 대시보드의 메트릭 시각화가 포함됩니다. GitLab은 Opstrace를 기반으로 한 단일 사용자 경험을 개발 중입니다. Opstrace 통합 작업을 팔로우하려면 이슈가 있습니다.

만료 없는 액세스 토큰#

  • GitLab 15.4에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

기존 프로젝트 액세스 토큰에 만료 날짜가 자동으로 적용되는지 여부는 사용 중인 GitLab 서비스 및 GitLab 16.0 이상으로 업그레이드한 시기에 따라 다릅니다:

  • GitLab.com에서 16.0 마일스톤 동안 만료 날짜가 없는 기존 프로젝트 액세스 토큰에는 현재 날짜로부터 365일 후의 만료 날짜가 자동으로 부여되었습니다.
  • GitLab Self-Managed에서 GitLab 15.11 이하에서 GitLab 16.0 이상으로 업그레이드한 경우:
    • 2024년 7월 23일 이전에는 만료 날짜가 없는 기존 프로젝트 액세스 토큰에 현재 날짜로부터 365일 후의 만료 날짜가 자동으로 부여되었습니다. 이 변경은 호환성 변경입니다.
    • 2024년 7월 24일 이후에는 만료 날짜가 없는 기존 프로젝트 액세스 토큰에 만료 날짜가 설정되지 않았습니다.

GitLab Self-Managed에서 다음 GitLab 버전 중 하나를 새로 설치하는 경우 기존 프로젝트 액세스 토큰에 만료 날짜가 자동으로 적용되지 않습니다:

  • 16.0.9
  • 16.1.7
  • 16.2.10
  • 16.3.8
  • 16.4.6
  • 16.5.9
  • 16.6.9
  • 16.7.9
  • 16.8.9
  • 16.9.10
  • 16.10.9
  • 16.11.7
  • 17.0.5
  • 17.1.3
  • 17.2.1

만료 날짜가 없는 액세스 토큰은 무기한 유효하므로 액세스 토큰이 유출될 경우 보안 위험이 됩니다. 만료 날짜가 있는 액세스 토큰이 더 좋기 때문에 GitLab 15.3부터 기본 만료 날짜를 채웁니다.

GitLab 16.0에서 만료 날짜가 없는 개인, 프로젝트, 또는 그룹 액세스 토큰에는 자동으로 1년의 만료 날짜가 설정됩니다.

회사의 보안 정책에 맞게 기본값이 적용되기 전에 액세스 토큰에 만료 날짜를 부여하는 것이 좋습니다:

  • GitLab.com의 경우 16.0 마일스톤 동안
  • GitLab Self-Managed의 경우 16.0으로 업그레이드할 때

비표준 기본 Redis 포트 지원 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Redis 설정 파일이 없이 GitLab이 시작되면 GitLab은 localhost:6380, localhost:6381, localhost:6382에서 세 개의 Redis 서버에 연결할 수 있다고 가정합니다. localhost:6379에 하나의 Redis 서버가 있다고 가정하도록 이 동작을 변경하고 있습니다.

세 서버를 유지하려는 관리자는 config/redis.cache.yml, config/redis.queues.yml, config/redis.shared_state.yml 파일을 편집하여 Redis URL을 구성해야 합니다.

삭제 보호 설정에서 즉시 프로젝트 삭제 옵션 지원 중단#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Admin 영역의 그룹 및 프로젝트 삭제 보호 설정에는 그룹과 프로젝트를 즉시 삭제하는 옵션이 있었습니다. 16.0부터 이 옵션은 더 이상 사용할 수 없으며 지연된 그룹 및 프로젝트 삭제가 기본 동작이 됩니다.

이 옵션은 더 이상 그룹 설정으로 표시되지 않습니다. GitLab Self-Managed 사용자는 여전히 삭제 지연 기간을 정의할 수 있으며 GitLab.com 사용자는 조정 불가능한 기본 보존 기간인 7일을 갖습니다. 사용자는 여전히 프로젝트 설정에서 프로젝트를, 그룹 설정에서 그룹을 즉시 삭제할 수 있습니다.

기본적으로 그룹과 프로젝트를 즉시 삭제하는 옵션은 사용자가 실수로 이 작업을 수행하여 그룹과 프로젝트를 영구적으로 잃는 것을 방지하기 위해 지원 중단되었습니다.

PostgreSQL 12 지원 중단#

  • GitLab 15.0에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

PostgreSQL 12에 대한 지원은 GitLab 16.0에서 제거될 예정입니다. GitLab 16.0에서 PostgreSQL 13이 최소 필요 PostgreSQL 버전이 됩니다.

PostgreSQL 12는 전체 GitLab 15 릴리스 사이클 동안 지원됩니다. GitLab 16.0 이전에 업그레이드하려는 인스턴스를 위해 PostgreSQL 13도 지원됩니다.

PostgreSQL 13에 대한 Geo 지원은 GitLab 15.2에서 추가되었습니다.

Projects API 필드 operations_access_level 지원 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Projects API에서 operations_access_level 필드를 지원 중단합니다. 이 필드는 특정 기능을 제어하는 필드로 교체되었습니다: releases_access_level, environments_access_level, feature_flags_access_level, infrastructure_access_level, monitor_access_level.

베어 리포지터리 임포트를 위한 Rake 태스크#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

베어 리포지터리 임포트를 위한 Rake 태스크(gitlab:import:repos)는 GitLab 15.8에서 지원 중단되었으며 GitLab 16.0에서 제거됩니다.

이 Rake 태스크는 리포지터리의 디렉터리 트리를 GitLab 인스턴스에 임포트합니다. 이러한 리포지터리는 Rake 태스크가 특정 디렉터리 구조 또는 특정 사용자 정의 Git 설정(gitlab.fullpath)에 의존하므로 이전에 GitLab에서 관리되어야 했습니다.

이 Rake 태스크를 사용하여 리포지터리를 임포트하는 데는 제한 사항이 있습니다. Rake 태스크:

  • 프로젝트 및 프로젝트 위키 리포지터리만 알고 있으며 디자인, 그룹 위키 또는 스니펫용 리포지터리를 지원하지 않습니다.
  • 지원되지 않는 경우에도 해시되지 않은 스토리지 프로젝트를 임포트할 수 있도록 허용합니다.
  • Git 설정 gitlab.fullpath가 설정되어 있어야 합니다. 에픽 8953에서 이 설정에 대한 지원 제거를 제안합니다.

gitlab:import:repos Rake 태스크 대신 사용할 수 있는 대안:

Redis 5 지원 중단#

  • GitLab 15.3에서 발표
  • GitLab 15.6에서 지원 종료
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 13.9에서 Omnibus GitLab 패키지 및 GitLab Helm 차트 4.9에서 Redis 버전이 Redis 6으로 업데이트되었습니다. Redis 5는 2022년 4월에 수명 종료에 도달했으며 GitLab 15.6부터 더 이상 지원되지 않습니다. 자체 Redis 5.0 인스턴스를 사용 중인 경우 GitLab 16.0 이상으로 업그레이드하기 전에 Redis 6.0 이상으로 업그레이드해야 합니다.

POST /jobs/request 러너 엔드포인트에서 job_age 매개변수 제거#

  • GitLab 15.2에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Runner와의 통신에 사용되는 POST /jobs/request API 엔드포인트에서 반환되는 job_age 매개변수는 GitLab 또는 Runner 기능에서 사용된 적이 없습니다. 이 매개변수는 GitLab 16.0에서 제거됩니다.

이는 엔드포인트에서 이 매개변수가 반환되는 것에 의존하는 자체 러너를 개발한 경우 호환성 변경이 될 수 있습니다. GitLab.com의 공개 공유 러너를 포함하여 공식 릴리스된 버전의 GitLab Runner를 사용하는 경우에는 호환성 변경이 아닙니다.

GitLab 16.0의 SAST 분석기 커버리지 변경#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST는 다양한 분석기를 사용하여 취약점에 대한 코드를 스캔합니다.

GitLab SAST에서 기본으로 사용되는 지원 분석기 수를 줄이고 있습니다. 이것은 다양한 프로그래밍 언어에서 더 빠르고 일관된 사용자 경험을 제공하기 위한 장기적인 전략의 일환입니다.

GitLab 16.0부터 GitLab SAST CI/CD 템플릿은 .NET에 대해 Security Code Scan 기반 분석기를 더 이상 사용하지 않으며 지원 종료 상태로 전환됩니다. 이 분석기를 SAST CI/CD 템플릿에서 제거하고 Semgrep 기반 분석기에서 C#에 대한 GitLab 지원 감지 규칙으로 교체합니다.

즉시 적용되어 이 분석기는 보안 업데이트만 받게 됩니다. 다른 일상적인 개선이나 업데이트는 보장되지 않습니다. GitLab 16.0에서 이 분석기가 지원 종료에 도달한 후에는 더 이상 업데이트가 제공되지 않습니다. 그러나 이 분석기에 대해 이전에 게시된 컨테이너 이미지를 삭제하거나 사용자 정의 CI/CD 파이프라인 작업을 사용하여 실행하는 기능을 제거하지는 않습니다.

지원 중단된 분석기에서 취약점 발견을 이미 해제한 경우 교체 분석기는 이전 해제를 존중하려고 시도합니다. 시스템 동작은 다음에 따라 다릅니다:

  • 과거에 Semgrep 기반 분석기 실행을 제외했는지 여부
  • 프로젝트의 취약성 보고서에 표시된 취약점을 어떤 분석기가 먼저 발견했는지

자세한 내용은 취약점 번역 문서를 참조하세요.

영향을 받은 분석기에 사용자 정의를 적용했거나 현재 파이프라인에서 Semgrep 기반 분석기를 비활성화한 경우 이 변경에 대한 지원 중단 이슈에 설명된 대로 조치를 취해야 합니다.

업데이트: 이 변경의 범위를 축소했습니다. GitLab 16.0에서 다음 변경 사항은 더 이상 적용하지 않습니다:

  1. PHPCS Security Audit 기반 분석기에 대한 지원을 제거하고 Semgrep 기반 분석기의 GitLab 관리 감지 규칙으로 교체
  2. SpotBugs 기반 분석기의 범위에서 Scala를 제거하고 Semgrep 기반 분석기의 GitLab 관리 감지 규칙으로 교체

PHPCS Security Audit 기반 분석기 교체 작업은 이슈 364060에서 추적되며 Scala 스캐닝을 Semgrep 기반 분석기로 마이그레이션하는 작업은 이슈 362958에서 추적됩니다.

Secure 분석기 주요 버전 업데이트#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Secure 스테이지는 GitLab 16.0 릴리스와 함께 분석기의 주요 버전을 올립니다. 이 업데이트는 다음 시기에 릴리스된 분석기를 명확하게 구분합니다:

  • 2023년 5월 22일 이전에 릴리스된 것
  • 2023년 5월 22일 이후에 릴리스된 것

기본 포함 템플릿을 사용하지 않거나 분석기 버전을 고정한 경우 고정된 버전을 제거하거나 최신 주요 버전으로 업데이트하도록 CI/CD 작업 정의를 업데이트해야 합니다. GitLab 13.0-15.10 사용자는 GitLab 16.0이 릴리스될 때까지 정상적으로 분석기 업데이트를 계속 받게 되며, 그 후 모든 새로 수정된 버그와 릴리스된 기능은 분석기의 새 주요 버전에서만 릴리스됩니다. 유지 관리 정책에 따라 지원 중단된 버전에는 버그와 기능을 백포트하지 않습니다. 필요한 경우 보안 패치는 최신 3개 마이너 릴리스 내에서 백포트됩니다.

특히 다음이 지원 중단되며 16.0 GitLab 릴리스 후 더 이상 업데이트되지 않습니다:

  • API 퍼징: 버전 2
  • 컨테이너 스캐닝: 버전 5
  • 커버리지 가이드 퍼즈 테스팅: 버전 3
  • 의존성 스캐닝: 버전 3
  • 동적 애플리케이션 보안 테스팅(DAST): 버전 3
  • DAST API: 버전 2
  • IaC 스캐닝: 버전 3
  • 라이선스 스캐닝: 버전 4
  • 시크릿 감지: 버전 4
  • 정적 애플리케이션 보안 테스팅(SAST): 모든 분석기 버전 3
    • brakeman: 버전 3
    • flawfinder: 버전 3
    • kubesec: 버전 3
    • mobsf: 버전 3
    • nodejs-scan: 버전 3
    • phpcs-security-audit: 버전 3
    • pmd-apex: 버전 3
    • security-code-scan: 버전 3
    • semgrep: 버전 3
    • sobelow: 버전 3
    • spotbugs: 버전 3

보안 스캐닝 CI/CD 템플릿이 새 작업 rules 사용#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

보안 스캐닝을 위한 GitLab 관리 CI/CD 템플릿이 GitLab 16.0 릴리스에서 업데이트됩니다. 업데이트에는 CI/CD 템플릿의 최신 버전에서 이미 릴리스된 개선 사항이 포함됩니다. 사용자 정의 CI/CD 파이프라인 구성을 중단할 가능성이 있기 때문에 이러한 변경 사항을 최신 템플릿 버전에 릴리스했습니다.

모든 업데이트된 템플릿에서 값이 "true"인 경우에만 스캐닝을 비활성화하도록 SAST_DISABLEDDEPENDENCY_SCANNING_DISABLED와 같은 변수의 정의를 업데이트하고 있습니다. 이전에는 값이 "false"여도 스캐닝이 비활성화되었습니다.

다음 템플릿이 업데이트됩니다:

위에 나열된 템플릿 중 하나를 사용하고 _DISABLED 변수를 사용하지만 "true" 이외의 값을 설정하는 경우 16.0 릴리스 전에 파이프라인을 테스트하는 것이 좋습니다.

업데이트: 영향을 받은 템플릿의 rules를 기본적으로 머지 리퀘스트 파이프라인에서 실행하도록 업데이트할 것이라고 이전에 발표했습니다. 그러나 지원 중단 이슈에서 논의된 호환성 문제로 인해 GitLab 16.0에서는 이 변경을 더 이상 적용하지 않습니다. 위에서 설명한 _DISABLED 변수에 대한 변경 사항은 계속 릴리스합니다.

보안 보고서 스키마 버전 14.x.x#

  • GitLab 15.3에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

버전 14.x.x 보안 보고서 스키마는 지원 중단됩니다.

GitLab 15.8 이상에서 스키마 버전 14.x.x를 사용하는 보안 보고서 스캐너 통합은 파이프라인의 Security 탭에 지원 중단 경고를 표시합니다.

GitLab 16.0 이상에서 이 기능은 제거됩니다. 스키마 버전 14.x.x를 사용하는 보안 보고서는 파이프라인의 Security 탭에서 오류를 발생시킵니다.

자세한 내용은 보안 보고서 유효성 검사를 참조하세요.

Kubernetes용 GitLab 에이전트 설정의 Starboard 지시자#

  • GitLab 15.4에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 컨테이너 스캐닝 기능은 더 이상 starboard 설치가 필요하지 않습니다. 따라서 Kubernetes용 GitLab 에이전트 설정 파일에서 starboard: 지시자 사용은 이제 지원 중단되었으며 GitLab 16.0에서 제거될 예정입니다. 설정 파일을 업데이트하여 container_scanning: 지시자를 사용하세요.

Windows Server 2004 및 20H2 기반 GitLab Runner 이미지 게시 중단#

  • GitLab 16.0에서 발표
  • GitLab 16.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 16.0부터 Windows Server 2004 및 20H2를 기반으로 하는 GitLab Runner 이미지는 해당 운영 체제가 수명 종료되었으므로 제공되지 않습니다.

Praefect 사용자 정의 메트릭 엔드포인트 설정 지원#

  • GitLab 15.9에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

prometheus_exclude_database_from_default_metrics 설정 값 사용에 대한 지원은 GitLab 15.9에서 지원 중단되었으며 GitLab 16.0에서 제거됩니다. 이 설정 값을 사용하는 것이 성능에 좋지 않기 때문에 제거합니다. 이 변경으로 다음 메트릭이 /metrics에서 사용 불가능해집니다:

  • gitaly_praefect_unavailable_repositories
  • gitaly_praefect_verification_queue_depth
  • gitaly_praefect_replication_queue_depth

메트릭 수집 대상을 /db_metrics도 스크레이프하도록 업데이트해야 할 수 있습니다.

Terraform 상태 이름의 마침표(.) 지원으로 기존 상태 중단 가능#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에는 마침표가 포함된 Terraform 상태 이름이 지원되지 않았습니다. 그러나 해결책을 통해 마침표가 있는 상태 이름을 여전히 사용할 수 있었습니다.

GitLab 15.7은 마침표가 포함된 상태 이름에 대한 완전한 지원을 추가했습니다. 이러한 상태 이름을 처리하기 위해 해결책을 사용했다면 작업이 실패하거나 처음으로 Terraform을 실행한 것처럼 보일 수 있습니다.

문제를 해결하려면:

  1. 마침표와 그 뒤에 오는 문자를 제외하여 상태 파일에 대한 모든 참조를 변경하세요.
    • 예를 들어 상태 이름이 state.name인 경우 모든 참조를 state로 변경하세요.
  2. Terraform 명령을 실행하세요.

마침표를 포함한 전체 상태 이름을 사용하려면 전체 상태 파일로 마이그레이션하세요.

API가 더 이상 Kubernetes 에이전트의 취소된 토큰을 반환하지 않음#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

현재 Cluster Agents API 엔드포인트에 대한 GET 요청은 취소된 토큰을 반환할 수 있습니다. GitLab 16.0에서 GET 요청은 취소된 토큰을 반환하지 않습니다.

이러한 엔드포인트에 대한 호출을 검토하고 취소된 토큰을 사용하지 않는지 확인해야 합니다.

이 변경은 다음 REST 및 GraphQL API 엔드포인트에 영향을 줍니다:

Phabricator 태스크 임포터 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Phabricator 태스크 임포터가 지원 중단됩니다. Phabricator 자체 프로젝트는 2021년 6월 1일부터 더 이상 적극적으로 유지 관리되지 않습니다. 이 도구를 사용한 임포트를 관찰하지 못했습니다. GitLab의 관련 오픈 이슈에는 활동이 없었습니다.

최신 Terraform 템플릿이 현재 안정적인 템플릿을 덮어씀#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

모든 GitLab 주요 버전에서 현재 최신 템플릿으로 안정적인 Terraform 템플릿을 업데이트합니다. 이 변경은 빠른 시작기본 템플릿에 영향을 줍니다.

새 템플릿은 기본 규칙과 함께 제공되므로 업데이트로 인해 Terraform 파이프라인이 중단될 수 있습니다. 예를 들어 Terraform 작업이 다운스트림 파이프라인으로 트리거되는 경우 GitLab 16.0에서 규칙이 작업을 트리거하지 않습니다.

변경 사항을 수용하려면 .gitlab-ci.yml 파일에서 rules를 조정해야 할 수 있습니다.

머지 리퀘스트에서 /draft 빠른 작업의 토글 동작#

  • GitLab 15.4에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

빠른 작업을 통해 머지 리퀘스트의 드래프트 상태를 토글하는 동작을 더 명확하게 하기 위해 /draft 빠른 작업의 토글 동작을 지원 중단하고 제거합니다. GitLab 16.0 릴리스부터 /draft는 머지 리퀘스트를 Draft로만 설정하고 새 /ready 빠른 작업을 사용하여 드래프트 상태를 제거합니다.

vulnerabilityFindingDismiss 뮤테이션에서 id 필드 사용#

  • GitLab 15.3에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

vulnerabilityFindingDismiss GraphQL 뮤테이션을 사용하여 취약점 발견의 상태를 Dismissed로 설정할 수 있습니다. 이전에는 이 뮤테이션이 id 필드를 사용하여 발견을 고유하게 식별했습니다. 그러나 이것은 파이프라인 보안 탭에서 발견을 해제하는 데 작동하지 않았습니다. 따라서 id 필드를 식별자로 사용하는 것은 uuid 필드를 위해 제외되었습니다. uuid 필드를 식별자로 사용하면 파이프라인 보안 탭에서 발견을 해제할 수 있습니다.

서드파티 컨테이너 레지스트리 사용 지원 중단#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab을 인증 엔드포인트로 사용하는 서드파티 컨테이너 레지스트리 사용은 GitLab 15.8에서 지원 중단되었으며 지원 종료는 GitLab 16.0으로 예정되어 있습니다. 이는 컨테이너 이미지를 찾고 보고 삭제하기 위해 외부 레지스트리를 GitLab 사용자 인터페이스에 연결한 GitLab Self-Managed 사용자에게 영향을 줍니다.

GitLab 컨테이너 레지스트리와 서드파티 컨테이너 레지스트리 모두 지원하는 것은 유지 관리, 코드 품질, 하위 호환성 측면에서 어렵고 효율성 유지 능력을 저해합니다. 따라서 이 기능을 계속 지원하지 않을 것입니다.

이 변경은 파이프라인을 사용하여 외부 레지스트리에 컨테이너 이미지를 가져오고 푸시하는 기능에 영향을 주지 않습니다.

GitLab.com의 새 GitLab 컨테이너 레지스트리 버전을 릴리스한 이후 서드파티 컨테이너 레지스트리에서 사용할 수 없는 추가 기능 구현을 시작했습니다. 이러한 새 기능을 통해 정리 정책과 같은 상당한 성능 개선을 달성할 수 있었습니다. 대부분 GitLab 컨테이너 레지스트리에서만 사용 가능한 기능이 필요한 새 기능 제공에 집중하고 있습니다. 이 지원 중단을 통해 보다 강력한 통합 레지스트리 경험과 기능 세트를 제공하는 데 집중함으로써 장기적인 단편화와 사용자 불만을 줄일 수 있습니다.

앞으로 GitLab 컨테이너 레지스트리에서만 사용할 수 있는 새 기능 개발 및 릴리스에 계속 투자할 것입니다.

경로 끝에 전역 ID가 있는 작업 항목 경로 지원 중단#

  • GitLab 15.10에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

작업 항목 URL에서 전역 ID 사용은 지원 중단됩니다. 향후에는 내부 ID(IID)만 지원됩니다.

GitLab은 여러 작업 항목 유형을 지원하므로 https://gitlab.com/gitlab-org/gitlab/-/work_items/<global_id>와 같은 경로는 예를 들어 태스크 또는 OKR을 표시할 수 있습니다.

GitLab 15.10에서 다음 형식으로 경로 끝에 쿼리 매개변수(iid_path)를 추가하여 내부 ID(IID) 사용에 대한 지원을 추가했습니다: https://gitlab.com/gitlab-org/gitlab/-/work_items/<iid>?iid_path=true.

GitLab 16.0에서 작업 항목 경로에서 전역 ID를 사용하는 기능을 제거합니다. 경로 끝의 숫자는 쿼리 매개변수를 추가할 필요 없이 내부 ID(IID)로 간주됩니다. 다음 형식만 지원됩니다: https://gitlab.com/gitlab-org/gitlab/-/work_items/<iid>.

CI_BUILD_* 미리 정의된 변수#

  • GitLab 14.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

CI_BUILD_*로 시작하는 미리 정의된 CI/CD 변수는 GitLab 9.0에서 지원 중단되었으며 GitLab 16.0에서 제거됩니다. 이 변수를 여전히 사용 중이라면 기능적으로 동일한 미리 정의된 변수로 변경해야 합니다:

제거된 변수 대체 변수
CI_BUILD_BEFORE_SHA CI_COMMIT_BEFORE_SHA
CI_BUILD_ID CI_JOB_ID
CI_BUILD_MANUAL CI_JOB_MANUAL
CI_BUILD_NAME CI_JOB_NAME
CI_BUILD_REF CI_COMMIT_SHA
CI_BUILD_REF_NAME CI_COMMIT_REF_NAME
CI_BUILD_REF_SLUG CI_COMMIT_REF_SLUG
CI_BUILD_REPO CI_REPOSITORY_URL
CI_BUILD_STAGE CI_JOB_STAGE
CI_BUILD_TAG CI_COMMIT_TAG
CI_BUILD_TOKEN CI_JOB_TOKEN
CI_BUILD_TRIGGERED CI_PIPELINE_TRIGGERED

POST ci/lint API 엔드포인트 지원 중단#

  • GitLab 15.7에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

POST ci/lint API 엔드포인트는 15.7에서 지원 중단되었으며 16.0에서 제거됩니다. 이 엔드포인트는 CI/CD 설정 옵션의 전체 범위를 검증하지 않습니다. 대신 CI/CD 설정을 올바르게 검증하는 POST /projects/:id/ci/lint를 사용하세요.

DORA API의 environment_tier 매개변수#

  • GitLab 15.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

혼란과 중복을 피하기 위해 environment_tier 매개변수는 environment_tiers 매개변수를 위해 지원 중단됩니다. 새 environment_tiers 매개변수를 사용하면 DORA API가 여러 티어에 대한 집계 데이터를 동시에 반환할 수 있습니다. environment_tier 매개변수는 GitLab 16.0에서 제거됩니다.

PipelineSecurityReportFinding GraphQL 유형의 name 필드#

  • GitLab 15.1에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에 PipelineSecurityReportFinding GraphQL 유형이 업데이트되어 새 title 필드가 포함되었습니다. 이 필드는 현재 name 필드의 별칭으로, 덜 구체적인 name 필드가 중복됩니다. name 필드는 GitLab 16.0에서 PipelineSecurityReportFinding 유형에서 제거됩니다.

started 이터레이션 상태#

  • GitLab 14.8에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이터레이션 GraphQL API이터레이션 REST APIstarted 이터레이션 상태는 지원 중단됩니다.

GraphQL API 버전은 GitLab 16.0에서 제거됩니다. 이 상태는 마일스톤과 같은 다른 시간 기반 엔티티에 대한 명명과 일치하는 이미 사용 가능한 current 상태로 교체됩니다.

다음 v5 REST API 버전까지 REST API 버전에서 started 상태를 계속 지원할 계획입니다.

vulnerabilityFindingDismiss GraphQL 뮤테이션#

  • GitLab 15.5에서 발표
  • GitLab 16.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

VulnerabilityFindingDismiss GraphQL 뮤테이션은 지원 중단되며 GitLab 16.0에서 제거됩니다. 이 뮤테이션은 취약점 발견 ID가 사용자에게 제공되지 않았기 때문에 자주 사용되지 않았습니다(이 필드는 15.3에서 지원 중단되었습니다). 사용자는 대신 취약성 보고서에서 취약점을 해제하기 위해 VulnerabilityDismiss를 사용하거나 CI 파이프라인 보안 탭의 보안 발견에 대해 SecurityFindingDismiss를 사용해야 합니다.

GitLab 15.11#

openSUSE Leap 15.3 패키지#

  • GitLab 15.8에서 발표
  • GitLab 15.11에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

openSUSE Leap 15.3의 배포 지원 및 보안 업데이트는 2022년 12월에 종료되었습니다.

GitLab 15.7부터 openSUSE Leap 15.4용 패키지를 제공하기 시작했으며 15.11 마일스톤에서 openSUSE Leap 15.3용 패키지 제공을 중단합니다.

  • openSUSE Leap 15.3 패키지에서 제공된 15.4 패키지로 전환하세요.

GitLab 15.10#

OpenStack Swift 및 Rackspace API를 사용한 자동 백업 업로드#

  • GitLab 15.8에서 발표
  • GitLab 15.10에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

OpenStack Swift 및 Rackspace API를 사용하여 원격 스토리지에 백업 업로드 지원을 지원 중단합니다. 이러한 API에 대한 지원은 더 이상 적극적으로 유지 관리되지 않으며 Ruby 3에 대해 업데이트되지 않은 서드파티 라이브러리에 의존합니다. GitLab은 Ruby 2 EOL 이전에 보안 패치를 최신 상태로 유지하기 위해 Ruby 3로 전환하고 있습니다.

  • OpenStack을 사용 중인 경우 Swift 대신 S3 API를 사용하도록 설정을 변경해야 합니다.
  • Rackspace 스토리지를 사용 중인 경우 다른 공급자로 전환하거나 백업 태스크가 완료된 후 수동으로 백업 파일을 업로드해야 합니다.

GitLab 15.9#

Web IDE에서 Live Preview 더 이상 사용 불가#

  • GitLab 15.8에서 발표
  • GitLab 15.9에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Web IDE의 Live Preview 기능은 정적 웹 애플리케이션의 클라이언트 측 미리 보기를 제공하기 위한 것이었습니다. 그러나 복잡한 설정 단계와 지원되는 프로젝트 유형의 좁은 범위로 인해 유용성이 제한되었습니다. GitLab 15.7에서 Web IDE Beta를 도입하면서 이제 전체 서버 측 런타임 환경에 연결할 수 있습니다. Web IDE에서 확장 프로그램 설치에 대한 향후 지원으로 Live Preview에서 사용할 수 있는 것보다 더 고급 워크플로도 지원합니다. GitLab 15.9부터 Live Preview는 Web IDE에서 더 이상 사용할 수 없습니다.

omniauth-authentiq gem 더 이상 사용 불가#

  • GitLab 15.9에서 발표
  • GitLab 15.9에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

omniauth-authentiq는 GitLab의 일부인 OmniAuth 전략 gem이었습니다. 인증 서비스를 제공하는 회사인 Authentiq가 서비스를 종료했습니다. 따라서 이 gem이 제거됩니다.

GitLab 15.7#

.gitlab-ci.yml에서 파일 유형 변수 확장#

  • GitLab 15.5에서 발표
  • GitLab 15.7에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

이전에는 파일 변수를 참조하거나 별칭을 적용하는 변수가 File 유형 변수의 값, 예를 들어 파일 내용을 확장했습니다. 이 동작은 일반적인 셸 변수 확장 규칙을 준수하지 않았으므로 올바르지 않았습니다. File 유형 변수에 저장된 시크릿이나 민감한 정보를 유출하기 위해 사용자는 변수를 입력 매개변수로 사용하여 $echo 명령을 실행할 수 있었습니다.

이 호환성 변경은 이 문제를 수정하지만 동작을 우회하는 사용자 워크플로를 중단시킬 수 있습니다. 이 변경으로 파일 변수를 참조하거나 별칭 파일 변수를 적용하는 작업 변수 확장은 파일 내용과 같은 값 대신 File 유형 변수의 파일 이름 또는 경로로 확장됩니다.

Flowdock 통합#

  • GitLab 15.7에서 발표
  • GitLab 15.7에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

2022년 12월 22일부로 서비스가 2022년 8월 15일에 종료되었으므로 Flowdock 통합을 제거합니다.

GitLab 15.6#

Git 리포지터리 스토리지용 NFS#

  • GitLab 14.0에서 발표
  • GitLab 15.6에서 제거

Gitaly 클러스터의 GA(GitLab 13.0에서 도입)와 함께 GitLab 14.0에서 Git 리포지터리 스토리지용 NFS 개발(버그 수정, 성능 개선 등)을 지원 중단했습니다. 14.x 전반에 걸쳐 NFS for Git 리포지터리에 대한 기술 지원을 계속 제공하지만 2022년 11월 22일에 NFS에 대한 모든 지원을 제거합니다. 이것은 원래 2022년 5월 22일에 계획되었지만 Gitaly 클러스터의 지속적인 성숙을 허용하기 위해 지원 중단 날짜를 연장하기로 결정했습니다. 자세한 내용은 공식 지원 성명을 참조하세요.

Gitaly 클러스터는 고객에게 다음과 같은 엄청난 이점을 제공합니다:

현재 NFS for Git 리포지터리를 사용하는 고객은 Gitaly 클러스터로 마이그레이션에 대한 문서를 검토하여 마이그레이션 계획을 수립하는 것이 좋습니다.

GitLab 15.4#

번들 Grafana 지원 중단#

  • GitLab 15.3에서 발표
  • GitLab 15.4에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.4에서 번들 Grafana를 GitLab에서 유지 관리하는 Grafana 포크로 교체합니다.

Grafana에 대한 CVE가 식별되었으며 이 보안 취약점을 완화하기 위해 번들하던 이전 버전의 Grafana가 더 이상 장기 지원을 받지 않기 때문에 자체 포크로 전환해야 합니다.

이것은 이전 버전의 Grafana와 호환성 문제를 일으키지 않을 것으로 예상됩니다. 번들 버전을 사용하든 Grafana의 외부 인스턴스를 사용하든 마찬가지입니다.

SAST 분석기 통합 및 CI/CD 템플릿 변경#

  • GitLab 14.8에서 발표
  • GitLab 15.4에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST는 다양한 분석기를 사용하여 취약점에 대한 코드를 스캔합니다.

더 나은 일관된 사용자 경험을 제공하기 위한 장기적인 전략의 일환으로 GitLab SAST에서 사용되는 분석기 수를 줄이고 있습니다. 분석기 세트를 간소화하면 더 빠른 반복, 더 나은 결과, 더 높은 효율성(대부분의 경우 CI 러너 사용 감소 포함)이 가능합니다.

GitLab 15.4에서 GitLab SAST는 다음 분석기를 더 이상 사용하지 않습니다:

Note

이 변경은 원래 GitLab 15.0에 계획되었으며 GitLab 15.4로 연기되었습니다.

이러한 분석기는 GitLab 관리 SAST CI/CD 템플릿에서 제거되고 Semgrep 기반 분석기로 교체됩니다. 즉시 적용되어 보안 업데이트만 받게 됩니다. 다른 일상적인 개선이나 업데이트는 보장되지 않습니다. 이러한 분석기가 지원 종료에 도달한 후에는 더 이상 업데이트가 제공되지 않습니다. 이전에 이러한 분석기에 대해 게시된 컨테이너 이미지는 삭제하지 않습니다.

또한 SpotBugs 분석기의 범위에서 Java를 제거하고 Semgrep 기반 분석기로 교체합니다. 이 변경으로 Java 코드 스캔이 더 간단해집니다. 더 이상 컴파일이 필요하지 않습니다. 이 변경은 GitLab 관리 SAST CI/CD 템플릿의 자동 언어 감지 부분에 반영됩니다. SpotBugs 기반 분석기는 Groovy, Kotlin, Scala를 계속 지원합니다.

지원 중단된 분석기 중 하나에서 취약점 발견을 이미 해제한 경우 교체 분석기는 이전 해제를 존중하려고 시도합니다.

GitLab 15.3#

취약점 보고서 State별 정렬#

  • GitLab 15.0에서 발표
  • GitLab 15.3에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

State 열로 취약점 보고서를 정렬하는 기능은 기본 데이터 모델 리팩터링으로 인해 GitLab 14.10에서 비활성화되어 기능 플래그 뒤에 놓였습니다. 이 값으로 정렬이 성능을 유지하도록 하기 위해 추가 리팩터링이 필요하여 기능 플래그가 기본적으로 꺼져 있었습니다. State 열의 정렬 사용량이 매우 낮아 코드베이스를 단순화하고 원하지 않는 성능 저하를 방지하기 위해 기능 플래그를 제거합니다.

취약점 보고서 Tool별 정렬#

  • GitLab 15.1에서 발표
  • GitLab 15.3에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Tool 열(스캔 유형)로 취약점 보고서를 정렬하는 기능은 기본 데이터 모델 리팩터링으로 인해 GitLab 14.10에서 비활성화되어 기능 플래그 뒤에 놓였습니다. 이 값으로 정렬이 성능을 유지하도록 하기 위해 추가 리팩터링이 필요하여 기능 플래그가 기본적으로 꺼져 있었습니다. Tool 열의 정렬 사용량이 매우 낮아 코드베이스를 단순화하고 원하지 않는 성능 저하를 방지하기 위해 GitLab 15.3에서 기능 플래그를 제거합니다.

GitLab 15.1#

Debian 9 지원 중단#

  • GitLab 14.9에서 발표
  • GitLab 15.1에서 제거

Debian 9 Stretch의 장기 서비스 및 지원(LTSS)은 2022년 7월에 종료됩니다. 따라서 GitLab 패키지에 대한 Debian 9 배포판을 더 이상 지원하지 않습니다. 사용자는 Debian 10 또는 Debian 11로 업그레이드할 수 있습니다.

GitLab 15.0#

리포지터리 푸시 이벤트에 대한 감사 이벤트#

  • GitLab 14.3에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

리포지터리 이벤트에 대한 감사 이벤트는 이제 지원 중단되었으며 GitLab 15.0에서 제거됩니다.

이러한 이벤트는 항상 기본적으로 비활성화되어 있었으며 기능 플래그를 사용하여 수동으로 활성화해야 했습니다. 이를 활성화하면 너무 많은 이벤트가 생성될 수 있어 GitLab 인스턴스가 크게 느려질 수 있습니다. 이러한 이유로 제거됩니다.

오브젝트 스토리지를 위한 백그라운드 업로드#

  • GitLab 14.9에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

오브젝트 스토리지 기능의 전반적인 복잡성과 유지 관리 부담을 줄이기 위해 background_upload를 사용하여 파일을 업로드하는 지원이 지원 중단되었으며 GitLab 15.0에서 완전히 제거됩니다.

이는 소수의 오브젝트 스토리지 공급자에게 영향을 줍니다:

  • OpenStack OpenStack을 사용하는 고객은 Swift 대신 S3 API를 사용하도록 설정을 변경해야 합니다.
  • RackSpace RackSpace 기반 오브젝트 스토리지를 사용하는 고객은 데이터를 다른 공급자로 마이그레이션해야 합니다.

GitLab은 영향을 받는 고객이 마이그레이션하는 데 도움이 되는 추가 지침을 게시합니다.

CI/CD 작업 이름 길이 제한#

  • GitLab 14.6에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.0에서 CI/CD 작업 이름의 문자 수를 255자로 제한합니다. 작업 이름이 255자 제한을 초과하는 파이프라인은 15.0 릴리스 이후 작동을 중단합니다.

인스턴스(공유) 러너를 프로젝트(특정) 러너로 변경#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 15.0에서 더 이상 인스턴스(공유) 러너를 프로젝트(특정) 러너로 변경할 수 없습니다.

사용자가 실수로 인스턴스 러너를 프로젝트 러너로 변경하는 경우가 있으며 다시 변경할 수 없습니다. GitLab은 보안상의 이유로 프로젝트 러너를 공유 러너로 변경할 수 없습니다. 하나의 프로젝트를 위한 러너가 전체 인스턴스에 대한 작업을 실행하도록 설정될 수 있습니다.

여러 프로젝트에 러너를 추가해야 하는 관리자는 한 프로젝트에 대한 러너를 등록한 다음 Admin 보기로 이동하여 추가 프로젝트를 선택할 수 있습니다.

컨테이너 네트워크 및 호스트 보안#

GitLab 컨테이너 네트워크 보안 및 컨테이너 호스트 보안 카테고리와 관련된 모든 기능은 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다. 이 기능의 대체품이 필요한 사용자는 GitLab 외부에서 설치 및 관리할 수 있는 잠재적인 솔루션으로 다음 오픈 소스 프로젝트를 평가하는 것이 좋습니다: AppArmor, Cilium, Falco, FluentD, Pod Security Admission.

이러한 기술을 GitLab에 통합하려면 원하는 Helm 차트를 클러스터 관리 프로젝트 템플릿에 추가하세요. GitLab CI/CD를 통해 명령을 호출하여 프로덕션에서 이러한 Helm 차트를 배포하세요.

이 변경의 일부로 GitLab 내의 다음 특정 기능이 이제 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다:

  • Security & Compliance > Threat Monitoring 페이지
  • Security & Compliance > Policies 페이지에 있는 Network Policy 보안 정책 유형
  • GitLab을 통해 AppArmor, Cilium, Falco, FluentD, Pod Security Policies 기술 통합 관리 기능
  • 위 기능과 관련된 모든 API

14.0.0 미만의 컨테이너 스캐닝 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 컨테이너 스캐닝 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 스키마 버전에 대한 유효성 검사를 통과하지 못하는 보고서도 GitLab 15.0에서 더 이상 지원되지 않습니다.

파이프라인 작업 아티팩트로 컨테이너 스캐닝 보안 보고서를 출력하여 GitLab과 통합하는 서드파티 도구가 영향을 받습니다. 모든 출력 보고서가 14.0.0 이상의 최소 버전으로 올바른 스키마를 준수하는지 확인해야 합니다. 더 낮은 버전이거나 선언된 스키마 버전에 대한 유효성 검사에 실패하는 보고서는 처리되지 않으며 취약점 발견이 MR, 파이프라인 또는 취약점 보고서에 표시되지 않습니다.

14.0.0 미만의 커버리지 가이드 퍼징 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 미만의 커버리지 가이드 퍼징 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 스키마 버전에 대한 유효성 검사를 통과하지 못하는 보고서도 GitLab 15.0에서 더 이상 지원되지 않습니다.

14.0.0 미만의 DAST 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 DAST 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 스키마 버전에 대한 유효성 검사를 통과하지 못하는 보고서도 GitLab 15.0부터 더 이상 지원되지 않습니다.

의존성 스캐닝 Python 3.9 및 3.6 이미지 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Python 프로젝트에 의존성 스캐닝을 사용하는 경우 Python 3.6을 사용하는 기본 gemnasium-python:2 이미지와 Python 3.9를 사용하는 사용자 정의 gemnasium-python:2-python-3.9 이미지를 지원 중단합니다. GitLab 15.0부터 새 기본 이미지는 지원되는 버전인 Python 3.9가 되며 3.6은 더 이상 지원되지 않습니다.

의존성 스캐닝 기본 Java 버전이 17로 변경#

GitLab 15.0에서 의존성 스캐닝의 경우 스캐너가 예상하는 Java의 기본 버전이 11에서 17로 업데이트됩니다. Java 17은 최신 장기 지원(LTS) 버전입니다. 의존성 스캐닝은 동일한 버전 범위(8, 11, 13, 14, 15, 16, 17)를 계속 지원하며 기본 버전만 변경됩니다. 프로젝트가 이전 기본값인 Java 11을 사용하는 경우 DS_Java_Version 변수를 일치하도록 설정해야 합니다.

14.0.0 미만의 의존성 스캐닝 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 의존성 스캐닝 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다.

Geo Admin UI 라우트 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 13.0에서 Geo Admin UI에 새 프로젝트 및 디자인 복제 세부 정보 라우트를 도입했습니다. 이 라우트는 /admin/geo/replication/projects/admin/geo/replication/designs입니다. 레거시 라우트를 유지하고 새 라우트로 리디렉션했습니다. GitLab 15.0에서 레거시 라우트 /admin/geo/projects/admin/geo/designs에 대한 지원을 제거합니다. 레거시 라우트를 사용하는 북마크나 스크립트를 업데이트하세요.

사용자 정의 Geo:db:* Rake 태스크 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.8에서 Geo 추적 데이터베이스가 Rails 6의 다중 데이터베이스 지원을 사용하도록 전환한 후 가능해진 내장 태스크로 geo:db:* Rake 태스크를 교체합니다. 다음 geo:db:* 태스크는 해당 db:*:geo 태스크로 교체됩니다:

  • geo:db:drop -> db:drop:geo
  • geo:db:create -> db:create:geo
  • geo:db:setup -> db:setup:geo
  • geo:db:migrate -> db:migrate:geo
  • geo:db:rollback -> db:rollback:geo
  • geo:db:version -> db:version:geo
  • geo:db:reset -> db:reset:geo
  • geo:db:seed -> db:seed:geo
  • geo:schema:load:geo -> db:schema:load:geo
  • geo:db:schema:dump -> db:schema:dump:geo
  • geo:db:migrate:up -> db:migrate:up:geo
  • geo:db:migrate:down -> db:migrate:down:geo
  • geo:db:migrate:redo -> db:migrate:redo:geo
  • geo:db:migrate:status -> db:migrate:status:geo
  • geo:db:test:prepare -> db:test:prepare:geo
  • geo:db:test:load -> db:test:load:geo
  • geo:db:test:purge -> db:test:purge:geo

기능 플래그 PUSH_RULES_SUPERSEDE_CODE_OWNERS 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

PUSH_RULES_SUPERSEDE_CODE_OWNERS 기능 플래그는 GitLab 15.0에서 제거됩니다. 제거되면 푸시 규칙이 Code Owners보다 우선합니다. Code Owner 승인이 필요하더라도 특정 사용자가 코드를 푸시할 수 있도록 명시적으로 허용하는 푸시 규칙이 Code Owners 설정보다 우선합니다.

Elasticsearch 6.8#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Elasticsearch 6.8은 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다. Elasticsearch 6.8을 사용하는 고객은 GitLab 15.0으로 업그레이드하기 전에 Elasticsearch 버전을 7.x로 업그레이드해야 합니다. 모든 Elasticsearch 개선 사항의 혜택을 받으려면 최신 버전의 Elasticsearch 7을 사용하는 것이 좋습니다.

Elasticsearch 6.8은 GitLab 15.0에서 지원 계획인 Amazon OpenSearch와도 호환되지 않습니다.

보안 보고서 스키마 강제 유효성 검사#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

14.0.0 이하의 보안 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 스키마 버전에 대한 유효성 검사를 통과하지 못하는 보고서도 GitLab 15.0에서 더 이상 지원되지 않습니다.

외부 상태 확인 API 호환성 변경#

외부 상태 확인 API는 원래 상태 확인을 통과로 표시하기 위한 기본 통과 요청을 지원하도록 구현되었습니다. 기본 통과 요청은 이제 지원 중단됩니다. 특히 다음이 지원 중단됩니다:

  • status 필드를 포함하지 않는 요청
  • status 필드가 approved로 설정된 요청

GitLab 15.0부터 상태 확인은 status 필드가 존재하고 passed로 설정된 경우에만 통과 상태로 업데이트됩니다.

GitLab Pages 데몬 모드 실행#

  • GitLab 14.9에서 발표
  • GitLab 15.0에서 제거

15.0에서 GitLab Pages의 데몬 모드 지원이 제거됩니다.

GitLab Serverless#

  • GitLab 14.3에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab Serverless는 자동 배포 및 모니터링으로 Knative 기반 서버리스 개발을 지원하는 기능 세트입니다.

GitLab Serverless 기능을 제거하기로 결정했습니다. 이 기능이 사용자들에게 실제로 공감을 얻지 못했기 때문입니다. 또한 Kubernetes 및 Knative의 지속적인 개발로 현재 구현이 최신 버전에서도 작동하지 않습니다.

라이선스 컴플라이언스에서 Godep 지원#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Go용 Godep 의존성 관리자는 2020년에 Go에서 지원 중단되었으며 Go 모듈로 대체되었습니다. 유지 관리 비용을 줄이기 위해 14.7부터 Godep 프로젝트에 대한 라이선스 컴플라이언스를 지원 중단하고 GitLab 15.0에서 제거합니다.

GraphQL ID 및 GlobalID 호환성#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

하위 호환성을 위해 추가한 GraphQL 프로세서에 대한 비표준 확장을 제거합니다. 이 확장은 GraphQL 쿼리의 유효성 검사를 수정하여 일반적으로 거부될 인수에 ID 유형 사용을 허용합니다.

GraphQL 패키지 설정 권한 변경#

GitLab 패키지 스테이지는 모든 의존성을 관리하는 데 도움이 되는 패키지 레지스트리, 컨테이너 레지스트리, 의존성 프록시를 제공합니다. 이러한 각 제품 카테고리에는 API를 사용하여 조정할 수 있는 다양한 설정이 있습니다.

GraphQL의 권한 모델이 업데이트되고 있습니다. 15.0 이후 Guest, Reporter, Developer 역할을 가진 사용자는 더 이상 이러한 설정을 업데이트할 수 없습니다:

GitLab Runner SSH 실행기에 필요한 알려진 호스트#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.3에서 GitLab Runner config.toml 파일에 설정 설정을 추가했습니다. 이 설정인 [runners.ssh.disable_strict_host_key_checking]은 SSH 실행기에서 엄격한 호스트 키 확인을 사용할지 여부를 제어합니다.

GitLab 15.0 이상에서 이 설정 옵션의 기본값이 true에서 false로 변경됩니다. 이는 GitLab Runner SSH 실행기를 사용할 때 엄격한 호스트 키 확인이 강제됨을 의미합니다.

라이선스 컴플라이언스 API의 레거시 승인 상태 이름#

  • GitLab 14.6에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

managed_licenses API에서 라이선스 정책의 승인 상태에 대한 레거시 이름(blacklisted, approved)을 지원 중단했지만 여전히 API 쿼리와 응답에 사용됩니다. 이것들은 15.0에서 제거됩니다.

라이선스 컴플라이언스 API를 사용 중인 경우 approvedblacklisted 쿼리 매개변수 사용을 중단해야 합니다. 이제 alloweddenied입니다. 15.0에서 응답도 approvedblacklisted 사용을 중단하므로 15.0 릴리스에서 중단되지 않도록 사용자 정의 도구를 조정해야 합니다.

레거시 데이터베이스 설정#

  • GitLab 14.3에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

database.yml에 있는 GitLab 데이터베이스 설정의 구문이 변경되고 레거시 형식이 지원 중단됩니다. 레거시 형식은 단일 PostgreSQL 어댑터 사용을 지원했지만 새 형식은 여러 데이터베이스를 지원하도록 변경됩니다. main: 데이터베이스는 첫 번째 설정 항목으로 정의해야 합니다.

이 지원 중단은 주로 Omnibus가 이 설정을 자동으로 처리하기 때문에 GitLab을 소스에서 컴파일하는 사용자에게 영향을 줍니다.

GitLab의 로깅#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab의 로깅 기능을 통해 사용자는 애플리케이션 로그를 집계하고 관리하기 위해 ELK 스택(Elasticsearch, Logstash, Kibana)을 설치할 수 있습니다. 사용자는 GitLab에서 관련 로그를 검색할 수 있습니다. 그러나 Kubernetes 클러스터 및 GitLab 관리 앱과의 인증서 기반 통합을 지원 중단한 이후 GitLab 내 로깅에 대한 권장 솔루션이 없습니다.

GitLab Shell에서 Gitaly로 custom_hooks_dir 설정 이동#

  • GitLab 14.9에서 발표
  • GitLab 15.0에서 제거

custom_hooks_dir 설정은 이제 Gitaly에서 구성되며 GitLab 15.0에서 GitLab Shell에서 제거됩니다.

OAuth 암묵적 부여#

OAuth 암묵적 부여 인증 흐름은 다음 주요 릴리스인 GitLab 15.0에서 제거됩니다. OAuth 암묵적 부여를 사용하는 모든 애플리케이션은 대안적인 지원 OAuth 흐름으로 전환해야 합니다.

만료 없는 OAuth 토큰#

기본적으로 모든 새 애플리케이션은 2시간 후에 액세스 토큰을 만료시킵니다. GitLab 14.2 이하에서 OAuth 액세스 토큰에는 만료가 없었습니다. GitLab 15.0에서 이미 만료가 없는 기존 토큰에 만료가 자동으로 생성됩니다.

GitLab 15.0이 릴리스되기 전에 만료 토큰을 옵트인해야 합니다:

  1. 애플리케이션을 편집합니다.
  2. Expire access tokens를 선택하여 활성화합니다. 토큰은 취소되거나 만료되지 않습니다.

OmniAuth Kerberos gem#

  • GitLab 14.3에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

omniauth-kerberos gem은 다음 주요 릴리스인 GitLab 15.0에서 제거됩니다.

이 gem은 유지 관리되지 않았으며 사용량이 매우 적습니다. 따라서 이 인증 방법에 대한 지원을 제거하고 대신 Kerberos SPNEGO 통합을 사용하는 것을 권장합니다. 업그레이드 지침을 따라 omniauth-kerberos 통합에서 지원되는 통합으로 업그레이드할 수 있습니다.

Kerberos SPNEGO 통합이 아닌 이전 비밀번호 기반 Kerberos 통합만 지원 중단합니다.

PAT 만료의 선택적 적용#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

PAT 만료 적용을 비활성화하는 기능은 보안 관점에서 특이합니다. 이 특이한 기능이 사용자에게 예기치 않은 동작을 일으킬 수 있다는 우려가 있습니다. 보안 기능에서 예기치 않은 동작은 본질적으로 위험하므로 이 기능을 제거하기로 결정했습니다.

SSH 만료의 선택적 적용#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

SSH 만료 적용을 비활성화하는 기능은 보안 관점에서 특이합니다. 이 특이한 기능이 사용자에게 예기치 않은 동작을 일으킬 수 있다는 우려가 있습니다. 보안 기능에서 예기치 않은 동작은 본질적으로 위험하므로 이 기능을 제거하기로 결정했습니다.

Java 8에 대한 기본 SAST 지원#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST SpotBugs 분석기는 보안 취약점에 대해 Java, Scala, Groovy, Kotlin 코드를 스캔합니다. 기술적인 이유로 분석기는 스캔하기 전에 먼저 코드를 컴파일해야 합니다.

GitLab 15.0 이전 버전에서 분석기 이미지에는 컴파일을 용이하게 하기 위한 Java 8 및 Java 11 런타임이 포함되어 있습니다.

GitLab 15.0에서:

  • 이미지 크기를 줄이기 위해 분석기 이미지에서 Java 8을 제거합니다.
  • Java 17로 컴파일을 더 쉽게 하기 위해 분석기 이미지에 Java 17을 추가합니다.

Advanced Search 마이그레이션의 오래된 인덱스#

  • GitLab 14.10에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Advanced Search 마이그레이션은 일반적으로 여러 코드 경로를 오랫동안 지원해야 하므로 안전하게 정리할 수 있을 때 이를 정리하는 것이 중요합니다. GitLab 주요 버전 업그레이드를 완전히 마이그레이션되지 않은 인덱스에 대한 하위 호환성을 제거하기에 안전한 시점으로 사용합니다.

Pseudonymizer#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Pseudonymizer 기능은 일반적으로 사용되지 않으며 대형 데이터베이스에서 프로덕션 문제를 일으킬 수 있고 오브젝트 스토리지 개발을 방해할 수 있습니다. 이제 지원 중단으로 간주되며 GitLab 15.0에서 제거됩니다.

instanceStatisticsMeasurements GraphQL 노드를 통한 사용 추세 쿼리#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

instanceStatisticsMeasurements GraphQL 노드는 13.10에서 usageTrendsMeasurements로 이름이 변경되었으며 이전 필드 이름은 지원 중단으로 표시되었습니다. 기존 GraphQL 쿼리를 수정하려면 instanceStatisticsMeasurementsusageTrendsMeasurements로 교체하세요.

요청 프로파일링#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

요청 프로파일링은 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다.

Premium 티어의 필수 파이프라인 설정#

필수 파이프라인 설정 기능은 Premium 고객을 위해 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다. 이 기능은 GitLab Ultimate 고객에게는 지원 중단되지 않습니다.

retire-js 의존성 스캐닝 도구#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

14.8부터 retire.js 작업이 의존성 스캐닝에서 지원 중단됩니다. 지원 중단 중에는 CI/CD 템플릿에 계속 포함됩니다. GitLab 15.0에서 2022년 5월 22일에 의존성 스캐닝에서 retire.js를 제거합니다. JavaScript 스캔 기능은 Gemnasium이 계속 지원하므로 영향을 받지 않습니다.

14.0.0 미만의 SAST 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 SAST 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다.

SAST .NET 2.1 지원#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab SAST Security Code Scan 분석기는 .NET 코드를 스캔하여 보안 취약점을 찾습니다. 기술적인 이유로 분석기는 먼저 스캔하기 위해 코드를 빌드해야 합니다.

GitLab 15.0에서 이 분석기의 기본 주요 버전을 버전 2에서 버전 3으로 변경합니다. 이 변경:

  • .NET 2.1 지원 제거
  • .NET 6.0, Visual Studio 2019, Visual Studio 2022에 대한 지원 추가

시크릿 감지 설정 변수 지원 중단#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 시크릿 감지 커스터마이징을 더 간단하고 신뢰할 수 있게 하기 위해 CI/CD 설정에서 이전에 설정할 수 있었던 일부 변수를 지원 중단합니다.

다음 변수는 현재 기록 스캐닝 옵션을 사용자 정의하는 데 사용할 수 있지만 GitLab 관리 CI/CD 템플릿과 잘 작동하지 않아 이제 지원 중단됩니다:

  • SECRET_DETECTION_COMMIT_FROM
  • SECRET_DETECTION_COMMIT_TO
  • SECRET_DETECTION_COMMITS
  • SECRET_DETECTION_COMMITS_FILE

SECRET_DETECTION_ENTROPY_LEVEL은 이전에 코드베이스의 문자열 엔트로피 수준만 고려하는 규칙을 구성할 수 있게 했으며 이제 지원 중단됩니다. 이 유형의 엔트로피 전용 규칙은 허용할 수 없는 수의 잘못된 결과(거짓 양성)를 생성했으며 더 이상 지원되지 않습니다.

14.0.0 미만의 시크릿 감지 스키마#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거

14.0.0 이하의 시크릿 감지 보고서 스키마 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다.

새 위치에 게시된 Secure 및 Protect 분석기 이미지#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.8부터 새 버전의 GitLab Secure 및 Protect 분석기는 registry.gitlab.com/security-products 아래의 새 레지스트리 위치에 게시됩니다.

Secure 및 Protect 분석기 주요 버전 업데이트#

  • GitLab 14.8에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Secure 및 Protect 스테이지는 GitLab 15.0 릴리스와 함께 분석기의 주요 버전을 올립니다. 다음 버전은 지원 중단되며 15.0 GitLab 릴리스 이후 더 이상 업데이트되지 않습니다:

  • API 보안: 버전 1
  • 컨테이너 스캐닝: 버전 4
  • 커버리지 가이드 퍼즈 테스팅: 버전 2
  • 의존성 스캐닝: 버전 2
  • 동적 애플리케이션 보안 테스팅(DAST): 버전 2
  • Infrastructure as Code(IaC) 스캐닝: 버전 1
  • 라이선스 스캐닝: 버전 3
  • 시크릿 감지: 버전 3
  • 정적 애플리케이션 보안 테스팅(SAST): 모든 분석기 버전 2 (단, 현재 버전 3인 gosec 제외)

Sidekiq 메트릭 및 헬스 체크 설정#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

단일 프로세스 및 포트를 사용하여 Sidekiq 메트릭 및 헬스 체크를 내보내는 것은 지원 중단됩니다. 지원은 15.0에서 제거됩니다.

정적 사이트 편집기#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

정적 사이트 편집기는 GitLab 15.0부터 더 이상 사용할 수 없습니다. GitLab 전반의 Markdown 편집 경험 개선으로 더 넓은 범위에서 유사한 이점을 제공합니다. 정적 사이트 편집기에 대한 수신 요청은 Web IDE로 리디렉션됩니다.

SLES 12 SP2 지원#

SUSE Linux Enterprise Server(SLES) 12 SP2의 장기 서비스 및 지원(LTSS)은 2021년 3월 31일에 종료되었습니다.

Gitaly와 나머지 GitLab 사이에 배포된 gRPC 인식 프록시 지원#

Gitaly Cluster는 GitLab 13.12에서 gRPC 인식 프록시와 호환되지 않게 되었습니다. 이제 Gitaly Cluster 없이도 모든 GitLab 설치가 gRPC 인식 프록시와 호환되지 않습니다.

테스트 커버리지 프로젝트 CI/CD 설정#

테스트 커버리지 패턴 설정을 단순화하기 위해 GitLab 15.0에서 테스트 커버리지 파싱을 위한 프로젝트 설정이 제거됩니다.

대신 프로젝트의 .gitlab-ci.yml을 사용하여 coverage 키워드로 정규식을 제공하여 머지 리퀘스트에서 테스트 커버리지 결과를 설정하세요.

GitLab의 트레이싱#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab의 트레이싱은 오픈 소스 엔드 투 엔드 분산 트레이싱 시스템인 Jaeger와의 통합입니다. GitLab 사용자는 Jaeger 인스턴스로 이동하여 특정 요청을 처리하는 각 함수 또는 마이크로 서비스를 추적하며 배포된 애플리케이션의 성능에 대한 인사이트를 얻을 수 있습니다. GitLab의 트레이싱은 GitLab 14.7에서 지원 중단되었으며 15.0에서 제거될 예정입니다.

컨테이너 레지스트리 그룹 수준 API 업데이트#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

마일스톤 15.0에서 그룹에서 레지스트리 리포지터리를 가져오는 컨테이너 레지스트리 API에서 tagstags_count 매개변수에 대한 지원이 제거됩니다.

Value Stream Analytics 필터링 계산 변경#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

Value Stream Analytics의 날짜 필터 작동 방식을 변경하고 있습니다. 이슈 또는 머지 리퀘스트가 생성된 시간으로 필터링하는 대신 날짜 필터는 해당 단계의 종료 이벤트 시간으로 필터링됩니다. 이 변경으로 인해 이 변경이 적용된 후 완전히 다른 수치가 나올 것입니다.

취약점 확인#

취약점 확인 기능은 GitLab 14.8에서 지원 중단되었으며 GitLab 15.0에서 제거될 예정입니다. 대신 새 보안 승인 기능으로 마이그레이션하는 것을 권장합니다. Security & Compliance > Policies로 이동하고 새 스캔 결과 정책을 생성하여 마이그레이션할 수 있습니다.

기본 PackageTypeVersions#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

패키지 레지스트리 GraphQL API 생성 작업의 일환으로 Package 그룹은 기본 PackageType 유형의 Version 유형을 지원 중단하고 PackageDetailsType으로 이동했습니다.

마일스톤 15.0에서 PackageType에서 Version을 완전히 제거합니다.

apiFuzzingCiConfigurationCreate GraphQL 뮤테이션#

  • GitLab 14.6에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

API 퍼징 설정 스니펫이 이제 클라이언트 측에서 생성되며 더 이상 API 요청이 필요하지 않습니다. 따라서 GitLab에서 더 이상 사용되지 않는 apiFuzzingCiConfigurationCreate 뮤테이션을 지원 중단합니다.

artifacts:reports:cobertura 키워드#

  • GitLab 14.7에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

현재 GitLab의 테스트 커버리지 시각화는 Cobertura 보고서만 지원합니다. 15.0부터 artifacts:reports:cobertura 키워드는 artifacts:reports:coverage_report로 교체됩니다. Cobertura는 15.0에서 유일하게 지원되는 보고서 파일이 되지만 이것은 GitLab이 다른 보고서 유형을 지원하는 첫 번째 단계입니다.

defaultMergeCommitMessageWithDescription GraphQL API 필드#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GraphQL API 필드 defaultMergeCommitMessageWithDescription은 지원 중단되었으며 GitLab 15.0에서 제거됩니다.

dependency_proxy_for_private_groups 기능 플래그#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

마일스톤 15.0에서 기능 플래그를 완전히 제거합니다. 앞으로는 의존성 프록시를 사용할 때 인증해야 합니다.

컨테이너 레지스트리의 htpasswd 인증#

컨테이너 레지스트리는 htpasswd인증을 지원합니다. GitLab 컨텍스트에서 사용되지 않으므로 htpasswd 인증은 GitLab 14.9에서 지원 중단되고 GitLab 15.0에서 제거됩니다.

version 필드에서 pipelines 필드#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

가능한 성능 문제를 완화하기 위해 마일스톤 15.0에서 versions 필드의 pipelines 필드를 제거합니다.

PipelineSecurityReportFinding GraphQL의 projectFingerprint#

PipelineSecurityReportFinding GraphQL 오브젝트의 projectFingerprint 필드가 지원 중단됩니다. 이 필드에는 고유성을 결정하는 데 사용되는 보안 발견의 "지문"이 포함됩니다. 지문 계산 방법이 변경되어 다른 값이 나옵니다. 앞으로 새 값은 UUID 필드에 노출됩니다.

gitlab-ctlpromote-db 명령#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.5에서 페일오버 중에 모든 Geo 보조 노드를 주 노드로 승격하는 gitlab-ctl promote 명령을 도입했습니다. 이 명령은 멀티 노드 Geo 보조 사이트에서 데이터베이스 노드를 승격하는 데 사용되는 gitlab-ctl promote-db를 대체합니다. gitlab-ctl promote-db는 GitLab 15.0까지 그대로 작동하고 사용할 수 있습니다. Geo 고객은 스테이징 환경에서 새 gitlab-ctl promote 명령을 테스트하고 페일오버 절차에 새 명령을 통합하는 것을 권장합니다.

gitlab-ctlpromote-to-primary-node 명령#

  • GitLab 14.5에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.5에서 페일오버 중에 모든 Geo 보조 노드를 주 노드로 승격하는 gitlab-ctl promote 명령을 도입했습니다. 이 명령은 단일 노드 Geo 사이트에서만 사용 가능했던 gitlab-ctl promote-to-primary-node를 대체합니다. gitlab-ctl promote-to-primary-node는 GitLab 15.0까지 그대로 작동하고 사용할 수 있습니다.

CI/CD 설정의 typetypes 키워드#

typetypes CI/CD 키워드는 GitLab 15.0에서 제거됩니다. 이 키워드를 사용하는 파이프라인은 작동을 중단하므로 동일한 동작을 가진 stagestages로 전환해야 합니다.

bundler-audit 의존성 스캐닝 도구#

  • GitLab 14.6에서 발표
  • GitLab 15.0에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

14.6부터 bundler-audit가 의존성 스캐닝에서 지원 중단됩니다. 지원 중단 중에는 CI/CD 템플릿에 계속 포함됩니다. GitLab 15.0에서 2022년 5월 22일에 의존성 스캐닝에서 bundler-audit를 제거합니다. 이 제거 후 Gemnasium이 계속 지원하므로 Ruby 스캔 기능은 영향을 받지 않습니다.

GitLab 14.10#

Composer 의존성 다운로드 권한 변경#

GitLab Composer 리포지터리를 사용하여 PHP 의존성을 푸시, 검색, 메타데이터 가져오기 및 다운로드할 수 있습니다. 이러한 모든 작업은 의존성 다운로드를 제외하고 인증이 필요합니다.

인증 없이 Composer 의존성을 다운로드하는 것은 GitLab 14.9에서 지원 중단되었으며 GitLab 15.0에서 제거됩니다. GitLab 15.0부터 Composer 의존성을 다운로드하려면 인증해야 합니다.

GitLab 14.9#

설정 가능한 Gitaly per_repository 선출 전략#

  • GitLab 14.8에서 발표
  • GitLab 14.9에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

per_repository Gitaly 선출 전략을 구성하는 것은 지원 중단되었습니다. per_repository는 GitLab 14.0부터 유일한 옵션이었습니다.

이 변경은 코드베이스를 깨끗하게 유지하기 위한 일상적인 유지 관리의 일부입니다.

통합 오류 추적 기본 비활성화#

  • GitLab 14.9에서 발표
  • GitLab 14.9에서 제거 (호환성 변경)
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

GitLab 14.4에서 GitLab은 Sentry를 대체하는 통합 오류 추적 백엔드를 출시했습니다. 이 기능은 데이터베이스 성능 문제를 일으켰습니다. GitLab 14.9에서 통합 오류 추적이 GitLab.com에서 제거되고 GitLab Self-Managed에서 기본적으로 꺼집니다.

GitLab 14.8#

openSUSE Leap 15.2 패키지#

  • GitLab 14.5에서 발표
  • GitLab 14.8에서 제거
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.

openSUSE Leap 15.2의 배포 지원 및 보안 업데이트는 2021년 12월에 종료됩니다.

14.5부터 openSUSE Leap 15.3용 패키지를 제공하기 시작했으며 14.8 마일스톤에서 openSUSE Leap 15.2용 패키지 제공을 중단합니다.

GitLab 14.6#

일반 패키지로 배포되는 Release CLI#

  • GitLab 14.2에서 발표
  • GitLab 14.6에서 제거

release-cli는 GitLab 14.2부터 일반 패키지로 릴리스됩니다. GitLab 14.5까지 S3에 바이너리로 계속 배포하고 GitLab 14.6에서 S3에서 배포를 중단합니다.

GitLab 14.5#

Task Runner 파드 이름을 Toolbox로 변경#

  • GitLab 14.2에서 발표
  • GitLab 14.5에서 제거

Task Runner 파드는 GitLab 애플리케이션 내에서 주기적인 하우스키핑 태스크를 실행하는 데 사용되며 GitLab Runner와 혼동되는 경우가 많습니다. 따라서 Task Runner의 이름이 Toolbox로 변경됩니다.

이로 인해 서브 차트의 이름이 gitlab/task-runner에서 gitlab/toolbox로 변경됩니다. 결과 파드는 {{ .Release.Name }}-toolbox와 같은 이름이 되며 종종 gitlab-toolbox가 됩니다. app=toolbox 레이블로 찾을 수 있습니다.

보류 중인 변경 사항#

다음 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

CodeClimate 기반 코드 품질 스캔 제거 예정#

  • GitLab 17.3에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab 19.0에서 CodeClimate 기반 코드 품질 스캔을 제거할 예정입니다. 이 변경 사항은 이전에 GitLab 18.0으로 예정되어 있었으나 지금은 지연되었습니다.

대신 CI/CD 파이프라인에서 품질 도구를 직접 사용하고 도구의 리포트를 아티팩트로 제공해야 합니다. 이미 많은 도구를 직접 통합하는 방법을 문서화했으며, 문서를 따라 통합할 수 있습니다.

이 변경 사항은 다음과 같이 구현될 예정입니다:

  1. Code-Quality.gitlab-ci.yml CI/CD 템플릿을 변경하여 스캔이 더 이상 실행되지 않도록 합니다. 현재 이 템플릿은 CodeClimate 기반 스캔을 실행합니다. (19.0 이후에도 템플릿을 include하는 파이프라인에 미치는 영향을 줄이기 위해 템플릿을 삭제하는 것보다 변경하는 방식을 선택했습니다.)
  2. Auto DevOps의 일부로 CodeClimate 기반 스캔 실행을 중단합니다.

즉시 적용되어, CodeClimate 기반 스캔은 제한된 업데이트만 받게 됩니다. GitLab 19.0에서 지원 종료 후에는 추가 업데이트를 제공하지 않습니다. 단, 이전에 게시된 컨테이너 이미지를 삭제하거나 사용자 정의 CI/CD 파이프라인 잡 정의를 사용하여 실행하는 기능을 제거하지는 않습니다.

자세한 내용은 코드 품질 위반 스캔을 참조하세요.

Container Registry 레거시 메타데이터 스토리지#

  • GitLab 18.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab 컨테이너 레지스트리의 레거시 메타데이터 스토리지 방식은 컨테이너 레지스트리 메타데이터 데이터베이스를 위해 지원 중단됩니다.

GitLab.com은 이미 메타데이터 데이터베이스를 사용하고 있습니다. 이 지원 중단은 현재 스토리지 백엔드(오브젝트 스토리지 또는 로컬 파일 시스템)에 메타데이터 정보를 직접 저장하는 레거시 컨테이너 레지스트리를 사용하는 GitLab Self-Managed 인스턴스에 영향을 미칩니다.

레거시 메타데이터 스토리지 방식은 유지 관리 모드에서 계속 지원되지만, 새로운 기능이나 개선 사항은 제공되지 않습니다. 가능한 한 빨리 컨테이너 레지스트리 메타데이터 데이터베이스로 마이그레이션하는 것을 강력히 권장합니다.

이 변경 사항은 컨테이너 레지스트리가 이미지 및 태그에 대한 메타데이터를 저장하는 방식에만 영향을 미칩니다. 스토리지 백엔드 선택(오브젝트 스토리지 또는 파일 시스템)은 동일하게 유지됩니다. 메타데이터 데이터베이스와 함께 오브젝트 스토리지 또는 파일 시스템 스토리지를 계속 사용할 수 있습니다.

레거시 메타데이터 스토리지에서 메타데이터 데이터베이스로 마이그레이션하려면 컨테이너 레지스트리 메타데이터 데이터베이스 마이그레이션 가이드를 따르세요. 마이그레이션 프로세스에는 메타데이터 데이터베이스 기능을 활성화하고 가져오기 도구를 실행하여 기존 레지스트리 데이터를 전송하는 과정이 포함됩니다.

메타데이터 데이터베이스는 더 나은 성능, 안정성을 제공하며 레거시 메타데이터 스토리지 방식으로는 사용할 수 없는 새로운 컨테이너 레지스트리 기능을 활성화합니다.

커버리지 기반 퍼즈 테스팅 지원 중단#

  • GitLab 18.0에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

커버리지 기반 퍼즈 테스팅은 지원 중단되며 GitLab 18.0부터 지원되지 않습니다. 이 기능은 GitLab 19.0에서 완전히 제거됩니다.

커버리지 기반 퍼즈 테스팅은 여러 오픈 소스 퍼저를 GitLab에 통합했습니다. 영향을 받는 경우 오픈 소스 퍼저를 독립 실행형 애플리케이션으로 통합하거나 GitLab Advanced SAST와 같은 다른 보안 기능으로 마이그레이션할 수 있습니다.

JavaScript 벤더 라이브러리에 대한 의존성 스캔#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

의존성 스캔을 위한 Gemnasium 분석기가 제공하는 JavaScript 벤더 라이브러리에 대한 의존성 스캔 기능은 GitLab 17.9에서 지원 중단됩니다.

Gemnasium 분석기를 사용할 때는 이 기능이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 사용할 수 없습니다. 자세한 내용은 마이그레이션 가이드를 참조하세요.

벤더 라이브러리에 대한 의존성 스캔으로 대체 기능이 개발될 예정이지만 제공 일정은 설정되지 않았습니다.

의존성 스캔의 GitLab SBOM 취약점 스캐너 업그레이드#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

의존성 스캔 기능이 GitLab SBOM 취약점 스캐너로 업그레이드됩니다. 이 변경의 일환으로 이전에 CI/CD 파이프라인에서 사용되던 Gemnasium 분석기는 GitLab 17.9에서 지원 중단됩니다.

이는 SBOM을 사용한 의존성 스캔 기능과 새 의존성 스캔 분석기로 대체됩니다. 새 분석기는 의존성과 그 관계(의존성 그래프)를 탐지하는 데 중점을 두며, 지속적 취약점 스캔에서 이미 사용 중인 GitLab의 내장 SBOM 취약점 스캐너를 활용하여 취약점을 식별합니다.

GitLab 18.5 기준으로 이 새 기능은 제한 가용 상태입니다. 대부분의 사용자가 새 의존성 스캔 기능으로 마이그레이션할 때까지 GitLab은 Gemnasium 분석기를 계속 지원합니다. 그 이후에야 Gemnasium 분석기가 지원 종료에 도달합니다.

이 업그레이드로 인한 상당한 변경 사항 및 기능 제거로 인해 자동으로 구현되지 않습니다. Gemnasium 분석기를 사용하는 기존 CI/CD 잡은 CI/CD 구성의 중단을 방지하기 위해 기본적으로 계속 작동합니다.

아래 자세한 변경 사항을 검토하고 전환을 돕기 위해 마이그레이션 가이드를 참조하세요.

  • CI/CD 구성의 중단을 방지하기 위해, 애플리케이션이 안정적인 의존성 스캔 CI/CD 템플릿(Dependency-Scanning.gitlab-ci.yml)을 사용하는 경우 의존성 스캔은 Gemnasium 분석기 기반의 기존 CI/CD 잡만 사용합니다.
  • 애플리케이션이 최신 의존성 스캔 CI/CD 템플릿(Dependency-Scanning.latest.gitlab-ci.yml)을 사용하는 경우 의존성 스캔은 Gemnasium 분석기 기반의 기존 CI/CD 잡을 사용하며, 지원되는 파일 유형에도 새 의존성 스캔 분석기가 실행됩니다. 모든 프로젝트에 새 의존성 스캔 분석기를 강제 적용하도록 옵트인할 수도 있습니다.
  • 기능이 성숙해짐에 따라 다른 마이그레이션 경로가 고려될 수 있습니다.
  • Gemnasium 분석기 프로젝트와 해당 컨테이너 이미지(모든 태그 및 변형): gemnasium, gemnasium-maven, gemnasium-python이 지원 중단됩니다. 이러한 이미지는 GitLab 컨테이너 레지스트리에서 제거되지 않습니다.
  • Gemnasium 분석기와 관련된 다음 CI/CD 변수들도 지원 중단됩니다. Gemnasium 분석기를 사용할 때는 이 변수들이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 적용되지 않습니다. 변수가 다른 컨텍스트에서도 사용되는 경우, 지원 중단은 의존성 스캔 기능에만 적용됩니다(예: GOOSGOARCH는 의존성 스캔 기능에 특정적이지 않습니다). DS_EXCLUDED_ANALYZERS, DS_GRADLE_RESOLUTION_POLICY, DS_IMAGE_SUFFIX, DS_JAVA_VERSION, DS_PIP_DEPENDENCY_PATH, DS_PIP_VERSION, DS_REMEDIATE_TIMEOUT, DS_REMEDIATE, GEMNASIUM_DB_LOCAL_PATH, GEMNASIUM_DB_REF_NAME, GEMNASIUM_DB_REMOTE_URL, GEMNASIUM_DB_UPDATE_DISABLED, GEMNASIUM_LIBRARY_SCAN_ENABLED, GOARCH, GOFLAGS, GOOS, GOPRIVATE, GRADLE_CLI_OPTS, GRADLE_PLUGIN_INIT_PATH, MAVEN_CLI_OPTS, PIP_EXTRA_INDEX_URL, PIP_INDEX_URL, PIPENV_PYPI_MIRROR, SBT_CLI_OPTS.
  • 다음 CI/CD 컴포넌트는 지원 중단됩니다: Android, Rust, Swift, CocoaPods. 이는 주요 의존성 스캔 CI/CD 컴포넌트로 대체되며, 지원되는 모든 언어 및 패키지 매니저를 다룹니다.
  • Yarn 프로젝트에 대한 취약점 해결 기능은 GitLab 17.9에서 지원 중단됩니다. Gemnasium 분석기를 사용할 때는 이 기능이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 사용할 수 없습니다. 자세한 내용은 해당 지원 중단 발표를 참조하세요.
  • JavaScript 벤더 라이브러리에 대한 의존성 스캔 기능은 GitLab 17.9에서 지원 중단됩니다. Gemnasium 분석기를 사용할 때는 이 기능이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 사용할 수 없습니다. 자세한 내용은 해당 지원 중단 발표를 참조하세요.

GitLab Advanced SAST가 기본으로 활성화됨#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab 19.0에서 GitLab Ultimate 프로젝트의 기본으로 GitLab Advanced SAST를 활성화하도록 SAST CI/CD 템플릿을 업데이트할 예정입니다. 이 변경 전에는 CI/CD 변수 GITLAB_ADVANCED_SAST_ENABLEDtrue로 설정한 경우에만 GitLab Advanced SAST 분석기가 활성화됩니다. 이 변경 사항은 이전에 GitLab 18.0으로 예정되어 있었으나 지금은 지연되었습니다.

Advanced SAST는 크로스 파일, 크로스 함수 스캔과 새로운 규칙셋을 사용하여 더 정확한 결과를 제공합니다. Advanced SAST는 지원되는 언어에 대한 커버리지를 인수하고 이전 스캐너의 해당 언어 스캔을 비활성화합니다. 이전 스캐너의 결과가 여전히 탐지되는 경우, 각 프로젝트의 기본 브랜치에서 첫 번째 스캔 후 자동 프로세스가 결과를 마이그레이션합니다.

더 자세하게 프로젝트를 스캔하기 때문에 Advanced SAST는 프로젝트 스캔에 더 많은 시간이 걸릴 수 있습니다. 필요한 경우 CI/CD 변수 GITLAB_ADVANCED_SAST_ENABLEDfalse로 설정하여 GitLab Advanced SAST를 비활성화할 수 있습니다. GitLab 19.0에서 Advanced SAST가 기본으로 활성화되는 것을 방지하기 위해 지금 프로젝트, 그룹 또는 정책에서 이 변수를 설정할 수 있습니다.

GitLab Runner Docker Machine 실행기 지원 중단#

  • GitLab 17.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab Runner Docker Machine 실행기는 지원 중단되며 GitLab 20.0(2027년 5월)에서 지원 기능으로 제품에서 완전히 제거됩니다. Docker Machine의 대체품인 Amazon Web Services(AWS) EC2, Google Compute Engine(GCE) 및 Microsoft Azure 가상 머신(VM)용 GitLab 개발 플러그인을 갖춘 GitLab Runner Autoscaler가 일반 공급됩니다. 이 발표와 함께 GitLab Runner 팀은 더 이상 GitLab이 유지 관리하는 Docker Machine 포크에 대한 커뮤니티 기여를 수락하거나 새로 식별된 버그를 해결하지 않습니다.

GraphQL API의 GitLab Runner 플랫폼 및 설정 지침#

  • GitLab 15.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab Runner 플랫폼 및 설치 지침을 가져오기 위한 runnerPlatformsrunnerSetup 쿼리는 지원 중단되어 GraphQL API에서 제거됩니다. 설치 지침은 이러한 API 쿼리를 사용하는 대신 GitLab Runner 문서를 참조하세요.

GitLab Self-Managed의 인증서 기반 Kubernetes 통합#

  • GitLab 14.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

Kubernetes와의 인증서 기반 통합은 지원 중단되어 제거될 예정입니다.

GitLab Self-Managed의 경우, 인증서 기반 통합을 계속 활성화 상태로 유지할 수 있도록 GitLab 15.0에서 피처 플래그 certificate_based_clusters를 도입합니다. 단, 피처 플래그는 기본적으로 비활성화되므로 이 변경 사항은 호환성 변경입니다.

보다 강력하고 안전하며 미래 지향적인 신뢰할 수 있는 Kubernetes 통합을 위해 Kubernetes용 에이전트를 사용하여 Kubernetes 클러스터를 GitLab과 연결하세요. 이 마이그레이션에 대한 정보는 Kubernetes용 에이전트로 마이그레이션을 참조하세요.

GitLab은 새 솔루션이 기능 동등성을 갖출 때까지 이 기능을 제거하지 않습니다. 제거 차단 요인에 대한 자세한 내용은 이슈 199를 참조하세요.

이 지원 중단에 대한 업데이트 및 자세한 내용은 에픽 8을 참조하세요.

GitLab.com의 인증서 기반 Kubernetes 통합#

  • GitLab 14.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

Kubernetes와의 인증서 기반 통합은 지원 중단되어 제거될 예정입니다. GitLab.com 사용자는 GitLab 15.0부터 새 네임스페이스에서 인증서 기반 방식으로 GitLab과 클러스터를 통합할 수 없게 됩니다. 현재 사용자의 통합은 네임스페이스별로 활성화됩니다.

보다 강력하고 안전하며 미래 지향적인 신뢰할 수 있는 Kubernetes 통합을 위해 Kubernetes용 에이전트를 사용하여 Kubernetes 클러스터를 GitLab과 연결하는 것을 권장합니다. 마이그레이션 방법은?

이 지원 중단에 대한 업데이트 및 자세한 내용은 이 에픽을 참조하세요.

GitLab Self-Managed 고객은 피처 플래그를 사용하여 기능을 계속 사용할 수 있습니다.

GraphQL dependencyProxyTotalSizeInBytes 필드 지원 중단#

  • GitLab 16.1에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GraphQL을 사용하여 GitLab Dependency Proxy가 사용하는 스토리지 용량을 쿼리할 수 있습니다. 단, dependencyProxyTotalSizeInBytes 필드는 약 2기가바이트로 제한되어 있어 Dependency Proxy에는 항상 충분하지 않을 수 있습니다. 이로 인해 dependencyProxyTotalSizeInBytes가 지원 중단됩니다.

GitLab 16.1에서 도입된 dependencyProxyTotalSizeBytes를 대신 사용하세요.

그룹 취약점 보고서의 OWASP 상위 10 2017 지원 중단#

  • GitLab 17.0에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

OWASP 상위 10 2017로 취약점 보고서를 그룹화하는 기능은 지원 중단되며, OWASP 상위 10 2021로 그룹화하는 기능으로 대체됩니다. 향후에는 취약점 보고서의 그룹화를 위한 가장 최신 버전의 OWASP 상위 10을 지원할 예정입니다. 이 변경과 함께 기능이 사용하는 2017 GraphQL API 열거형도 지원 중단 및 제거됩니다. 자세한 내용은 이 이슈에 포함되어 있습니다.

파이프라인 변수 사용에 대한 기본 보안 강화#

  • GitLab 17.7에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab은 기본 보안 방식을 따릅니다. 이를 위해 CI/CD 변수 사용과 관련한 최소 권한 원칙을 지원하는 몇 가지 변경 사항을 적용합니다. 현재 개발자 역할 이상의 사용자는 아무런 확인이나 옵트인 없이 기본적으로 파이프라인 변수를 사용할 수 있습니다.

파이프라인 변수의 최소 역할을 권장 사항인 소유자만 또는 아무도 없음으로 높여 이미 더 안전한 기본 환경을 사용할 수 있습니다. 17.7부터 GitLab.com의 새 네임스페이스의 모든 새 프로젝트에 대한 기본값은 no one allowed입니다.

OpenTofu CI/CD 템플릿#

  • GitLab 17.1에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

CI/CD 컴포넌트가 아직 GitLab Self-Managed에서 사용 불가능했을 때 16.8에서 OpenTofu CI/CD 템플릿을 도입했습니다. GitLab Self-Managed용 GitLab CI/CD 컴포넌트 도입으로 CI/CD 컴포넌트를 위해 중복된 OpenTofu CI/CD 템플릿을 제거합니다.

CI/CD 템플릿에서 컴포넌트로 마이그레이션하는 방법에 대한 정보는 OpenTofu 컴포넌트 문서를 참조하세요.

파이프라인 실행 정책의 inject_ci 전략이 inject_policy로 대체됨#

  • GitLab 17.11에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

파이프라인 실행 정책에서의 사용자 정의 스테이지 도입(GitLab 17.9에서 사용 가능)으로, 지원 중단된 inject_ci를 대체하기 위해 구성 옵션 inject_policy를 도입했습니다.

이 새 전략은 inject_ci 전략을 사용하는 기존 파이프라인 실행 정책을 가진 사용자들에게 사용자 정의 스테이지 기능을 원활하게 적용할 수 있게 합니다.

보류 중인 제거에 대비하여 inject_ci를 사용하는 모든 파이프라인 실행 정책을 inject_policy를 사용하도록 업데이트하세요.

일반 User, Project, Group API 엔드포인트에 대한 속도 제한#

  • GitLab 17.4에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

일반적으로 사용되는 User, Project, Group 엔드포인트에 대해 속도 제한이 기본으로 활성화됩니다. 이러한 속도 제한을 기본으로 활성화하면 대량 API 사용이 더 넓은 사용자 경험에 부정적인 영향을 미칠 가능성을 줄여 전체 시스템 안정성을 향상시킬 수 있습니다. 속도 제한을 초과하는 요청은 HTTP 429 오류 코드와 추가 속도 제한 헤더를 반환합니다.

기본 속도 제한은 GitLab.com에서 확인한 요청 속도를 기반으로 대부분의 사용을 방해하지 않도록 의도적으로 상당히 높게 설정되었습니다. 인스턴스 관리자는 이미 적용된 다른 속도 제한과 마찬가지로 관리자 영역에서 필요에 따라 더 높거나 낮은 제한을 설정할 수 있습니다.

ContainerRepository GraphQL API에서 migrationState 필드 제거#

  • GitLab 17.6에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab GraphQL API의 ContainerRepositoryType에 있는 migrationState 필드가 지원 중단됩니다. 이 지원 중단은 API를 간소화하고 개선하기 위한 노력의 일환입니다.

이 변경에 대비하여 ContainerRepositoryType과 상호 작용하는 GraphQL 쿼리를 검토하고 업데이트하는 것을 권장합니다. migrationState 필드에 대한 참조를 제거하고 애플리케이션 로직을 적절히 조정하세요.

GraphQL에서 previousStageJobsOrNeeds 제거#

  • GitLab 17.0에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GraphQL의 previousStageJobsOrNeeds 필드는 previousStageJobsneeds 필드로 대체되어 제거됩니다.

PipelineSchedulePermissions에서 GraphQL 필드 take_ownership_pipeline_scheduleadmin_pipeline_schedule로 대체#

  • GitLab 15.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GraphQL 필드 take_ownership_pipeline_schedule이 지원 중단됩니다. 사용자가 파이프라인 스케줄의 소유권을 가져올 수 있는지 여부를 확인하려면 대신 admin_pipeline_schedule 필드를 사용하세요.

Yarn 프로젝트에서 의존성 스캔에 대한 취약점 해결#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

의존성 스캔을 위한 Gemnasium 분석기가 제공하는 Yarn 프로젝트에 대한 취약점 해결 기능은 GitLab 17.9에서 지원 중단됩니다.

Gemnasium 분석기를 사용할 때는 이 기능이 계속 작동하지만 새 의존성 스캔 분석기로 마이그레이션한 후에는 사용할 수 없습니다. 자세한 내용은 마이그레이션 가이드를 참조하세요.

대체 기능은 Auto Remediation 비전의 일환으로 계획되어 있지만 제공 일정은 설정되지 않았습니다.

공개 API의 구독 관련 API 엔드포인트 지원 중단#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

공개 REST API의 다음 엔드포인트들이 제거됩니다:

  • PUT /api/v4/user/:id/credit_card_validation
  • POST /api/v4/namespaces/:namespace_id/minutes
  • PATCH /api/v4/namespaces/:previous_namespace_id/minutes/move/:target_namespace_id
  • GET /api/v4/namespaces/:namespace_id/subscription_add_on_purchase/:id
  • PUT /api/v4/namespaces/:namespace_id/subscription_add_on_purchase/:id
  • POST /api/v4/namespaces/:namespace_id/subscription_add_on_purchase/:id
  • POST /api/v4/namespaces/:id/gitlab_subscription
  • PUT /api/v4/namespaces/:id/gitlab_subscription
  • PUT /api/v4/namespaces/:id

이 엔드포인트들은 GitLab.com의 구독 정보를 관리하기 위해 구독 포털에서 사용되었습니다. 이 엔드포인트들의 사용은 다가오는 Cells 아키텍처를 지원하기 위한 JWT 인증을 갖춘 내부 엔드포인트로 대체되었습니다. 공개 API의 엔드포인트는 실수로 다시 사용되지 않도록, 그리고 기능적으로 차이가 생기기 시작함에 따른 유지 관리 부담을 줄이기 위해 제거됩니다.

이는 내부적으로 사용되던 엔드포인트이므로 이 변경으로 인한 영향은 없을 것입니다.

agentk 컨테이너 레지스트리가 Cloud Native GitLab으로 이동#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

agentk 컨테이너 레지스트리를 프로젝트별 레지스트리에서 Cloud Native GitLab(CNG) 레지스트리로 이동합니다. GitLab 18.0부터 CNG에서 빌드된 agentk 이미지는 프로젝트별 레지스트리로 미러링됩니다. 새 이미지는 이전 이미지와 동일하지만, 새 이미지는 amd64arm64 아키텍처만 지원합니다. 32비트 arm 아키텍처는 지원하지 않습니다. GitLab 19.0부터 프로젝트별 레지스트리는 agentk 업데이트를 받지 않습니다. 로컬 레지스트리에 agentk 컨테이너를 미러링하는 경우 미러 소스를 CNG 레지스트리로 변경해야 합니다.

공식 GitLab Agent Helm 차트를 사용하는 경우, GitLab 18.0에서 새 agentk 이미지가 새 위치에서 원활하게 배포되기 시작합니다.

CI/CD 잡 토큰을 JWT 표준으로 업데이트#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

GitLab 19.0에서 CI/CD 잡 토큰은 문자열 토큰 형식에서 JWT 토큰 형식으로 전환됩니다. 이 변경은 모든 프로젝트의 새 CI/CD 잡 토큰 및 기존 CI/CD 잡 토큰에 영향을 미칩니다. 문제가 발생하면 GitLab 20.0 릴리스까지 CI/CD 토큰에 레거시 형식을 사용할 수 있습니다.

알려진 문제:

  1. GitLab Runner의 AWS Fargate 드라이버 0.5.0 이하는 JWT 표준과 호환되지 않습니다. 잡이 file name too long 오류와 함께 실패합니다. AWS Fargate 사용자 정의 실행기 드라이버 사용자는 0.5.1 이상으로 업그레이드해야 합니다. 마이그레이션 지침은 문서를 참조하세요.
  2. 훨씬 긴 JWT 표준은 일부 CI/CD 구성 파일에서 사용되는 echo $CI_JOB_TOKEN | base64 명령을 중단시킵니다. 대신 echo $CI_JOB_TOKEN | base64 -w0 명령을 사용할 수 있습니다.

Gitaly의 bin_pathuse_bundled_binaries 구성 옵션#

  • GitLab 18.2에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

Gitaly에서 bin_pathuse_bundled_binaries 구성 옵션 사용에 대한 지원은 지원 중단되며 GitLab 19.0에서 제거됩니다.

Gitaly가 제공하는 Git 바이너리가 Git을 실행하는 유일한 지원 방식이 됩니다.

kpt 기반 agentk 지원 중단#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

Kubernetes용 에이전트의 kpt 기반 설치에 대한 지원을 제거할 예정입니다. 대신 지원되는 설치 방법 중 하나를 사용하여 에이전트를 설치해야 합니다:

  • Helm (권장)
  • GitLab CLI
  • Flux

kpt에서 Helm으로 마이그레이션하려면 에이전트 설치 문서를 따라 kpt로 배포된 agentk 인스턴스를 덮어쓰세요.

mergeTrainIndexmergeTrainsCount GraphQL 필드 지원 중단#

  • GitLab 17.5에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

MergeRequest의 GraphQL 필드 mergeTrainIndexmergeTrainsCount가 지원 중단됩니다. 머지 트레인에서 머지 리퀘스트의 위치를 확인하려면 MergeTrainCarindex 필드를 대신 사용하세요. 머지 트레인의 MR 수를 가져오려면 MergeTrains::TrainTypecars에서 count를 대신 사용하세요.

scanResultPolicies GraphQL 필드 지원 중단#

  • GitLab 17.8에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 원래 마일스톤에서 제거되어 재검토 중입니다.

16.10에서 스캔 결과 정책은 정책 유형의 범위와 기능의 변화를 더 정확하게 반영하기 위해 머지 리퀘스트 승인 정책으로 이름이 변경되었습니다.

이에 따라 GraphQL 엔드포인트를 업데이트했습니다. scanResultPolicies 대신 approvalPolicies를 사용하세요.

취소된 변경 사항#

다음 변경 사항은 취소되었습니다.

컨테이너 스캐닝 기본 심각도 임계값을 medium으로 설정#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

컨테이너 스캐닝 보안 기능은 많은 보안 결과를 생성하며, 이 양은 엔지니어링 팀이 관리하기 어려운 경우가 많습니다. 심각도 임계값을 medium으로 변경하여 사용자에게 더 합리적인 기본값을 제공하며, medium 미만의 심각도를 가진 결과는 보고되지 않습니다. GitLab 18.0부터 CS_SEVERITY_THRESHOLD 환경 변수의 기본값이 unknown 대신 medium으로 설정됩니다. 결과적으로 심각도가 lowunknown인 보안 결과는 기본적으로 더 이상 보고되지 않습니다. 따라서 이전에 기본 브랜치에서 보고된 이러한 심각도를 가진 취약점은 다음 컨테이너 스캔 실행 시 더 이상 탐지되지 않는 것으로 표시됩니다. 이러한 결과를 계속 표시하려면 원하는 수준으로 CS_SEVERITY_THRESHOLD 변수를 구성해야 합니다.

License Scanning CI/CD 아티팩트 보고서 유형 지원 중단#

  • GitLab 16.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

CI/CD 아티팩트 보고서 유형은 GitLab 16.9에서 지원 중단되며 GitLab 18.0에서 제거됩니다. 이 키워드를 사용하는 CI/CD 구성은 GitLab 18.0에서 작동이 중단됩니다.

아티팩트 보고서 유형은 GitLab 16.3에서 레거시 License Scanning CI/CD 잡이 제거됨으로써 더 이상 사용되지 않습니다. 대신 CycloneDX 파일의 라이선스 스캔을 사용해야 합니다.

지원 종료된 SAST 잡이 CI/CD 템플릿에서 제거됨#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

GitLab 18.0에서 SAST CI/CD 템플릿을 업데이트하여 이전 릴리스에서 지원 종료에 도달한 분석기 잡을 제거할 예정입니다. 다음 잡들이 SAST.gitlab-ci.ymlSAST.latest.gitlab-ci.yml에서 제거됩니다:

각 분석기가 지원 종료에 도달했을 때 기본적으로 실행되지 않도록 잡 rules를 업데이트하고 업데이트 릴리스를 중단했습니다. 단, 이러한 잡을 계속 사용하거나 파이프라인에 있는 것에 의존하도록 템플릿을 사용자 정의했을 수 있습니다. 위의 잡에 의존하는 사용자 정의가 있는 경우, CI/CD 파이프라인의 중단을 피하기 위해 18.0으로 업그레이드하기 전에 필요한 조치를 수행하세요.

Secure 컨테이너 레지스트리의 공개 사용 지원 중단#

  • GitLab 17.4에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

registry.gitlab.com/gitlab-org/security-products/ 아래의 컨테이너 레지스트리는 GitLab 18.0에서 더 이상 접근할 수 없습니다. GitLab 14.8부터 올바른 위치는 registry.gitlab.com/security-products(주소에서 gitlab-org가 없음에 주의)입니다.

이 변경은 GitLab 취약점 스캐너의 릴리스 프로세스 보안을 향상시킵니다.

사용자는 GitLab 보안 스캐너 이미지의 표준 위치인 registry.gitlab.com/security-products/ 아래의 동등한 레지스트리를 사용하는 것이 권장됩니다. 관련 GitLab CI 템플릿은 이미 이 위치를 사용하므로 수정되지 않은 템플릿을 사용하는 사용자는 변경이 필요하지 않습니다.

오프라인 배포는 필요한 스캐너 이미지를 미러링하는 데 올바른 위치가 사용되고 있는지 확인하기 위해 특정 스캐너 지침을 검토해야 합니다.

SAST 잡이 더 이상 전역 캐시 설정을 사용하지 않음#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

GitLab 18.0에서 SAST 및 IaC 스캔을 업데이트하여 기본적으로 CI/CD 잡 캐시 사용을 비활성화할 예정입니다.

이 변경은 다음 CI/CD 템플릿에 영향을 미칩니다:

  • SAST: SAST.gitlab-ci.yml
  • IaC 스캔: SAST-IaC.gitlab-ci.yml

latest 템플릿인 SAST.latest.gitlab-ci.ymlSAST-IaC.latest.gitlab-ci.yml는 이미 업데이트했습니다. 이러한 템플릿 버전에 대한 자세한 내용은 안정적인 템플릿과 최신 템플릿을 참조하세요.

캐시 디렉토리는 대부분의 프로젝트에서 스캔 범위에 포함되지 않으므로, 캐시를 가져오면 타임아웃이나 거짓 양성 결과가 발생할 수 있습니다.

프로젝트를 스캔할 때 캐시를 사용해야 하는 경우, 프로젝트의 CI 구성에서 cache 속성을 재정의하여 이전 동작을 복원할 수 있습니다.

시크릿 탐지 분석기가 기본적으로 루트 사용자로 실행되지 않음#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

시크릿 탐지 분석기에 대한 이 계획된 변경은 취소되었습니다. 기본적으로 루트 사용자를 계속 사용할 수 있습니다.

SpotBugs 스캔의 일부로 프로젝트 빌드 지원#

  • GitLab 17.9에서 발표
  • 이 변경 사항에 대해 논의하거나 자세히 알아보려면 지원 중단 이슈를 참조하세요.
Note

이 변경 사항은 취소되었습니다.

SpotBugs SAST 분석기는 스캔할 아티팩트가 없을 때 빌드를 수행할 수 있습니다. 이는 일반적으로 간단한 프로젝트에서는 잘 작동하지만 더 복잡한 빌드에서는 실패할 수 있습니다.

GitLab 18.0부터 SpotBugs 분석기 빌드 실패를 해결하려면 다음을 수행해야 합니다:

  1. 프로젝트를 사전 컴파일합니다.
  2. 스캔할 아티팩트를 분석기에 전달합니다.

이는 기능 변경이 아니므로 명확성을 위해 이 발표를 "취소됨"으로 표시했습니다.