버전별 사용 중단 및 제거
다음 GitLab 기능은 사용 중단되었으며 더 이상 사용이 권장되지 않습니다.
- 각 사용 중단 기능은 향후 릴리스에서 제거됩니다.
- 일부 기능은 제거될 때 중대한 변경을 초래합니다.
- GitLab.com에서는 사용 중단된 기능이 릴리스 전에 언제든지 제거될 수 있습니다.
이 사용 중단 정보의 고급 검색 및 필터링을 위해 고객 성공 팀이 만든 도구를 사용해 보세요.
REST API 사용 중단과 GraphQL 사용 중단은 별도로 문서화되어 있습니다.
향후 중단된 변경 사항에 대한 알림을 받으려면,
이 URL을 RSS 피드 리더에 추가하세요: https://about.gitlab.com/breaking-changes.xml
GitLab 20.0
GitLab Runner Docker Machine 실행기가 사용 중단되었습니다.
GitLab Runner Docker Machine 실행기는 사용 중단되었으며 GitLab 20.0(2027년 5월)에서 지원되는 기능으로서 완전히 제거될 예정입니다. Docker Machine의 대체품인 GitLab Runner Autoscaler는 Amazon Web Services(AWS) EC2, Google Compute Engine(GCE) 및 Microsoft Azure Virtual Machine(VM)을 위한 GitLab 개발 플러그인이 일반적으로 제공됩니다. 이 발표와 함께 GitLab Runner 팀은 GitLab에서 유지 관리하는 Docker Machine 포크에 대한 커뮤니티 기여를 더 이상 수락하지 않으며 새로 식별된 버그를 해결하지 않을 것입니다.
GitLab 19.0
단일 데이터베이스 실행은 더 이상 지원되지 않습니다
- GitLab 16.1에서 발표됨
- GitLab 19.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecated issue를 참조하세요.
GitLab 19.0부터는 CI 기능을 위한 별도의 데이터베이스가 필요합니다.
대부분의 배포 편의성을 위해 두 데이터베이스를 동일한 Postgres 인스턴스에서 실행하는 것을 권장합니다.
이 변경 사항은 GitLab.com과 같은 최대 규모의 GitLab 인스턴스에 대한 추가 확장성을 제공합니다.
이 변경 사항은 모든 설치 방법에 적용됩니다: Omnibus GitLab, GitLab Helm chart, GitLab Operator, GitLab Docker 이미지 및 소스에서의 설치입니다.
GitLab 19.0으로 업그레이드하기 전에 마이그레이션을 완료했는지 확인하세요.
단일 데이터베이스 연결은 더 이상 지원되지 않습니다
- GitLab 15.9에서 발표됨
- GitLab 19.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecated issue를 참조하세요.
이전에는 GitLab의 데이터베이스 구성이 단일 main:
섹션을 가졌습니다. 이는 더 이상 지원되지 않습니다.
새 구성은 main:
및 ci:
섹션을 모두 포함하고 있습니다.
이 폐기는 소스에서 GitLab을 컴파일하는 사용자에게 영향을 미치며, 그들은 ci: 섹션을 추가해야 합니다.
Omnibus, Helm 차트 및 Operator는 GitLab 16.0부터 이 구성을 자동으로 처리합니다.
GitLab 18.0
보호된 변수 및 다중 프로젝트 파이프라인에 대한 동작 변경
- GitLab 16.10에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecated issue를 참조하세요.
일부 경우, 프로젝트에서 충분한 권한을 가진 사용자가 보호된 변수를 보안이 없는 프로젝트로 전달할 수 있었으므로 이 변경은 보호된 변수 값이 노출될 위험을 최소화하는 보안 강화입니다.
다운스트림 파이프라인에 CI/CD 변수를 전달하는 것은 일부 워크플로우에 유용하지만, 보호된 변수는 추가적인 주의가 필요합니다.
이들은 특정 보호된 브랜치 또는 태그와 함께 사용되도록 설정되어 있습니다.
GitLab 18.0에서는 변수 전달이 업데이트되어 보호된 변수가 특정 상황에서만 전달되도록 보장됩니다:
- 프로젝트 수준의 보호된 변수는 동일한 프로젝트(하위 파이프라인)의 다운스트림 파이프라인에만 전달될 수 있습니다.
- 그룹 수준의 보호된 변수는 소스 프로젝트와 동일한 그룹에 속하는 프로젝트의 다운스트림 파이프라인에만 전달될 수 있습니다.
자신의 파이프라인이 보호된 변수를 전달하는 것에 의존하는 경우, 두 가지 옵션 중 하나에 맞게 구성을 업데이트하거나 보호된 변수를 전달하지 않도록 하세요.
GET /projects/:id/ci/lint
에서 ref와 sha를 함께 사용하는 것을 차단합니다
- GitLab 16.8에서 발표됨
- GitLab 18.0에서 제거됨
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 폐기 문제를 참조하세요.
API 호출에서 ref
와 sha
의 사용이 모호하여 GET /projects/:id/ci/lint
에서 이를 폐기했습니다. 이 엔드포인트에 대한 API 호출에서는 ref
와 sha
대신 content_ref
와 dry_run_ref
를 사용해야 합니다.
Maven 저장소 그룹 권한에 대한 주요 변경 사항
Maven 저장소는 Maven 클라이언트가 특정 패키지에서 파일을 다운로드할 수 있도록 허용하는 그룹 수준의 API 엔드포인트를 노출합니다. 패키지 검색기는 먼저 그룹 내에서 패키지를 찾고, 그런 다음 패키지 내에서 파일을 찾습니다.
그러나 서로 다른 프로젝트에 호스팅된 동일한 패키지 이름에 영향을 미치는 제한이 있습니다. Maven 패키지 검색기는 항상 가장 최근의 패키지를 반환하지만, “가장 최근” 필터는 사용자 권한에 따라 다릅니다. 서로 다른 프로젝트에서 권한이 다른 사용자가 잘못된 Maven 패키지를 다운로드할 수 있습니다.
GitLab 18.0에서 패키지 검색 로직이 수정되어 “가장 최근의” 패키지는 그룹 내에서 마지막으로 업데이트된 이름과 버전으로 결정됩니다. 가장 최근의 패키지가 발견된 후에는 사용자 권한이 체크됩니다.
변경 후 올바른 권한이 없는 사용자의 다운로드 요청은 거부됩니다. 현재 버그 동작에 의존하는 워크플로우가 있는 경우, 이 수정은 주요 변경 사항을 도입하게 됩니다.
변경 사항은 GitLab 16.6에서 기능 플래그 뒤에 도입됩니다. 귀하의 그룹에 대한 기능 플래그를 활성화하는 데 관심이 있으시면 문제 393933에서 댓글을 남겨 주시기 바랍니다.
CodeClimate 기반 코드 품질 스캐닝이 제거됩니다
GitLab 18.0에서 CodeClimate 기반 코드 품질 스캐닝을 제거할 것입니다.
그러나 오늘과 마찬가지로 아티팩트로 보고서를 제공하여 품질 도구에서 결과를 가져오는 것은 여전히 가능합니다.
또한 Code Quality에 대해 고려되는 새로운 방향에 대한 에픽도 확인할 수 있습니다.
우리는 다음과 같은 방법으로 이 변경 사항을 구현할 것으로 예상합니다:
-
Code-Quality.gitlab-ci.yml
CI/CD 템플릿을 변경하여 더 이상 스캔을 실행하지 않도록 합니다. 현재 이 템플릿은 CodeClimate 기반 스캔을 실행합니다. (우리의 목표는 영향을 줄이기 위해 템플릿을 삭제하는 것이 아니라 수정하는 것입니다. 18.0 이후에도 여전히 템플릿을include
할 수 있습니다.) - Auto DevOps의 일부로 CodeClimate 기반 스캐닝을 더 이상 실행하지 않습니다.
즉시 효력이 발생하여 CodeClimate 기반 스캐닝은 제한된 업데이트만 받을 것입니다.
GitLab 18.0의 지원 종료 이후, 더 이상의 업데이트는 제공되지 않을 것입니다.
그러나 이전에 게시된 컨테이너 이미지는 삭제하거나 사용자 정의 CI/CD 파이프라인 작업 정의를 사용하여 실행할 수 있는 기능은 제거하지 않을 것입니다.
자세한 내용과 필요한 작업은 이 변경 사항에 대한 폐기 문제를 참조하세요.
준수 파이프라인
- GitLab 17.3에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 사용되지 않는 문제를 참조하세요.
현재 프로젝트 파이프라인에서 준수 또는 보안 관련 작업이 실행되도록 보장하는 두 가지 방법이 있습니다:
모든 파이프라인에서 필수 작업이 실행되도록 하기 위해, 우리는 GitLab 17.3에서 준수 파이프라인을 사용 중단하였으며 GitLab 18.0에서 기능을 제거할 예정입니다.
고객은 가능한 한 빨리 준수 파이프라인에서 새 파이프라인 실행 정책 유형으로 마이그레이션해야 합니다.
기본 CI/CD 작업 토큰(CI_JOB_TOKEN
) 범위 변경
- GitLab 15.9에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 사용되지 않는 문제를 참조하세요.
GitLab 14.4에서는 프로젝트의 CI/CD 작업 토큰(CI_JOB_TOKEN
) 액세스를 제한할 수 있는 기능을 도입하여 보안을 강화했습니다. 프로젝트의 파이프라인에서 작업 토큰이 다른 프로젝트에 접근하는 것을 방지할 수 있습니다. 아무 설정이 없는 경우 활성화하면 파이프라인에서 다른 프로젝트에 접근할 수 없습니다. 파이프라인에서 다른 프로젝트에 접근하기 위해서는 CI_JOB_TOKEN 액세스 제한 설정의 허용 목록에 해당 프로젝트를 명시적으로 나열해야 하며, 모든 프로젝트에서 유지 관리자가 되어야 합니다.
작업 토큰 기능은 15.9에서 작업 토큰을 사용하여 프로젝트에 접근을 허용하는 더 나은 보안 설정으로 업데이트되었습니다 (자세히 보기). 아무 설정도 없는 경우 활성화하면 다른 프로젝트의 작업 토큰이 귀하의 프로젝트에 접근할 수 없습니다. 이전 설정과 유사하게 다른 프로젝트가 귀하의 프로젝트에 접근할 수 있도록 하려면 CI_JOB_TOKEN으로 이 프로젝트에 접근 허용 설정의 허용 목록에 해당 프로젝트를 명시적으로 나열해야 합니다. 이 새로운 설정을 사용하려면 자신의 프로젝트에서 유지 관리자여야 하며, 다른 프로젝트에서는 게스트 역할만 있으면 됩니다.
Limit 설정은 더 나은 Allow access 설정을 선호하여 16.0에서 사용 중단되었으며, 모든 신규 프로젝트에 대해 기본적으로 비활성화되었습니다. 이후 Limit 설정이 어떤 프로젝트에서 비활성화된 경우, 16.0 이상에서는 이 설정을 다시 활성화할 수 없습니다.
18.0에서는 Limit 설정이 완전히 제거되며, 모든 프로젝트에 대해 Allow access 설정이 활성화됩니다. 이 변경 사항은 프로젝트 간 보안 수준을 높이는 데 기여합니다. 현재 Limit 설정을 사용하고 있는 경우, 프로젝트를 Allow access 설정으로 업데이트해야 합니다. 다른 프로젝트가 작업 토큰으로 귀하의 프로젝트에 접근한다면, 이를 Allow access 허용 목록에 추가해야 합니다.
이 변경 사항을 준비하기 위해, GitLab.com 또는 self-managed GitLab 15.9 이상을 사용하는 사용자는 지금 Allow access 설정을 활성화하고 다른 프로젝트를 추가할 수 있습니다. 18.0 이상에서는 이 설정을 비활성화할 수 없습니다.
16.3에서는 이러한 설정의 이름이 그 의미를 명확히 하기 위해 변경되었습니다: 사용 중단된 Limit CI_JOB_TOKEN access 설정은 이제 Limit access from this project로, 새로운 Allow access to this project with a CI_JOB_TOKEN 설정은 Limit access to this project로 수정되었습니다.
Dependency Proxy: 액세스 토큰에 추가 범위 확인
그룹 액세스 토큰 또는 개인 액세스 토큰을 사용하여 Dependency Proxy를 이용할 때, Dependency Proxy에 대한 범위가 부족한 docker login
및 docker pull
요청은 거부되지 않습니다.
GitLab 18.0은 컨테이너를 위한 Dependency Proxy를 인증하기 위해 그룹 또는 개인 액세스 토큰에 대한 확인 절차를 추가합니다. 이는 필수 범위가 없는 토큰이 실패하므로 파괴적 변경입니다.
이 파괴적 변경에 영향을 받지 않도록 하려면 필수 범위가 있는 새 액세스 토큰을 생성하고, 새로운 토큰으로 워크플로 변수와 스크립트를 업데이트하세요.
라이센스 스캐닝 CI/CD 아티팩트 보고서 유형 사용 중단
CI/CD 아티팩트 보고서 유형은 GitLab 16.9에서 사용 중단되었으며, GitLab 18.0에서 제거될 예정입니다. 이 키워드를 사용하는 CI/CD 구성은 GitLab 18.0에서 작동하지 않게 됩니다.
아티팩트 보고서 유형은 GitLab 16.3에서 레거시 라이센스 스캐닝 CI/CD 작업의 제거로 인해 더 이상 사용되지 않습니다. 대신 CycloneDX 파일의 라이센스 스캐닝을 사용해야 합니다.
Terraform CI/CD 템플릿 사용 중단
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에 새로운 작업이 템플릿에 추가되어 사용자에게 사용 중단을 알립니다.
GitLab은 작업 이미지 내 terraform
바이너리를 BSL 라이센스 하에 있는 어떤 버전으로도 업데이트할 수 없습니다.
Terraform을 계속 사용하려면 템플릿과 Terraform 이미지를 복제하고 필요에 따라 유지 관리하세요.
대안으로 GitLab.com에서 새로운 OpenTofu CI/CD 구성 요소를 사용하거나 자체 관리용 OpenTofu CI/CD 템플릿을 사용하는 것을 권장합니다.
CI/CD 구성 요소는 아직 GitLab 자체 관리에서는 사용할 수 없지만, Issue #415638가 이 기능 추가를 제안합니다.
CI/CD 구성 요소가 자체 관리에서 사용 가능해지면 OpenTofu CI/CD 템플릿이 제거될 것입니다.
새로운 OpenTofu CI/CD 구성 요소에 대한 정보는 여기에서 확인할 수 있습니다.
라이센스 메타데이터 형식 V1 사용 중단
라이센스 메타데이터 형식 V1 데이터셋은 사용 중단되었으며
GitLab 18.0에서 제거될 것입니다.
package_metadata_synchronization
기능 플래그가 활성화된 사용자들은
GitLab 16.3 이상으로 업그레이드하고 기능 플래그 구성을 제거할 것을 권장합니다.
GraphQL API에서 GitLab Runner 플랫폼 및 설정 지침
GitLab Runner 플랫폼 및 설치 지침을 얻기 위한 runnerPlatforms
및 runnerSetup
쿼리는 사용 중단되었으며 GraphQL API에서 제거될 것입니다. 설치 지침은
GitLab Runner 문서를 사용해야 합니다.
Runner Operator의 GitLab Runner 등록 토큰
OpenShift 및 Kubernetes Vanilla Operator를 사용하여 Kubernetes에 러너를 설치하기 위해 사용하는 runner-registration-token
매개변수는 사용 중단되었습니다. 대신 인증 토큰이 러너 등록에 사용됩니다. 등록 토큰 및 특정 구성 인수에 대한 지원은 GitLab 18.0에서 제거될 것입니다. 자세한 내용은 새 러너 등록 워크플로로의 마이그레이션을 참조하세요.
인증 토큰에 대해 비활성화된 구성 인수는 다음과 같습니다:
--locked
--access-level
--run-untagged
--tag-list
이 변경은 브레이킹 변경입니다. 대신 gitlab-runner register
명령에서 인증 토큰을 사용해야 합니다.
GitLab 17.0 이후에 러너 등록 워크플로가 중단되지 않도록 방지하는 방법도 참고하세요.
OWASP Top 10 2017에 의한 그룹 취약점 보고서는 더 이상 지원되지 않음
- GitLab 17.0에 발표됨
- GitLab 18.0에서 제거됨
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 비활성화 문제를 참조하세요.
OWASP Top 10 2017에 의한 취약점 보고서 그룹화는 더 이상 지원되지 않으며, OWASP Top 10 2021에 의한 그룹화로 대체됩니다.
앞으로 취약점 보고서를 그룹화하는 데 가장 최신 버전의 OWASP Top 10을 지원할 것입니다.
이와 함께, 이 기능이 사용하는 2017 GraphQL API 열거형도 비활성화하고 제거할 예정입니다. 추가 세부사항은 이 문제에 포함되어 있습니다.
스캔 실행 정책에서 제한된 scan
작업
GitLab 18.0부터 스캔 실행 정책은 정책당 10개의 scan
작업으로 제한됩니다. 제한을 초과하는 새로운 정책을 생성할 수 없으며, 제한을 초과하는 기존 정책도 업데이트할 수 없습니다. 제한을 초과하는 모든 기존 정책에 대해서는 정책의 첫 10개의 scan
작업만 실행됩니다.
scan_execution_policies_action_limit
애플리케이션 설정을 통해 자체 관리 인스턴스에서 사용자 지정 한계를 구성할 수 있습니다.
컨테이너 레지스트리 리포지토리 태그 API 엔드포인트 페이지 매김
컨테이너 레지스트리 REST API를 사용하여 레지스트리 리포지토리 태그 목록을 가져올 수 있습니다. 이 엔드포인트를 개선하여 더 많은 메타데이터와 향상된 정렬 및 필터링과 같은 새로운 기능을 추가할 계획입니다.
오프셋 기반 페이지 매김은 이 엔드포인트에 대해 이미 사용 가능했으나, 키세트 기반 페이지 매김은 GitLab 16.10에서 GitLab.com 전용으로 도입되었습니다. 이제 이것이 선호되는 페이지 매김 방법입니다.
레지스트리 리포지토리 태그 목록 엔드포인트에 대한 오프셋 기반 페이지 매김은 GitLab 16.10에서 더 이상 지원되지 않으며 18.0에서 제거될 예정입니다. 대신, 키세트 기반 페이지 매김을 사용하세요.
OpenTofu CI/CD 템플릿
OpenTofu CI/CD 템플릿은 CI/CD 구성 요소가 자체 관리 설치에 대해 아직 사용 가능하지 않았던 16.8에서 도입되었습니다.
자체 관리 사용자를 위한 GitLab CI/CD 구성 요소가 도입됨에 따라 중복되는 OpenTofu CI/CD 템플릿을 CI/CD 구성 요소로 변경하고 있습니다.
자체 관리 인스턴스에 CI/CD 구성 요소가 아직 사용 가능하지 않았던 16.8에서 OpenTofu CI/CD 템플릿을 도입했습니다.
자체 관리 사용자를 위한 GitLab CI/CD 구성 요소가 도입됨에 따라, 중복되는 OpenTofu CI/CD 템플릿을 OpenTofu CI/CD 구성 요소로 변경하고 있습니다.
CI/CD 템플릿에서 구성 요소로 마이그레이션하는 방법에 대한 정보는 OpenTofu 구성 요소 문서를 참조하세요.
그룹 설정의 프로젝트 페이지가 더 이상 지원되지 않음
- GitLab 17.0에서 발표됨
- GitLab 17.9에서 지원 종료
- GitLab 18.0에서 제거됨
- 이 변경 사항에 대해 논의하거나 더 알아보려면 폐기 이슈를 참조하세요.
그룹 소유자는 그룹 설정에서 그룹에 포함된 프로젝트를 나열하는 프로젝트 페이지에 접근할 수 있으며, 프로젝트를 생성, 편집 또는 삭제할 수 있는 옵션과 각 프로젝트의 멤버 페이지로 연결되는 링크를 제공받습니다.
이 모든 기능은 그룹 개요 페이지와 각 프로젝트의 해당 멤버 페이지에서 사용할 수 있습니다.
그룹 설정의 프로젝트 페이지 사용률이 낮고 접근성이 제한적이기 때문에, 이 페이지는 더 이상 지원되지 않게 됩니다.
이 변경 사항은 사용자 인터페이스에만 영향을 미칩니다. 기본 API는 여전히 사용 가능하므로 프로젝트 생성, 편집 및 삭제는 Projects API를 사용하여 여전히 수행할 수 있습니다.
17.9에서는 이 페이지에서 그룹 개요 페이지로 리디렉션을 구현할 것입니다.
프로젝트 페이지는 18.0에서 그룹 설정에서 완전히 제거됩니다.
공개 사용의 Secure 컨테이너 레지스트리가 더 이상 지원되지 않음
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 템플릿은 이미 이 위치를 사용하고 있으므로, 수정되지 않은 템플릿을 사용하는 사용자에게는 별도의 변경이 필요하지 않습니다.
오프라인 배포는 특정 스캐너 안내문을 검토하여 필요한 스캐너 이미지를 미러링하기 위해 올바른 위치가 사용되고 있는지 확인해야 합니다.
일반 사용자, 프로젝트 및 그룹 API 엔드포인트에 대한 속도 제한
- GitLab 17.4에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
일반적으로 사용되는 User, Project 및 Group 엔드포인트에 대해 기본적으로 속도 제한이 활성화됩니다.
기본적으로 이러한 속도 제한을 활성화하면 전체 시스템 안정성이 향상될 수 있습니다.
과도한 API 사용으로 인해 더 넓은 사용자 경험에 부정적인 영향을 미치는 가능성을 줄이는 데 도움이 됩니다.
속도 제한을 초과하여 발생한 요청은 HTTP 429 오류 코드와 추가 속도 제한 헤더를 반환합니다.
기본 속도 제한은 GitLab.com에서 관찰된 요청 속도를 기준으로 대부분의 사용에 지장을 주지 않도록 intentionally 높은 수준으로 설정되어 있습니다.
인스턴스 관리자는 필요에 따라 관리 영역에서 다른 속도 제한과 유사하게 더 높거나 낮은 제한을 설정할 수 있습니다.
POST /api/v4/runners
엔드포인트의 등록 토큰 및 서버 측 러너 인수
- GitLab 15.6에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
POST
메소드 작업에서 /api/v4/runners
엔드포인트의 등록 토큰 및 특정 러너 구성 인수 지원이 사용 중단되었습니다.
이 엔드포인트는 API를 통해 인스턴스, 그룹 또는 프로젝트 수준에서 GitLab 인스턴스에 러너를 등록합니다.
GitLab 17.0에서 등록 토큰 및 특정 구성 인수에 대한 지원은 GitLab 17.0에서 HTTP 410 Gone
상태 코드를 반환하기 시작합니다.
자세한 내용은 새 러너 등록 워크플로우로 마이그레이션하기를 참조하세요.
인증 토큰에 대해 비활성화된 구성 인수는 다음과 같습니다:
--locked
--access-level
--run-untagged
--maximum-timeout
--paused
--tag-list
--maintenance-note
이 변경 사항은 breaking change입니다.
구성을 추가하려면 UI에서 러너를 생성하고 gitlab-runner register
명령에서 러너 인증 토큰을 사용해야 합니다.
gitlab-runner register
명령어의 등록 토큰 및 서버 측 러너 인자
러너를 등록하는 명령어인 gitlab-runner register
의 등록 토큰 및 특정 구성 인자는 사용 중단됩니다.
대신 인증 토큰을 사용하여 러너를 등록합니다. 등록 토큰과 특정 구성 인자에 대한 지원은 GitLab 18.0에서 제거됩니다.
자세한 내용은 새 러너 등록 작업 흐름으로 마이그레이션하기를 참조하세요.
인증 토큰에 대해 비활성화된 구성 인자는 다음과 같습니다:
--locked
--access-level
--run-untagged
--maximum-timeout
--paused
--tag-list
--maintenance-note
이 변경은 파괴적 변화입니다. 구성 추가를 위해 UI에서 러너를 생성하세요 그리고 대신 gitlab-runner register
명령어에 인증 토큰을 사용하세요.
GraphQL에서 previousStageJobsOrNeeds
제거
GraphQL의 previousStageJobsOrNeeds
필드는 previousStageJobs
및 needs
필드로 대체되어 제거됩니다.
GitGuardian 비밀 감지를 건너뛰기 위한 옵션 이름 변경
GitGuardian 비밀 감지를 건너뛰기 위한 [skip secret detection]
및 secret_detection.skip_all
옵션이 사용 중단되며 GitLab 18.0에서 제거됩니다. 대신 [skip secret push protection]
및 secret_push_protection.skip_all
을 사용해야 합니다.
파이프라인 스케줄 권한에서 take_ownership_pipeline_schedule
GraphQL 필드를 admin_pipeline_schedule
로 교체
take_ownership_pipeline_schedule
GraphQL 필드는 사용 중단됩니다. 사용자가 파이프라인 스케줄의 소유권을 가질 수 있는지를 결정하려면 대신 admin_pipeline_schedule
필드를 사용하세요.
add_on_purchase
GraphQL 필드를 add_on_purchases
로 교체
- GitLab 17.4에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항을 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
GraphQL 필드 add_on_purchase
는 GitLab 17.4에서 사용 중단되며 GitLab 18.0에서 제거될 것입니다. 대신 add_on_purchases
필드를 사용하세요.
컨테이너 레지스트리 알림에 대해 threshold
를 maxretries
로 교체
- GitLab 17.1에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항을 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
컨테이너 레지스트리를 구성하여 레지스트리에서 발생하는 이벤트에 대한 웹후크 알림을 전송할 수 있습니다. 구성은 threshold
및 backoff
매개 변수를 사용하여 재시도하기 전에 허용되는 실패 횟수를 지정합니다.
문제는 이벤트가 성공할 때까지 메모리에 영원히 유지되거나 레지스트리가 종료될 때까지 유지된다는 것입니다. 이벤트가 제대로 전송되지 않으면 레지스트리 측에서 높은 메모리 및 CPU 사용을 유발할 수 있어 이상적이지 않습니다. 또한 이벤트 큐에 추가된 새로운 이벤트가 지연됩니다.
이벤트가 삭제되기 전에 재시도되는 횟수를 제어하기 위해 새 maxretries
매개 변수가 추가되었습니다. 따라서 이벤트가 메모리에 영원히 유지되지 않도록 하기 위해 threshold
매개 변수를 사용 중단하고 maxretries
로 대체하였습니다.
네임스페이스 GraphQL 필드 add_on_purchase
를 add_on_purchases
로 교체
- GitLab 17.5에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항을 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
네임스페이스 GraphQL 필드 add_on_purchase
는 GitLab 17.5에서 사용 중단되며 GitLab 18.0에서 제거됩니다. 대신 루트 add_on_purchases
필드를 사용하세요.
Runner active
GraphQL 필드가 paused
로 교체됨
- GitLab 14.8에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항을 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
GitLab GraphQL API 엔드포인트에서 active
식별자의 항목은 GitLab 18.0에서 paused
로 이름이 변경됩니다:
-
CiRunner
속성. -
runnerUpdate
뮤테이션의RunnerUpdateInput
입력 유형. -
runners
,Group.runners
, 및Project.runners
쿼리.
Kubernetes와의 자가 관리형 인증서 기반 통합
Kubernetes와의 인증서 기반 통합은 사용 중단 및 제거될 예정입니다.
자가 관리형 고객으로서, GitLab 15.0에서 귀하가 인증서 기반 통합을 유지할 수 있도록 기능 플래그 certificate_based_clusters
를 도입하고 있습니다. 그러나 이 기능 플래그는 기본적으로 비활성화되어 있으므로, 이 변경은 중대한 변경입니다.
GitLab 18.0에서 우리는 해당 기능과 관련된 코드를 모두 제거할 것입니다. 18.0의 최종 제거까지는 기능 플래그를 활성화하면 이 통합을 기반으로 한 기능은 계속 작동할 것입니다. 기능이 제거될 때까지 GitLab은 발생하는 보안 및 중요한 문제를 계속 해결할 것입니다.
Kubernetes와의 보다 강력하고, 안전하며, 향후 신뢰할 수 있는 통합을 위해, Kubernetes용 에이전트를 사용하여 Kubernetes 클러스터를 GitLab에 연결할 것을 권장합니다. 어떻게 마이그레이션하나요?
명시적인 제거 날짜가 설정되었지만, 새로운 솔루션이 기능적 동등성을 가질 때까지 이 기능을 제거할 계획은 없습니다.
제거에 대한 차단 요소에 대한 추가 정보는 이 이슈를 참조하세요.
이 사용 중단에 대한 업데이트 및 세부 정보를 보려면 이 에픽을 따르세요.
Slack 알림 통합
우리가 모든 Slack 기능을 GitLab for Slack 앱으로 통합하고 있으므로, Slack 알림 통합을 사용 중단했습니다.
Slack 작업 공간의 알림을 관리하려면 GitLab for Slack 앱을 사용하세요.
러너 등록 토큰을 재설정하는 REST API 엔드포인트 지원
러너 등록 토큰에 대한 지원이 사용 중단되었습니다. 그 결과, 등록 토큰을 재설정하는 REST API 엔드포인트도 사용 중단되며, GitLab 18.0에서 HTTP 410 Gone
상태 코드를 반환할 것입니다.
사용 중단된 엔드포인트는 다음과 같습니다:
POST /runners/reset_registration_token
POST /projects/:id/runners/reset_registration_token
POST /groups/:id/runners/reset_registration_token
우리는 새로운 GitLab Runner 토큰 아키텍처의 일환으로 러너를 GitLab 인스턴스에 바인딩하는 새로운 방법을 구현할 계획입니다.
이 작업은 이 에픽에서 계획되고 있습니다.
이 새로운 아키텍처는 러너 등록을 위한 새로운 방법을 소개하며 구형 러너 등록 토큰을 제거할 것입니다.
GitLab 18.0 이후로는 새로운 GitLab Runner 토큰 아키텍처에 의해 구현된 러너 등록 방법이 유일한 지원 방법이 될 것입니다.
GitLab 레거시 요구 사항 IID는 작업 항목 IID로 대체되었습니다
- GitLab 15.9에 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 중단 문제를 참조하세요.
요구 사항을 작업 항목 유형으로 이동함에 따라 새로운 IID로 전환하게 됩니다. 사용자는 레거시 IID에 대한 지원이 GitLab 18.0에서 종료되므로 새로운 IID를 사용해야 합니다. 레거시 요구 사항 IID는 GitLab 18.0에서 제거될 때까지 사용할 수 있습니다.
Project.services
GraphQL 필드가 중단됩니다
- GitLab 15.9에 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 중단 문제를 참조하세요.
Project.services
GraphQL 필드는 중단됩니다. 대신 문제 389904에서 Project.integrations
필드를 제안합니다.
ci_job_token_scope_enabled
프로젝트 API 속성이 중단됩니다
- GitLab 16.4에 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 중단 문제를 참조하세요.
GitLab 16.1에서 작업 토큰 범위를 위한 API 엔드포인트가 도입되었습니다. 프로젝트 API에서 ci_job_token_scope_enabled
속성은 중단되며 17.0에서 제거됩니다. 대신 작업 토큰 범위 API를 사용해야 합니다.
ciJobTokenScopeRemoveProject
에 대한 direction
GraphQL 인자가 중단됩니다
- GitLab 16.9에 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 중단 문제를 참조하세요.
ciJobTokenScopeRemoveProject
뮤테이션에 대한 direction
GraphQL 인자는 중단됩니다. GitLab 15.9에 발표된 기본 CI/CD 작업 토큰 범위 변경 이후, direction
인자는 기본적으로 INBOUND
로 설정되며 OUTBOUND
는 GitLab 17.0에서 더 이상 유효하지 않습니다. 우리는 GitLab 18.0에서 direction
인자를 제거할 것입니다.
direction
인자와 함께 OUTBOUND
를 사용하여 프로젝트의 토큰 접근 방향을 제어하는 경우, 작업 토큰을 사용하는 파이프라인은 인증 실패 위험이 있습니다. 파이프라인이 예상대로 계속 실행되도록 하려면, 반드시 다른 프로젝트를 프로젝트의 허용 목록에 추가해야 합니다.
heroku/builder:22
이미지가 더 이상 사용되지 않습니다
- GitLab 17.4에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 더 이상 사용되지 않는 문제를 참조하세요.
클라우드 네이티브 빌드팩(CNB) 빌더 이미지는 Auto DevOps 빌드 프로젝트에서 heroku/builder:24
로 업데이트되었습니다. 대부분의 경우 변경 사항이 중단될 것으로 예상하지 않지만, Auto DevOps의 일부 사용자에게는 특히 Auto Build 사용자의 경우 중단적인 변경 사항일 수 있습니다. 귀하의 작업 부하에 미치는 영향을 더 잘 이해하기 위해 다음을 검토하십시오:
이 변경 사항은 귀하의 파이프라인이 Auto DevOps의 Auto Build 단계에서 제공하는 auto-build-image
를 사용하는 경우에 영향을 미칩니다.
API에서 노트 기밀성 전환
- GitLab 14.10에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 더 이상 사용되지 않는 문제를 참조하세요.
REST 및 GraphQL API에서 노트 기밀성을 전환하는 기능이 더 이상 사용되지 않습니다. 노트 기밀 속성을 업데이트하는 것은 더 이상 지원되지 않습니다. 이는 경험을 단순화하고 개인 정보가 의도치 않게 노출되는 것을 방지하기 위해 변경되고 있습니다.
ZenTao 통합
- GitLab 15.7에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 더 이상 사용되지 않는 문제를 참조하세요.
ZenTao 제품 통합이 더 이상 사용되지 않으며 JiHu GitLab 코드베이스로 이동됩니다.
GITLAB_SHARED_RUNNERS_REGISTRATION_TOKEN
이 더 이상 사용되지 않음
- GitLab 16.11에서 발표됨
- GitLab 18.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 더 이상 사용되지 않는 문제를 참조하세요.
GITLAB_SHARED_RUNNERS_REGISTRATION_TOKEN
환경 변수가 더 이상 사용되지 않습니다. GitLab은 GitLab 15.8에서 새로운 GitLab Runner 토큰 아키텍처를 도입하여 러너 등록을 위한 새로운 방법을 제공하고 레거시 러너 등록 토큰을 제거했습니다. 새로운 워크플로로 마이그레이션하는 방법에 대한 안내는 문서를 참조하십시오.
ciJobTokenScopeAddProject
GraphQL 뮤테이션은 더 이상 사용되지 않습니다.
GitLab 18.0에서 CI/CD 작업 토큰의 예정된 기본 동작 변경에 따라, 관련 기능이 더 이상 제공되지 않기 때문에 ciJobTokenScopeAddProject
GraphQL 뮤테이션도 사용 중지됩니다.
ciUsedMinutes
GraphQL 필드가 ciDuration
으로 이름이 변경되었습니다.
CiRunnerUsage
및 CiRunnerUsageByProject
유형의 ciDuration
필드는 이전의 ciUsedMinutes
필드를 대체합니다.
이러한 유형에서 ciUsedMinutes
에 대한 모든 참조를 ciDuration
으로 업데이트하세요.
mergeTrainIndex
및 mergeTrainsCount
GraphQL 필드가 사용 중지되었습니다.
MergeRequest
의 GraphQL 필드 mergeTrainIndex
와 mergeTrainsCount
가 사용 중지되었습니다.
병합 요청이 병합 트레인에서의 위치를 확인하려면 MergeTrainCar
의 index
필드를 대신 사용하세요.
병합 트레인에 있는 MR의 수를 얻으려면 MergeTrains::TrainType
의 cars
에서 count
를 사용하세요.
require_password_to_approve
필드
GitLab 16.7에서는 승인을 위해 사용자 재인증 요구 기능을 위해 SAML SSO로 재인증할 수 있는 기능을 추가했습니다.
따라서 GitLab 18.0에서는 require_password_to_approve
필드를 제거합니다.
GitLab 17.1에서는 require_password_to_approve
필드를 대체하는 require_reauthentication_to_approve
필드를 추가했습니다.
가능한 빨리 새 필드로 전환하세요.
runnerRegistrationToken
매개변수 for GitLab Runner Helm Chart
- GitLab 15.6에 발표됨
- GitLab 18.0에 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 비권장 문제를 참조하세요.
runnerRegistrationToken
매개변수는 Kubernetes에서 러너를 설치하기 위해 GitLab Helm Chart를 사용하는 것이 더 이상 권장되지 않습니다.
우리는 새로운 GitLab Runner token architecture의 일환으로 runnerToken
을 사용하여 러너를 GitLab 인스턴스에 바인딩하는 새로운 방법을 구현할 계획입니다.
작업은 이 에픽에서 계획되어 있습니다.
GitLab 18.0 이후부터는 새로운 GitLab Runner 토큰 아키텍처에 의해 도입된 러너 등록 방법만이 지원되는 방법이 될 것입니다.
incoming_email
및 service_desk_email
에 대한 sidekiq
전송 방법이 더 이상 권장되지 않습니다
- GitLab 16.0에 발표됨
- GitLab 18.0에 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 비권장 문제를 참조하세요.
incoming_email
과 service_desk_email
에 대한 sidekiq
전송 방법은 더 이상 권장되지 않으며 GitLab 18.0에서 제거될 예정입니다.
GitLab은 이메일을 수신하기 위해 mail_room
이라는 별도의 프로세스를 사용합니다. 현재, GitLab 관리자는 GitLab 인스턴스를 sidekiq
또는 webhook
전송 방법을 사용하도록 구성할 수 있습니다.
더 이상 권장되지 않는 sidekiq
전송 방법을 사용하면, mail_room
은 작업 데이터를 GitLab Redis 큐에 직접 기록합니다. 이는 전송 방법과 Redis 구성 간의 강한 결합을 의미합니다. 또 다른 단점은 작업 페이로드 압축과 같은 프레임워크 최적화를 놓치게 됩니다.
webhook
전송 방법을 사용하면, mail_room
은 수신한 이메일 본문을 GitLab API에 푸시합니다. 이렇게 하면 mail_room
은 Redis 구성을 알 필요가 없으며 GitLab 애플리케이션이 처리 작업을 추가합니다. mail_room
은 공유 비밀 키로 인증됩니다.
Omnibus 설치를 재구성하면 이 비밀 키 파일이 자동으로 생성되므로 비밀 파일 구성 설정이 필요하지 않습니다.
아래와 같은 명령을 실행하여 사용자 정의 비밀 키 파일(32자 base 64로 인코딩됨)을 구성하고 incoming_email_secret_file
및 service_desk_email_secret_file
에서 비밀 파일을 참조할 수 있습니다(항상 절대 경로를 지정해야 함):
echo $( ruby -rsecurerandom -e "puts SecureRandom.base64(32)" ) > ~/.gitlab-mailroom-secret
GitLab을 여러 머신에서 실행하는 경우 각 머신에 대해 비밀 키 파일을 제공해야 합니다.
우리는 GitLab 관리자가 sidekiq
대신 incoming_email_delivery_method
및 service_desk_email_delivery_method
에 대해 webhook 전송 방법으로 전환하도록 권장합니다.
Issue 393157는 일반적으로 이메일 수신 개선을 추적합니다.
우리는 이것이 인프라 설정을 간소화하고 GitLab 관리 방식을 개선하는 데 도움이 되기를 희망합니다.
workflow:rules
템플릿
workflow:rules
템플릿은 사용 중단되었으며 더 이상 추천되지 않습니다. 이러한 템플릿을 사용하면 파이프라인의 유연성이 크게 제한되며 새로운 workflow
기능을 사용하기 어려워집니다.
이는 CI/CD 구성 요소의 선호를 위한 CI/CD 템플릿에서 벗어나는 작은 단계입니다. 교체품을 찾으려면 CI/CD 카탈로그를 검색하거나 파이프라인에 workflow:rules
를 명시적으로 추가하세요.
GitLab 17.7
TLS 1.0 및 1.1 더 이상 지원되지 않음
- GitLab 17.4에서 발표됨
- GitLab 17.7에서 제거됨
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 이슈를 참조하세요.
OpenSSL 버전 1.1.1의 장기 지원(LTS)는 2023년 9월에 종료되었습니다. 따라서 GitLab 17.7에서는 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에서 삭제됨
- 이 변경 사항에 대해 논의하거나 더 알아보려면 중단 이슈를 참조하십시오.
우리는 파이프라인 보기에서 Needs 탭을 제거합니다. 이 탭은 Job dependencies 그룹화 옵션으로 표시되는 정보와 중복됩니다. 앞으로도 기본 파이프라인 그래프의 보기를 개선해 나갈 것입니다.
GitLab 17.3
FIPS 준수 보안 분석기가 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
공개 프로젝트에 대한 ‘repository_download_operation’ 감사 이벤트 유형
감사 이벤트 유형 repository_download_operation
은 현재 모든 프로젝트 다운로드에 대해 데이터베이스에 저장됩니다. 이는 공개 프로젝트와 개인 프로젝트 모두에 해당됩니다.
공개 프로젝트의 경우, 이 감사 이벤트는 비인증 사용자에 의해 발생할 수 있기 때문에 감사 목적으로 가장 유용하지 않습니다.
GitLab 17.0부터 repository_download_operation
감사 이벤트 유형은 개인 또는 내부 프로젝트에 대해서만 트리거됩니다. 공개 프로젝트 다운로드를 위한 새로운 감사 이벤트 유형인 public_repository_download_operation
이 추가될 것입니다. 이 새로운 감사 이벤트 유형은 스트리밍 전용입니다.
Kubernetes용 에이전트 옵션 ca-cert-file
이름 변경
- GitLab 16.9에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 탈퇴 이슈를 참조하세요.
Kubernetes를 위한 GitLab 에이전트(agentk)에서, --ca-cert-file
명령줄 옵션과 해당하는 config.caCert
헬름 차트 값이 각각 --kas-ca-cert-file
및 config.kasCaCert
로 이름이 변경되었습니다.
이전의 --ca-cert-file
및 config.caCert
옵션은 사용 중단되며, GitLab 17.0에서 제거됩니다.
Herokuish에 대한 Auto DevOps 지원 사용 중단
- GitLab 15.8에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 탈퇴 이슈를 참조하세요.
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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 탈퇴 이슈를 참조하세요.
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에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 제거 이슈를 참조하세요.
CiRunner.projects
의 필드 기본 정렬 순서 값이 id_asc
에서 id_desc
로 변경됩니다.
반환되는 프로젝트의 순서가 id_asc
에 의존하는 경우, 스크립트를 명시적으로 변경하세요.
일반 설정에서의 규정 준수 프레임워크
- GitLab 16.9에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 제거 이슈를 참조하세요.
규정 준수 프레임워크 관리를 Compliance Center의 프레임워크 및 프로젝트 보고서로 이동했습니다.
따라서 GitLab 17.0에서는 그룹 및 프로젝트의 일반 설정 페이지에서 규정 준수 프레임워크 관리가 제거됩니다.
Swift 및 OSS 스토리지 드라이버에 대한 컨테이너 레지스트리 지원
- GitLab 16.6에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 제거 이슈를 참조하세요.
컨테이너 레지스트리는 다양한 객체 스토리지 플랫폼과 작업하기 위해 스토리지 드라이버를 사용합니다. 각 드라이버의 코드는 상대적으로 자기 포함적이지만, 이러한 드라이버는 높은 유지 관리 부담이 있습니다. 각 드라이버 구현은 고유하며 드라이버에 대한 변경은 특정 드라이버에 대한 높은 수준의 도메인 전문 지식이 필요합니다.
유지 관리 비용을 줄이기 위해 OSS(객체 스토리지 서비스) 및 OpenStack Swift의 지원을 중단하고 있습니다. 두 가지 모두 이미 업스트림 Docker Distribution에서 제거되었습니다. 이는 컨테이너 레지스트리를 객체 스토리지 지원과 관련하여 더 넓은 GitLab 제품 제공과 일치시키는 데 도움이 됩니다.
OSS는 S3 호환 모드를 제공하므로 지원되는 드라이버로 마이그레이션할 수 없는 경우 이를 사용하는 것을 고려하세요. Swift는 S3 스토리지 드라이버에서 요구하는 S3 API 작업과 호환됩니다.
DAST ZAP 고급 구성 변수 사용 중단
GitLab 15.7의 새로운 브라우저 기반 DAST 분석기를 GA로 출시함에 따라, 앞으로 일정 시점에서 기본 DAST 분석기로 만들기 위해 노력하고 있습니다. 이를 준비하기 위해, 다음의 레거시 DAST 변수가 사용 중단되며 GitLab 17.0에서 제거될 예정입니다: DAST_ZAP_CLI_OPTIONS
및 DAST_ZAP_LOG_CONFIGURATION
. 이 변수들은 OWASP ZAP을 기반으로 한 레거시 DAST 분석기의 고급 구성을 허용하였습니다. 새로운 브라우저 기반 분석기는 ZAP의 작동 방식에 특화된 기능을 포함하지 않을 것입니다.
이 세 가지 변수는 GitLab 17.0에서 제거될 것입니다.
의존성 스캐닝 잘못된 SBOM 메타데이터 속성
GitLab 17.0은 CycloneDX SBOM 보고서에서 다음 메타데이터 속성에 대한 지원을 제거합니다:
gitlab:dependency_scanning:input_file
gitlab:dependency_scanning:package_manager
이 속성들은 GitLab 15.7에 의존성 스캐닝에서 생성된 SBOM에 추가되었습니다. 그러나 이 속성들은 잘못되었으며 GitLab CycloneDX 속성 분류법과 일치하지 않았습니다. 다음의 올바른 속성이 GitLab 15.11에 추가되어 이를 해결하였습니다:
gitlab:dependency_scanning:input_file:path
gitlab:dependency_scanning:package_manager:name
잘못된 속성은 이전 호환성을 위해 유지되었습니다. 이제 사용 중단되며 17.0에서 제거될 것입니다.
sbt 1.0.X에 대한 의존성 스캐닝 지원
매우 오래된 버전의 sbt 지원은 이 패키지 관리자에 대한 추가 사용 사례의 지원을 개선하는 것을 방해하고 있으며, 유지 관리 비용이 증가하지 않고는 불가능합니다.
sbt의 1.1.0 버전은 6년 전에 출시되었으며, 사용자는 1.0.x에서 업그레이드할 것을 권장합니다. 의존성 스캐닝은 더 이상 작동하지 않습니다.
GraphQL 필드의 사용 중단 - 임시 저장소 증가와 관련된 필드
- GitLab 16.7에서 발표
- GitLab 17.0에서 제거
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
GraphQL 필드인 isTemporaryStorageIncreaseEnabled
및 temporaryStorageIncreaseEndsOn
가 사용 중단되었습니다. 이 GraphQL 필드는 임시 저장소 증가 프로젝트와 관련이 있습니다. 해당 프로젝트는 취소되었으며 필드는 사용되지 않았습니다.
Grype 스캐너 사용 중단 - 컨테이너 스캐닝
GitLab Container Scanning 분석기에서 Grype 스캐너에 대한 지원은 GitLab 16.9에서 사용 중단되었습니다.
GitLab 17.0부터 Grype 분석기는 유지 관리되지 않으며, 제한된 수정 사항만 제공됩니다. 자세한 내용은 지원 성명서를 참조하세요.
사용자는 Trivy 스캐너를 사용하는 기본 설정인 CS_ANALYZER_IMAGE
를 사용할 것이 권장됩니다.
Grype 분석기 이미지의 현재 주요 버전은 GitLab 19.0까지 최신 자문 데이터베이스 및 운영 체제 패키지가 업데이트됩니다. 그 이후에는 분석기가 작동하지 않게 됩니다.
19.0 이후에도 Grype를 계속 사용하고자 하는 경우, 보안 스캐너 통합 문서를 참고하여 GitLab과의 통합을 만드는 방법을 알아보세요.
라이선스 스캐닝 CI 템플릿 사용 중단
GitLab 17.0에서는 라이선스 스캐닝 CI 템플릿이 제거됩니다:
Jobs/License-Scanning.gitlab-ci.yml
Jobs/License-Scanning.latest.gitlab-ci.yml
Security/License-Scanning.gitlab-ci.yml
위의 템플릿 중 하나가 포함된 CI 구성은 GitLab 17.0에서 작동하지 않게 됩니다.
사용자는 CycloneDX 파일의 라이선스 스캐닝을 사용하는 것이 권장됩니다.
의존성 스캐닝 및 라이선스 스캐닝에서 Python 3.9 사용 중단
GitLab 16.9부터 의존성 스캐닝 및 라이선스 스캐닝에서 Python 3.9에 대한 지원이 사용 중단됩니다. GitLab 17.0에서는 Python 3.10이 의존성 스캐닝 CI/CD 작업의 기본 버전입니다.
GitLab 17.0부터 의존성 스캐닝 및 라이선스 스캐닝 기능은 호환되는 lockfile가 없는 Python 3.9를 요구하는 프로젝트를 지원하지 않습니다.
GitLab Runner에서 Windows CMD 사용 중단
GitLab 11.11에서 Windows Batch 실행기는 PowerShell을 선호하여 GitLab Runner에서 CMD 셸의 사용이 중단되었습니다. 그 이후로 CMD 셸은 GitLab Runner에서 계속 지원되었습니다. 그러나 이로 인해 엔지니어링 팀과 Windows에서 Runner를 사용하는 고객 모두에게 추가적인 복잡성이 발생했습니다. 우리는 GitLab Runner에서 Windows CMD에 대한 지원을 17.0에서 완전히 제거할 계획입니다. 고객은 셸 실행기로 Windows에서 실행기를 사용할 때 PowerShell을 사용해야 합니다. 고객은 제거 이슈인 이슈 29479에서 피드백을 제공하거나 질문할 수 있습니다.
CiRunner
GraphQL 필드 중복되어 CiRunnerManager
에서 사용 중단
이 필드들(architectureName
, ipAddress
, platformName
, revision
, version
)은 러너 구성 내에서 그룹화된 러너 관리자 도입으로 인해 GraphQL CiRunner
유형에서 이제 사용 중단됩니다.
Terraform 모듈 CI/CD 템플릿에서 fmt
작업 사용 중단
- GitLab 16.9에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶다면 사용 중단 문제를 참조하세요.
Terraform 모듈 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
템플릿을 사용할 수도 있습니다.
취약성 관리 기능에서 message
필드 사용 중단
- GitLab 16.1에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶다면 사용 중단 문제를 참조하세요.
이 MR은 VulnerabilityCreate
GraphQL 변형에서 message
필드를 사용 중단하며, 취약성 내보내기의 AdditionalInfo
열에서도 사용 중단됩니다.
메시지 필드는 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 작업자 팟의 정리 및 종료를 관리하기 위해 고객은 대신 cleanupGracePeriodSeconds
및 podTerminationGracePeriodSeconds
를 구성해야 합니다. cleanupGracePeriodSeconds
및 podTerminationGracePeriodSeconds
를 사용하는 방법에 대한 정보는 GitLab Runner Executor 문서를 참조하세요.
version
필드 사용 중단 및 feature flag API
- GitLab 16.9에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 중단 문제를 참조하세요.
feature flag REST API에서 version
필드는 사용 중단되며, GitLab 17.0에서 제거될 예정입니다.
version
필드가 제거된 후에는 레거시 feature flags를 생성할 방법이 없습니다.
Developer 역할에서 취약성 상태 변경 사용 중단
- GitLab 16.4에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 중단 문제를 참조하세요.
개발자가 취약성의 상태를 변경할 수 있는 기능이 이제 사용 중단되었습니다. 우리는 다가오는 GitLab 17.0 릴리스를 통해 이 기능을 개발자 역할에서 제거하는 중단 사항을 계획하고 있습니다. 개발자에게 이 권한을 계속 부여하고자 하는 사용자들은 사용자 지정 역할을 생성하고 admin_vulnerability
권한을 추가하여 이 접근 권한을 부여할 수 있습니다.
Self-managed에서 그룹 소유자에 대한 사용자 지정 역할 생성 사용 중단
- GitLab 16.9에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 중단 문제를 참조하세요.
self-managed GitLab 17.0에서, 그룹 소유자에 대한 사용자 지정 역할 생성은 제거될 예정입니다. 이 기능은 관리자를 위한 인스턴스 수준으로 이동할 것입니다.
그룹 소유자는 그룹 수준에서 사용자 지정 역할을 할당할 수 있습니다.
GitLab.com의 그룹 소유자는 사용자 지정 역할을 계속 관리하고 그룹 수준에서 할당할 수 있습니다.
사용자 지정 역할을 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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 이슈를 참조하세요.
GraphQL 필드 Vulnerability.hasSolutions
는 사용 중단되며 GitLab 17.0에서 제거됩니다.
대신 Vulnerability.hasRemediations
를 사용하세요.
레거시 셸 이스케이프 및 인용 러너 셸 실행기 사용 중단
- GitLab 15.11에서 발표됨
- GitLab 17.0에서 제거됨
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 이슈를 참조하세요.
러너의 레거시 이스케이프 시퀀스 메커니즘은 변수 확장을 처리하기 위해 최적이 아닌 Ansi-C 인용 구현을 구현합니다. 이 방법은 러너가 큰따옴표에 포함된 인수를 확장할 것임을 의미합니다. 15.11부터 러너 셸 실행기에서 레거시 이스케이프 및 인용 방법을 사용 중단하고 있습니다.
로그인 페이지의 사용자 지정 텍스트와 관련된 매개변수 사용 중단
- GitLab 16.2에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 이슈를 참조하세요.
매개변수 sign_in_text
와 help_text
는 Settings API에서 사용 중단됩니다. 로그인 및 가입 페이지에 사용자 지정 텍스트를 추가하려면 Appearance API의 description
필드를 사용하세요.
Windows Server 2019의 사용 중단 및 2022로 전환
- GitLab 16.9에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 이슈를 참조하세요.
최근 우리는 Windows SaaS 러너를 위한 Windows Server 2022의 배포를 발표했습니다 (Beta). 이를 통해 GitLab 17.0에서 Windows 2019의 사용을 중단하고 있습니다.
Windows 2022로의 마이그레이션 방법에 대한 자세한 내용은 GitLab SaaS 러너를 위한 Windows 2022 지원이 이제 가능를 참조하세요.
DingTalk OmniAuth 공급자
- GitLab 15.10에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 deprecation issue를 참조하세요.
GitLab에 DingTalk OmniAuth 공급자를 제공하는 omniauth-dingtalk
gem은 다음 주요 릴리즈인 GitLab 17.0에서 제거됩니다. 이 gem은 사용률이 매우 낮으며 JiHu 에디션에 더 적합합니다.
Gitaly 구성의 중복 저장소
- GitLab 16.10에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 deprecation issue를 참조하세요.
같은 저장소 경로를 가리키는 여러 Gitaly 저장소를 구성하는 것은 더 이상 지원되지 않으며 GitLab 17.0에서 제거됩니다.
GitLab 17.0 및 이후 버전에서는 이러한 유형의 구성이 오류를 발생시킬 것입니다.
이러한 유형의 구성이 백그라운드 리포지토리 유지 관리에 문제를 일으킬 수 있으며 나중의 Gitaly 저장소 구현과 호환되지 않기 때문에 해당 지원을 제거합니다.
인스턴스 관리자는 gitlab.rb
구성 파일의 gitaly['configuration']
섹션에서 storage
항목을 업데이트하여 각 저장소가 고유한 경로로 구성되도록 해야 합니다.
다운스트림 파이프라인에서 파일 유형 변수 확장 수정
- GitLab 16.6에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 deprecation issue를 참조하세요.
이전에 파일 유형 CI/CD 변수를 다른 CI/CD 변수에서 참조하면 CI/CD 변수는 파일의 내용을 포함하도록 확장되었습니다.
이 동작은 일반적인 셸 변수 확장 규칙을 준수하지 않기 때문에 올바르지 않았습니다. CI/CD 변수 참조는 파일의 내용이 아닌 파일 경로만 포함하도록 확장되어야 합니다. 이 문제는 GitLab 15.7에서 대부분의 사용 사례에 대해 수정되었습니다. 불행히도, CI/CD 변수를 다운스트림 파이프라인에 전달하는 것은 아직 수정되지 않은 엣지 케이스였으나, 이제 GitLab 17.0에서 수정됩니다.
이 변경으로 인해 .gitlab-ci.yml
파일에 구성된 변수가 파일 변수를 참조하고 다운스트림 파이프라인에 전달될 수 있으며, 파일 변수도 다운스트림 파이프라인에 전달됩니다.
다운스트림 파이프라인은 변수 참조를 파일 경로로 확장하며, 파일 내용은 포함하지 않습니다.
이 breaking change는 다운스트림 파이프라인에서 파일 변수를 확장하는 데 의존하는 사용자 프로세스에 문제가 될 수 있습니다.
Geo: 디자인 및 프로젝트에 대한 레거시 복제 세부정보 경로 사용 중단
- GitLab 16.4에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 사용 중단 이슈를 참조하세요.
레거시 데이터 유형을 Geo 셀프 서비스 프레임워크로 마이그레이션하는 과정에서 다음 복제 세부정보 경로가 사용 중단됩니다:
- 디자인
/admin/geo/replication/designs
는/admin/geo/sites/<Geo Node/Site ID>/replication/design_management_repositories
로 대체됩니다. - 프로젝트
/admin/geo/replication/projects
는/admin/geo/sites/<Geo Node/Site ID>/replication/projects
로 대체됩니다.
GitLab 16.4에서 17.0까지 레거시 경로에 대한 조회는 자동으로 새 경로로 리디렉션됩니다. 우리는 17.0에서 리디렉션을 제거할 예정입니다. 레거시 경로를 사용할 수 있는 북마크나 스크립트를 업데이트 해주세요.
GitLab Helm 차트 값 gitlab.kas.privateApi.tls.*
사용 중단
- GitLab 15.8에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 사용 중단 이슈를 참조하세요.
우리는 KAS와 Helm 차트 구성 요소 간의 TLS 통신을 용이하게 하기 위해 global.kas.tls.*
Helm 값을 도입했습니다.
이전 값인 gitlab.kas.privateApi.tls.enabled
및 gitlab.kas.privateApi.tls.secretName
는 사용 중단되며 GitLab 17.0에서 제거될 예정입니다.
새 값이 KAS에 대한 TLS를 활성화하기 위한 간소화된 포괄적인 방법을 제공하므로 gitlab.kas.privateApi.tls.*
대신 global.kas.tls.*
를 사용해야 합니다. gitlab.kas.privateApi.tls.*
에 대한 추가 정보는 다음을 참조하세요:
-
global.kas.tls.*
값을 도입하는 병합 요청. -
사용 중단된
gitlab.kas.privateApi.tls.*
문서. -
새
global.kas.tls.*
문서.
GitLab Runner 출처 메타데이터 SLSA v0.2 성명서
- GitLab 16.8에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 사용 중단 이슈를 참조하세요.
러너는 출처 메타데이터를 생성하며 현재 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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecation issue를 참조하세요.
GitLab 17.0부터 GraphQL 접근을 이미 문서화된 지원되는 토큰 유형을 통해서만 제한합니다.
문서화된 지원되는 토큰 유형을 이미 사용하는 고객에게는 breaking change가 없습니다.
GraphQL networkPolicies
리소스 사용 중단
- GitLab 14.8에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecation issue를 참조하세요.
networkPolicies
GraphQL 리소스는 사용 중단되었으며 GitLab 17.0에서 제거될 예정입니다. GitLab 15.0 이후 이 필드는 데이터가 반환되지 않았습니다.
dependencyProxyTotalSizeInBytes
필드의 GraphQL 사용 중단
- GitLab 16.1에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecation issue를 참조하세요.
GraphQL을 사용하여 GitLab Dependency Proxy에서 사용되는 저장 공간의 양을 쿼리할 수 있습니다. 그러나 dependencyProxyTotalSizeInBytes
필드는 ~2Gb(바이트 단위)로 제한되어 있어 Dependency Proxy에는 항상 충분하지 않을 수 있습니다. 따라서 dependencyProxyTotalSizeInBytes
는 사용 중단되며 GitLab 17.0에서 제거될 예정입니다.
대신 GitLab 16.1에 도입된 dependencyProxyTotalSizeBytes
를 사용하세요.
노트의 GraphQL 필드 confidential
이 internal
로 변경됨
- GitLab 15.5에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecation issue를 참조하세요.
Note
의 confidential
필드는 사용 중단되며 internal
로 이름이 변경됩니다.
GraphQL 필드 registrySizeEstimated
가 더 이상 사용되지 않습니다
명확성을 위해, GraphQL 필드 registrySizeEstimated
는 대응하는 필드와 일치하도록 containerRegistrySizeIsEstimated
로 이름이 변경되었습니다.
registrySizeEstimated
는 GitLab 16.2에서 더 이상 사용되지 않으며 GitLab 17.0에서 제거될 것입니다.
대신 GitLab 16.2에서 도입된 containerRegistrySizeIsEstimated
를 사용하세요.
GraphQL 필드 totalWeight
가 더 이상 사용되지 않습니다
GraphQL을 사용하여 이슈 보드의 총 이슈 무게를 쿼리할 수 있습니다.
하지만, totalWeight
필드는 최대 크기가 2147483647로 제한되어 있습니다.
그 결과, totalWeight
는 더 이상 사용되지 않으며 GitLab 17.0에서 제거될 것입니다.
대신 GitLab 16.2에서 도입된 totalIssueWeight
를 사용하세요.
GraphQL 타입, RunnerMembershipFilter
가 CiRunnerMembershipFilter
로 이름이 변경되었습니다
GraphQL 타입 RunnerMembershipFilter
는 CiRunnerMembershipFilter
로 이름이 변경되었습니다. GitLab 17.0에서는
RunnerMembershipFilter
타입의 별칭이 제거됩니다.
GraphQL: SharedRunnersSetting
enum의 DISABLED_WITH_OVERRIDE
값이 더 이상 사용되지 않습니다
GitLab 17.0에서는 SharedRunnersSetting
GraphQL enum 타입의 DISABLED_WITH_OVERRIDE
값이 제거됩니다.
대신 DISABLED_AND_OVERRIDABLE
을 사용하세요.
GraphQL: canDestroy
및 canDelete
지원 중단
- GitLab 16.6에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 중단 이슈를 참조하세요.
패키지 레지스트리 사용자 인터페이스는 GitLab GraphQL API에 의존합니다. 모든 사람이 쉽게 기여할 수 있도록, 프론트엔드는 GitLab의 모든 제품 영역에서 일관되게 코딩되는 것이 중요합니다. 하지만 GitLab 16.6 이전에는 패키지 레지스트리 UI가 제품의 다른 영역과 다르게 권한을 처리했습니다.
16.6에서는 패키지 레지스트리를 GitLab의 나머지 부분과 일치시키기 위해 Types::PermissionTypes::Package
유형 아래에 새로운 UserPermissions
필드를 추가했습니다. 이 새로운 필드는 Package
, PackageBase
및 PackageDetailsType
유형 아래의 canDestroy
필드를 대체합니다. 또한 ContainerRepository
, ContainerRepositoryDetails
및 ContainerRepositoryTag
에 대한 canDelete
필드도 대체합니다. GitLab 17.0에서는 canDestroy
및 canDelete
필드가 제거됩니다.
이는 17.0에서 완료되는 breaking change입니다.
HashiCorp Vault 통합은 기본적으로 더 이상 CI_JOB_JWT
CI/CD 작업 토큰을 사용하지 않습니다
- GitLab 15.9에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 중단 이슈를 참조하세요.
JWT 및 OIDC를 사용하여 CI 워크플로우의 보안을 개선하기 위한 노력의 일환으로, 네이티브 HashiCorp 통합 또한 GitLab 16.0에서 업데이트되고 있습니다. Vault에서 비밀을 검색하기 위해 secrets:vault
키워드를 사용하는 모든 프로젝트는 ID 토큰을 사용하도록 구성해야 합니다. ID 토큰은 15.7에서 도입되었습니다.
이 변경 사항을 준비하기 위해 새로운 id_tokens
키워드를 사용하고 aud
클레임을 구성하세요. 바인딩된 청중이 https://
로 접두사가 붙어 있는지 확인하세요.
GitLab 15.9부터 15.11까지는 이전 토큰이 모든 작업에 노출되는 것을 방지하고 secrets:vault
키워드에 대한 ID 토큰 인증을 활성화하는 JSON 웹 토큰(JWT) 접근 제한 설정을 활성화할 수 있습니다.
GitLab 16.0 이상에서는:
- 이 설정이 제거됩니다.
-
id_tokens
키워드를 사용하는 CI/CD 작업은secrets:vault
와 함께 ID 토큰을 사용할 수 있으며,CI_JOB_JWT*
토큰은 사용할 수 없습니다. -
id_tokens
키워드를 사용하지 않는 작업은 GitLab 17.0까지CI_JOB_JWT*
토큰을 계속 사용할 수 있습니다.
Heroku 이미지 업그레이드 자동 DevOps 빌드
GitLab 17.0에서 auto-build-image
프로젝트는 heroku/builder:20
이미지에서 heroku/builder:22
이미지로 업그레이드됩니다.
새 이미지를 테스트하려면 CI/CD 변수 AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDER
를
heroku/builder:22
로 설정하세요.
GitLab 17.0 이후에도 heroku/builder:20
을 계속 사용하려면,
AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDER
를 heroku/builder:20
으로 설정하세요.
내부 컨테이너 레지스트리 API 태그 삭제 엔드포인트
Docker Registry HTTP API V2 Spec는 이후 OCI Distribution Spec로 대체되었으며, 태그 삭제 작업을 포함하지 않았습니다. 동일한 결과를 얻기 위해 안전하지 않고 느린 우회 방법(태그가 아닌 매니페스트 삭제를 포함하는)을 사용해야 했습니다.
태그 삭제는 중요한 기능이므로, GitLab 컨테이너 레지스트리에 태그 삭제 작업을 추가하였고, V2 API를 Docker 및 OCI 배포 사양의 범위를 넘어 확장하였습니다.
그 후, 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에서 제거될 예정입니다.
이 엔드포인트는 내부 컨테이너 레지스트리 애플리케이션 API에서 사용되며, 공개 GitLab 컨테이너 레지스트리 API에서는 사용되지 않습니다. 대부분의 컨테이너 레지스트리 사용자에게는 별도의 조치가 필요하지 않습니다. 태그 삭제와 관련된 모든 GitLab UI 및 API 기능은 새로운 OCI 호환 엔드포인트로 전환하면서도 유지될 것입니다.
내부 컨테이너 레지스트리 API에 접근하고 원래 태그 삭제 엔드포인트를 사용하는 경우, 새로운 엔드포인트로 업데이트해야 합니다.
JWT /-/jwks
인스턴스 엔드포인트는 더 이상 사용되지 않습니다
- GitLab 16.7에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 사용 중지 문제를 참조하세요.
구형 JSON 웹 토큰 버전의 사용 중지와 함께, /oauth/discovery/keys
의 별칭인 관련 /-/jwks
엔드포인트는 더 이상 필요하지 않으며 제거될 예정입니다. /-/jwks
의 사용을 모두 제거해 주세요. 예를 들어 https://gitlab.example.com/-/jwks
를 https://gitlab.example.com
으로 변경하세요.
레거시 Geo Prometheus 메트릭
- GitLab 16.6에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 사용 중지 문제를 참조하세요.
프로젝트를 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 |
사용 가능한 대체 없음 |
라이센스 목록은 더 이상 사용되지 않습니다
- GitLab 16.8에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 사용 중지 문제를 참조하세요.
오늘날 GitLab에서는 프로젝트와 해당 라이센스를 사용하는 구성 요소의 모든 라이센스를 라이센스 목록에서 확인할 수 있습니다. 16.8부터 라이센스 목록은 더 이상 사용되지 않으며 17.0에서 제거될 예정이다.
그룹 의존성 목록이 출시되고 프로젝트 및 그룹 의존성 목록에서 라이센스를 필터링할 수 있는 기능이 제공됨에 따라, 이제 의존성 목록에서 프로젝트 또는 그룹이 사용하는 모든 라이센스에 접근할 수 있습니다.
sbt 1.0.X에 대한 라이선스 스캐닝 지원
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 및 이후 버전에 대비하기 위해:
-
GitLab 인스턴스가 실행되는 서버를 Ubuntu 18.04에서 Ubuntu 20.04 또는 Ubuntu 22.04로 이동하십시오.
-
현재 사용 중인 Ubuntu 버전의 Linux 패키지를 사용하여 GitLab 인스턴스를 업그레이드하십시오.
저장소 디렉터리 목록 Rake 작업
gitlab-rake gitlab:list_repos
Rake 작업은 작동하지 않으며 GitLab 17.0에서 제거될 예정입니다.
GitLab을 마이그레이션 하는 경우 백업 및 복원을 사용하십시오.
GraphQL API를 사용하여 패키지 설정을 변경할 수 있는 Maintainer 역할
GraphQL API를 사용하여 그룹의 Packages and registries 설정을 변경할 수 있는 Maintainer 역할을 가진 사용자는 GitLab 15.8에서 폐기되며 GitLab 17.0에서 제거될 예정입니다. 이 설정에는 다음이 포함됩니다:
GitLab 17.0 및 이후 버전에서는 그룹의 Packages and registries 설정을 변경하려면 GitLab UI 또는 GraphQL API를 사용하여 Owner 역할이 필요합니다.
Maven 3.8.8 미만 버전의 의존성 스캐닝 및 라이센스 스캐닝 지원
- GitLab 16.9에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 폐기 이슈를 참조하세요.
GitLab 17.0은 Maven 3.8.8 미만 버전의 의존성 스캐닝 및 라이센스 스캐닝 지원을 중단합니다.
사용자는 3.8.8 이상의 버전으로 업그레이드할 것을 권장합니다.
Sidekiq 옵션의 최소 및 최대 동시성
- GitLab 16.9에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 폐기 이슈를 참조하세요.
-
Linux 패키지(Omnibus) 설치의 경우,
sidekiq['min_concurrency']
및sidekiq['max_concurrency']
설정은 GitLab 16.9에서 폐기되며 GitLab 17.0에서 제거됩니다.GitLab 16.9 및 이후 버전에서는
sidekiq['concurrency']
를 사용하여 각 프로세스의 스레드 수를 명시적으로 설정할 수 있습니다.위의 변경 사항은 Linux 패키지(Omnibus) 설치에만 적용됩니다.
-
GitLab Helm 차트 설치의 경우,
sidekiq
하위 차트에extraEnv
로SIDEKIQ_CONCURRENCY_MIN
및/또는SIDEKIQ_CONCURRENCY_MAX
를 전달하는 것은 GitLab 16.10에서 폐기되며 GitLab 17.0에서 제거됩니다.각 프로세스에서 스레드 수를 명시적으로 설정하려면
concurrency
옵션을 사용할 수 있습니다.
/users
REST API 끝점의 오프셋 페이징이 폐기되었습니다
- GitLab 16.5에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 폐기 이슈를 참조하세요.
/users
REST API의 오프셋 페이징은 GitLab 16.5에서 폐기되었으며 GitLab 17.0에서 제거됩니다. 대신 키셋 페이징을 사용하십시오.
JSON 웹 토큰의 이전 버전은 더 이상 사용되지 않습니다.
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
클레임은 이제 전적으로 정규화된 도메인 이름을 사용하며, 예를 들어 https://example.com
과 같이, 이전에 CI_JOB_JWT_V2
토큰과 함께 도입되었습니다.
GitLab 15.9에서 15.11까지는, 이전 토큰이 어떤 작업에도 노출되지 않도록 방지하고,
secrets:vault
키워드에 대한 ID 토큰 인증을 활성화하는
JSON 웹 토큰(JWT) 액세스 제한 설정을 활성화할 수 있습니다.
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은 더 이상 사용되지 않습니다.
OmniAuth Facebook 지원은 GitLab 17.0에서 제거됩니다. 마지막 젬 릴리스는 2021년에 있었으며 현재 유지 관리되지 않고 있습니다.
현재 사용률은 0.1% 미만입니다. OmniAuth Facebook을 사용하는 경우, 지원이 제거되기 전에 지원되는 제공자로 전환하세요.
API 페이로드의 패키지 파이프라인은 페이지 매김됨
- GitLab 14.5에 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알고 싶다면 사용 중단 이슈를 참조하세요.
/api/v4/projects/:id/packages
에 대한 API 요청은 패키지의 페이지 매김된 결과를 반환합니다. 각 패키지는 이 응답에서 모든 파이프라인을 나열합니다. 이는 패키지가 수백 개 또는 수천 개의 연결된 파이프라인을 가질 수 있으므로 성능 문제를 야기합니다.
마일스톤 17.0에서 API 응답에서 pipelines
속성이 제거됩니다.
</div>
PostgreSQL 13 지원 중단
- GitLab 16.0에 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알고 싶다면 사용 중단 이슈를 참조하세요.
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에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알고 싶다면 사용 중단 이슈를 참조하세요.
GitLab 17.0부터 프록시 기반 DAST는 지원되지 않습니다. 동적 분석을 통해 프로젝트의 보안 발견 사항을 계속 분석하려면 브라우저 기반 DAST로 마이그레이션하십시오. 침해 및 공격 시뮬레이션은 프록시 기반 DAST 위에 구축된 인큐베이팅 기능으로, 이 사용 중단에 포함되며 17.0 이후로는 지원되지 않습니다.
Sidekiq 실행을 위한 큐 선택기가 더 이상 지원되지 않음
여러 프로세스가 특정 큐 집합을 수신 대기하는 큐 선택기 및 부정 설정으로 Sidekiq를 실행하는 것은 더 이상 지원되지 않으며, 17.0에서 완전히 제거됩니다.
큐 선택기에서 모든 프로세스의 모든 큐를 수신 대기로 마이그레이션할 수 있습니다. 예를 들어, 현재 Sidekiq가 4개의 프로세스( /etc/gitlab/gitlab.rb
의 sidekiq['queue_groups']
에 4개의 요소로 표시됨)로 실행 중이며 큐 선택기(sidekiq['queue_selector'] = true
)가 활성화되어 있다면, Sidekiq를 모든 4개 프로세스에서 모든 큐를 수신 대기하도록 변경할 수 있습니다. 예를 들어 sidekiq['queue_groups'] = ['*'] * 4
와 같이 설정할 수 있습니다. 이 접근 방식은 우리의 참조 아키텍처에서도 권장됩니다. 또한 Sidekiq는 머신의 CPU 수 만큼 프로세스를 효과적으로 실행할 수 있습니다.
위의 접근 방식은 대부분의 인스턴스에 권장되지만, Sidekiq는 라우팅 규칙을 사용하여 실행될 수도 있습니다. 이는 GitLab.com에서도 사용되고 있습니다. 큐 선택기에서 라우팅 규칙으로의 마이그레이션 가이드를 따르실 수 있습니다. 마이그레이션 시 작업이 완전히 소실되지 않도록 주의해야 합니다.
리눅스의 소형 SaaS 러너에서 태그 제거
역사적 이유로, 소형 리눅스 SaaS 러너는 많은 태그가 붙어 있었고 이는 레이블로 사용되었습니다. 우리는 태그를 단순화하여 saas-linux-small-amd64
만 사용하고 모든 SaaS 러너에서 일관되게 하려 합니다.
다음 태그가 더 이상 지원되지 않습니다: docker
, east-c
, gce
, git-annex
, linux
, mongo
, mysql
, postgres
, ruby
, shared
.
자세한 내용은 리눅스의 소형 SaaS 러너에서 태그 제거를 참조하세요.
필수 파이프라인 구성은 더 이상 지원되지 않습니다
필수 파이프라인 구성은 GitLab 17.0에서 제거됩니다. 이는 Ultimate Tier의 셀프 관리 사용자에게 영향을 미칩니다.
필수 파이프라인 구성을 다음으로 대체해야 합니다:
- 규정 준수 프레임워크에 맞춘 보안 정책 (실험적)
- 규정 준수 파이프라인 (현재 사용 가능)
이러한 대체 솔루션을 권장하는 이유는 더 큰 유연성을 제공하여 필수 파이프라인을 특정 규정 준수 프레임워크 레이블에 할당할 수 있도록 하기 때문입니다.
참고: 규정 준수 파이프라인은 향후 사용 중단되며 보안 정책으로 마이그레이션될 것입니다. 자세한 내용은 마이그레이션 및 사용 중단 에픽을 참조하세요.
GitLab 17.0에서 SAST 분석기 지원 변경
기본적으로 GitLab SAST에서 지원되는 분석기의 수를 줄이고 있습니다. 이는 다양한 프로그래밍 언어 전반에 걸쳐 더 빠르고 일관된 사용자 경험을 제공하기 위한 장기 전략의 일환입니다.
GitLab 17.0에서 다음과 같은 변경이 이루어집니다:
-
SAST CI/CD 템플릿에서 언어별 분석기의 일부를 제거하고, 해당 커버리지를 GitLab 지원 탐지 규칙으로 교체된 Semgrep 기반 분석기로 대체합니다. 다음 분석기는 이제 사용 중단되며 GitLab 17.0에서 지원 종료됩니다:
- Brakeman (Ruby, Ruby on Rails)
- Flawfinder (C, C++)
- MobSF (Android, iOS)
- NodeJS Scan (Node.js)
- PHPCS Security Audit (PHP)
- SAST CI/CD 템플릿에서 Kotlin 및 Scala 코드를 위해 SpotBugs 기반 분석기를 실행하지 않도록 변경합니다. 이 언어들은 대신 GitLab 지원 탐지 규칙으로 스캔됩니다 Semgrep 기반 분석기.
즉시 적용되며, 사용 중단된 분석기는 보안 업데이트만 받을 수 있습니다. 기타 일상적인 개선 사항이나 업데이트는 보장되지 않습니다. 분석기가 GitLab 17.0에서 지원 종료에 도달한 후에는 더 이상의 업데이트가 제공되지 않습니다.
그러나 이전에 게시된 이 분석기용 컨테이너 이미지를 삭제하거나 사용자 정의 CI/CD 파이프라인 작업 정의를 사용하여 실행하는 기능은 제거하지 않습니다.
취약점 관리 시스템은 대부분의 기존 발견 사항을 업데이트하여 새로운 탐지 규칙과 맞추게 됩니다. 새로운 분석기로 마이그레이션되지 않는 발견 사항은 자동으로 해결될 것입니다. 자세한 내용은 취약점 변환 문서를 참조하세요.
제거된 분석기에 사용자 정의를 적용했거나 현재 파이프라인에서 Semgrep 기반 분석기를 비활성화한 경우, 이 변경에 대한 사용 중단 문제에 자세히 설명된 대로 조치를 취해야 합니다.
_EXCLUDED_ANALYZERS
변수를 사용하여 프로젝트 변수 재정의하는 스캔 실행 정책
- GitLab 16.9에 발표됨
- GitLab 17.0에 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
최고 우선 순위로 SEP 변수 적용을 전달하고 확인한 후, 사용자가 파이프라인 구성에서 _EXCLUDED_PATHS
를 설정할 수 있게 되는 의도치 않은 행동을 발견하게 되었고, 이는 그들이 정책 및 파이프라인 구성에서 _EXCLUDED_ANALYZERS
를 설정하지 못하게 합니다.
스캔 실행 변수를 적절하게 적용하기 위해, GitLab 스캔 작업을 사용하여 스캔 실행 정책에 대해 _EXCLUDED_ANALYZERS
또는 _EXCLUDED_PATHS
변수가 지정될 경우, 이 변수는 이제 제외된 분석기에 대해 정의된 모든 프로젝트 변수를 재정의합니다.
사용자는 17.0 이전에 이 동작을 적용하기 위해 기능 플래그를 활성화할 수 있습니다. 17.0에서는 변수가 정의된 스캔 실행 정책이 있는 경우, _EXCLUDED_ANALYZERS
/_EXCLUDED_PATHS
변수를 사용하는 프로젝트가 기본적으로 재정의됩니다.
보안 분석기 주요 버전 업데이트
- GitLab 16.9에 발표됨
- GitLab 17.0에 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
보안 단계는 GitLab 17.0 릴리즈와 함께 분석기의 주요 버전을 증가시킬 예정입니다.
기본 포함된 템플릿을 사용하지 않거나 분석기 버전을 고정한 경우, 고정된 버전을 제거하거나 최신 주요 버전으로 업데이트하기 위해 CI/CD 작업 정의를 업데이트해야 합니다.
GitLab 16.0-16.11 사용자들은 GitLab 17.0의 릴리즈까지 정상적으로 분석기 업데이트를 계속 경험하게 되며, 이후에는 새로운 주요 버전의 분석기에서만 수정된 버그와 릴리즈된 기능이 제공됩니다.
우리의 유지 관리 정책에 따라 사용 중단된 버전에는 버그 및 기능을 되돌리지 않습니다. 필요한 경우 최신 3개의 마이너 릴리즈 내에서 보안 패치가 되돌려집니다.
특히 다음 분석기는 사용 중단되고 GitLab 17.0 릴리즈 이후 더 이상 업데이트되지 않습니다:
- Container Scanning: 6 버전
- Dependency Scanning: 4 버전
- DAST: 4 버전
- DAST API: 3 버전
- Fuzz API: 3 버전
- Secret Detection: 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에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중지 문제를 참조하세요.
스캔 결과 정책에 대한 추가 필터 지원에서 우리는 newly_detected
필드를 두 가지 옵션으로 나누었습니다: new_needs_triage
및 new_dismissed
. 보안 정책 YAML에 두 가지 옵션을 모두 포함하면 원래의 newly_detected
필드와 동일한 결과를 얻을 수 있습니다. 그러나 이제 new_needs_triage
만 사용하여 무시된 결과를 필터링할 수 있습니다.
epic 10203에서 논의한 내용을 바탕으로, YAML 정의에서 더 명확성을 위해 match_on_inclusion
필드의 이름을 match_on_inclusion_license
로 변경했습니다.
보안 정책 필드 newly_detected
가 더 이상 사용되지 않습니다
- GitLab 16.5에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중지 문제를 참조하세요.
스캔 결과 정책에 대한 추가 필터 지원에서 우리는 newly_detected
필드를 두 가지 옵션으로 나누었습니다: new_needs_triage
및 new_dismissed
. 보안 정책 YAML에 두 가지 옵션을 모두 포함하면 원래의 newly_detected
필드와 동일한 결과를 얻을 수 있습니다. 그러나 이제 new_needs_triage
만 사용하여 무시된 결과를 필터링할 수 있습니다.
자가 호스팅된 Sentry 버전 21.4.1 및 이전 버전에 대한 지원이 중단됩니다
- GitLab 16.9에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중지 문제를 참조하세요.
자가 호스팅된 Sentry 버전 21.4.1 및 이전 버전은 더 이상 사용되지 않으며 GitLab 17.0에서 제거될 예정입니다.
귀하의 자가 호스팅된 Sentry 버전이 21.4.1 이하인 경우, GitLab 17.0 이상으로 업그레이드 후 GitLab 인스턴스에서 오류를 수집할 수 없게 될 수 있습니다.
GitLab 인스턴스에서 Sentry 인스턴스으로 오류를 계속 전송하려면 Sentry를 버전 21.5.0 이상으로 업그레이드하십시오. 더 많은 정보는 Sentry 문서를 참조하십시오.
참고: 사용 중지된 지원은 관리자를 위한 GitLab 인스턴스 오류 추적 기능을 위한 것입니다. 사용 중지된 지원은 개발자가 자체적으로 배포한 애플리케이션에 대한 GitLab 오류 추적과 관련이 없습니다.
백업을 위한 사용자 정의 스키마 설정 지원이 더 이상 권장되지 않음
Linux 패키지 설치의 경우 /etc/gitlab/gitlab.rb
에서 gitlab_rails['backup_pg_schema'] = '<schema_name>'
를 설정하여 GitLab이 백업을 위해 사용자 정의 스키마를 사용하도록 구성할 수 있었습니다.
또는 직접 컴파일한 설치의 경우 config/gitlab.yml
을 편집할 수 있습니다.
구성 설정이 있었던 동안, 이 설정은 아무 효과가 없었고 의도된 목적을 달성하지 못했습니다.
이 구성 설정은 GitLab 17.0에서 제거될 것입니다.
GitHub 가져오기 Rake 작업
GitLab 16.6에서 GitHub 가져오기 Rake 작업이 더 이상 권장되지 않습니다. 이 Rake 작업은 API에서 지원하는 여러 기능이 부족하며 활발히 유지 관리되지 않습니다.
GitLab 17.0에서 Rake 작업은 제거될 것입니다.
Visual Reviews 도구가 더 이상 권장되지 않음
제한된 고객 사용과 기능 때문에 Review Apps에 대한 Visual Reviews 기능이 더 이상 권장되지 않으며 제거될 것입니다. 교체 계획은 없으며 사용자는 GitLab 17.0 이전에 Visual Reviews 사용을 중단해야 합니다.
gitlab-runner exec
명령이 더 이상 권장되지 않음
gitlab-runner exec
명령은 더 이상 권장되지 않으며 GitLab Runner에서 16.0에서 완전히 제거될 것입니다. gitlab-runner exec
기능은 GitLab CI 파이프라인을 GitLab 인스턴스에 커밋하지 않고 로컬 시스템에서 검증할 수 있는 기능을 제공하기 위해 처음 개발되었습니다. 그러나 GitLab CI의 지속적인 발전과 함께 모든 GitLab CI 기능을 gitlab-runner exec
에 복제하는 것은 더 이상 실행 가능하지 않았습니다. 파이프라인 구문 및 검증 시뮬레이션은 GitLab 파이프라인 편집기에서 이용할 수 있습니다.
GitLab 에이전트의 Kubernetes용 풀 기반 배포 기능이 더 이상 지원되지 않음
- GitLab 16.2에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 중단 문제를 참조하세요.
GitLab 에이전트의 Kubernetes용 내장 풀 기반 배포 기능을 Flux 및 관련 통합으로 전환합니다.
GitLab 에이전트는 Kubernetes에 대해 더 이상 지원되지 않습니다. 이 변경은 에이전트의 풀 기반 기능에만 영향을 미칩니다. 다른 모든 기능은 유지되며, GitLab은 Kubernetes용 에이전트를 지속적으로 지원합니다.
에이전트를 풀 기반 배포에 사용하는 경우 Flux로 마이그레이션해야 합니다. Flux는 GitOps를 위해 성숙한 CNCF 프로젝트이므로, 우리는 2023년 2월에 Flux와 GitLab을 통합하기로 결정했습니다.
Twitter OmniAuth 로그인 옵션은 Self-Managed GitLab에서 더 이상 지원되지 않음
- GitLab 16.3에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 중단 문제를 참조하세요.
Twitter OAuth 1.0a OmniAuth는 저조한 사용과 젬 지원 부족으로 인해 GitLab 17.0에서 Self-Managed GitLab 인스턴스용으로 더 이상 지원되지 않습니다. 대신 다른 지원되는 OmniAuth 제공업체를 사용하세요.
통합 승인 규칙이 더 이상 지원되지 않음
- GitLab 16.1에서 발표
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 중단 문제를 참조하세요.
통합 승인 규칙은 더 큰 유연성을 제공하는 여러 승인 규칙으로 전환됩니다.
통합 승인 규칙을 여러 승인 규칙으로 마이그레이션하지 않을 경우, GitLab이 설정을 자동으로 마이그레이션 할 것입니다.
여러 승인 규칙은 승인 규칙에 대한 더 세밀한 설정을 허용하므로, GitLab에 마이그레이션을 맡기면 원하지 않는 더 제한적인 규칙으로 자동 마이그레이션 될 수 있습니다.
승인이 예상보다 더 필요한 문제가 있는 경우 마이그레이션 규칙을 확인하세요.
GitLab 15.11에서 통합 승인 규칙의 UI 지원이 제거되었습니다.
API를 통해서는 여전히 통합 승인 규칙에 접근할 수 있습니다.
GitLab SaaS 러너의 운영 체제 버전 업그레이드 (Linux)
- GitLab 16.9에 발표됨
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 사용 중단 이슈를 참조하세요.
GitLab은 Linux의 SaaS 러너를 실행하는 데 사용되는 임시 VM의 컨테이너 최적화 운영 체제(COS)를 업그레이드하고 있습니다.
이 COS 업그레이드에는 버전 19.03.15에서 버전 23.0.5로의 Docker Engine 업그레이드가 포함되어 있으며, 이는 알려진 호환성 문제를 도입합니다.
버전 20.10 이전의 Docker-in-Docker 또는 v1.9.0 이전의 Kaniko 이미지는 컨테이너 런타임을 감지하지 못하고 실패하게 됩니다.
자세한 내용은 Linux에서 SaaS 러너의 운영 체제 버전을 업그레이드하는 방법을 참조하세요.
취약성 신뢰도 필드
- GitLab 15.4에 발표됨
- GitLab 17.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 사용 중단 이슈를 참조하세요.
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에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알고 싶으시면 사용 중단 이슈를 참조하세요.
after_script
CI/CD 키워드는 작업의 주요 script
섹션 후에 추가 명령을 실행하는 데 사용됩니다. 이는 종종 작업에서 사용된 환경이나 다른 리소스를 정리하는 데 사용됩니다.
많은 사용자에게 after_script
명령이 작업이 취소될 경우 실행되지 않는다는 사실은 예상치 못한 일이며 바람직하지 않았습니다. 17.0부터는 이 키워드가 작업이 취소된 후에도 명령이 실행되도록 업데이트됩니다.
after_script
키워드를 사용하는 CI/CD 구성은 취소된 작업에서도 실행되도록 처리할 수 있어야 합니다.
dependency_files
는 더이상 사용되지 않습니다.
- GitLab 16.9에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경사항에 대해 논의하거나 더 알아보려면 비활성화 문제를 참조하세요.
오늘날 GitLab에서는 프로젝트의 종속성 목록이 종속성 스캐닝 보고서의 dependency_files
의 내용을 사용하여 생성됩니다. 그러나 그룹 종속성 목록과의 일관성을 유지하기 위해, GitLab 17.0부터 프로젝트의 종속성 목록은 GitLab의 PostgreSQL 데이터베이스에 저장된 CycloneDX SBOM 보고서 아티팩트를 사용합니다. 따라서 종속성 스캐닝 보고서 스키마의 dependency_files
속성은 더이상 사용되지 않으며 17.0에서 제거될 것입니다.
이 비활성화의 일환으로, dependency_path
도 비활성화되고 17.0에서 제거됩니다. GitLab은 CycloneDX 사양을 사용한 종속성 그래프 구현을 진행하여 유사한 정보를 제공할 것입니다.
또한, Container Scanning CI 작업은 종속성 스캐닝 보고서를 더 이상 생성하지 않습니다. 이는 CycloneDX SBOM 보고서로 대체되기 때문입니다. Container Scanning에 대한 CS_DISABLE_DEPENDENCY_LIST
환경 변수는 더 이상 사용되지 않으며 17.0에서 제거될 것입니다.
DORA API를 위한 metric
필터 및 value
필드
- GitLab 16.8에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경사항에 대해 논의하거나 더 알아보려면 비활성화 문제를 참조하세요.
이제 여러 DORA 메트릭을 새 메트릭 필드를 사용하여 동시에 쿼리할 수 있습니다. Graphql DORA API의 metric
필터 및 value
필드는 GitLab 17.0에서 제거됩니다.
omniauth-azure-oauth2
젬이 더이상 사용되지 않습니다.
- GitLab 16.9에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경사항에 대해 논의하거나 더 알아보려면 비활성화 문제를 참조하세요.
GitLab 사용자는 omniauth-azure-oauth2
젬을 사용하여 GitLab에 인증할 수 있습니다. 17.0에서 이 젬은 omniauth_openid_connect
젬으로 대체됩니다. 새로운 젬은 이전 젬과 동일한 모든 기능을 포함하고 있으며, 업스트림 유지보수 및 보안과 중앙 집중식 유지보수가 더 나은 방식으로 제공됩니다.
이 변경은 사용자가 마이그레이션 시 OAuth2 제공자와 다시 연결해야 함을 요구합니다. 혼란을 피하기 위해, 17.0 이전에 새 제공자로 omniauth_openid_connect
추가하기를 권장합니다. 사용자는 새로운 로그인 버튼을 보게 되며, 자격 증명을 수동으로 다시 연결해야 합니다. 17.0 이전에 omniauth_openid_connect
젬을 구현하지 않으면 사용자는 Azure 로그인 버튼을 사용하여 로그인할 수 없으며, 관리자가 올바른 젬을 구현할 때까지 사용자 이름과 비밀번호를 사용하여 로그인해야 합니다.
omnibus_gitconfig
구성 항목이 더 이상 지원되지 않습니다
- GitLab 16.10에서 발표됨
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경사항에 대해 논의하거나 더 알아보려면 비지원 이슈를 참조하세요.
omnibus_gitconfig['system']
구성 항목은 더 이상 지원되지 않습니다. Gitaly의 사용자 지정 Git 구성을 설정하기 위해 omnibus_gitconfig['system']
를 사용하는 경우 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에서 제거됨 (breaking change)
- 이 변경사항에 대해 논의하거나 더 알아보려면 비지원 이슈를 참조하세요.
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에서 제거됨 (breaking change)
- 이 변경사항에 대해 논의하거나 더 알아보려면 비지원 이슈를 참조하세요.
취약성 결과의 project_fingerprint
속성이 uuid
속성으로 대체되고 있습니다. findings를 식별하기 위해 UUIDv5 값을 사용함으로써 관련된 모든 엔티티를 findings와 쉽게 연결할 수 있습니다. project_fingerprint
속성은 더 이상 findings를 추적하는 데 사용되지 않으며 GitLab 17.0에서 제거됩니다. 16.1부터 project_fingerprint
의 출력은 uuid
필드와 동일한 값을 반환합니다.
npm 패키지 업로드가 이제 비동기적으로 발생합니다
- GitLab 16.9에서 발표
- GitLab 17.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 폐기 문제를 참조하세요.
GitLab 패키지 레지스트리는 npm과 Yarn을 지원합니다. npm 또는 Yarn 패키지를 업로드할 때, 업로드는 동기적입니다. 그러나 동기 업로드에는 알려진 문제가 있습니다. 예를 들어 GitLab은 overrides와 같은 기능을 지원하지 않습니다.
17.0부터 npm 및 Yarn 패키지가 비동기적으로 업로드됩니다. 이는 패키지가 게시되자마자 사용할 수 있을 것으로 기대하는 파이프라인이 있을 수 있기 때문에 breaking change입니다.
우회 방법으로, 패키지 API를 사용하여 패키지를 확인해야 합니다.
</div>
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 및 이후 버전을 준비하려면 다음을 수행해야 합니다:
- openSUSE Leap 15.4에서 openSUSE Leap 15.5로 인스턴스를 이동합니다.
- openSUSE Leap 15.4의 GitLab 제공 패키지에서 openSUSE Leap 15.5의 GitLab 제공 패키지로 전환합니다.
GitLab 16.7
Shimo 통합
- GitLab 15.7에서 발표됨
- GitLab 16.7에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 deprecation issue를 참조하세요.
Shimo Workspace 통합은 더 이상 지원되지 않으며, JiHu GitLab 코드베이스로 이동될 예정입니다.
user_email_lookup_limit
API 필드
- GitLab 14.9에서 발표됨
- GitLab 16.7에서 제거됨 (breaking change)
user_email_lookup_limit
API 필드는 GitLab 14.9에서 더 이상 지원되지 않으며, GitLab 16.7에서 제거됩니다. 기능이 제거되기 전까지 user_email_lookup_limit
는 search_rate_limit
의 별칭으로 사용되며, 기존 워크플로우는 여전히 작동합니다.
user_email_lookup_limit
의 속도 제한을 변경하는 API 호출은 대신 search_rate_limit
를 사용해야 합니다.
GitLab 16.6
Job 토큰 허용 목록이 공개 및 내부 프로젝트를 포함함
- GitLab 16.3에서 발표됨
- GitLab 16.6에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 deprecation issue를 참조하세요.
16.6부터는 공개 또는 내부 프로젝트가 허용 목록에 없는 프로젝트의 job 토큰 요청을 더 이상 허용하지 않습니다. 이 프로젝트에 대한 접근 제한 설정이 활성화되면 적용됩니다.
이 프로젝트에 대한 접근 제한 설정이 활성화된 공개 또는 내부 프로젝트가 있는 경우, 계속해서 권한 부여를 받으려면 job 토큰 요청을 하는 프로젝트를 허용 목록에 추가해야 합니다.
GitLab 16.5
잠긴 LDAP 그룹에非-LDAP 동기화된 멤버 추가가 더 이상 지원되지 않음
- GitLab 16.0에서 발표됨
- GitLab 16.5에서 제거됨
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 deprecation issue를 참조하세요.
ldap_settings_unlock_groups_by_owners
기능 플래그를 활성화하면 비-LDAP 동기화된 사용자를 잠긴 LDAP 그룹에 추가할 수 있었습니다. 이 기능은 항상 기본적으로 비활성화되며 기능 플래그 뒤에 숨겨져 있었습니다. 이 기능은 SAML 통합과의 연속성을 유지하기 위해 제거됩니다. 비동기화된 그룹 멤버를 허용하면 디렉터리 서비스 사용의 “단일 진실 소스” 원칙이 무너지기 때문입니다. 이 기능이 제거되면 LDAP와 동기화되지 않은 LDAP 그룹 멤버는 해당 그룹에 대한 접근 권한을 잃게 됩니다.
Geo: 정리 Rake 작업
복제 및 검증의 이전(Migration)을 위한 일환으로
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 사용 중단 및 비활성화
Omnibus GitLab에 포함된 Grafana 버전은
사용 중단 및 비활성화되었으며 16.0에서 비활성화되고 16.3에서 제거됩니다.
포함된 Grafana를 사용하고 있다면 반드시 다음 중 하나로 마이그레이션해야 합니다:
- 다른 Grafana 구현으로. 자세한 정보는
새 Grafana 인스턴스로 전환을 참조하십시오. - 선택한 다른 관찰 가능 플랫폼.
현재 제공되는 Grafana 버전은 더 이상 지원되지 않는 버전입니다.
GitLab 버전 16.0에서 16.2까지는 여전히 번들 Grafana를 다시 활성화할 수 있습니다.
하지만 GitLab 16.3부터는 번들 Grafana를 활성화할 수 없습니다.
라이센스 준수 CI 템플릿
업데이트: 우리는 이전에 GitLab 16.0에서 기존 라이센스 준수 CI 템플릿을 제거할 것이라고 발표했습니다. 그러나 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 작업의 라이센스 데이터 사용 | 라이센스 데이터 없음 |
RSA 키 크기 제한
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에서 제거되었습니다
Twitter OAuth 1.0a OmniAuth는 낮은 사용, gem 지원 부족 및 기능적인 로그인 옵션의 부족으로 인해 GitLab 16.3에서 GitLab.com에서 폐지되고 제거됩니다. Twitter로 GitLab.com에 로그인한 경우, 비밀번호 또는 다른 지원되는 OmniAuth 공급자로 로그인할 수 있습니다.
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 데이터베이스를 프로비저닝하지 않음
현재 Auto DevOps는 기본적으로 클러스터 내 PostgreSQL 데이터베이스를 프로비저닝합니다.
GitLab 16.0에서는 데이터베이스는 선택한 사용자에게만 프로비저닝됩니다.
이 변경 사항은 보다 견고한 데이터베이스 관리가 필요한 프로덕션 배포를 지원합니다.
클러스터 내 데이터베이스를 프로비저닝하도록 Auto DevOps를 설정하려면 POSTGRES_ENABLED
CI/CD 변수를 true
로 설정하세요.
Azure Storage Driver가 올바른 루트 접두사로 기본 설정
컨테이너 레지스트리의 Azure Storage Driver는 기본 루트 디렉터리로 //
에 기록합니다. 이 기본 루트 디렉터리는 Azure UI의 일부 위치에서 /<no-name>/
으로 표시됩니다. 이 저장소 드라이버를 사용하는 이전 배포를 지원하기 위해 이 레거시 동작을 유지했습니다. 그러나 다른 저장소 드라이버에서 Azure로 이동할 때, 이 동작은 추가 선행 슬래시 없이 루트 경로를 빌드하도록 저장소 드라이버를 구성할 때까지 모든 데이터를 숨깁니다.
저장소 드라이버의 새로운 기본 구성은 trimlegacyrootprefix: true
를 설정하며, /
가 기본 루트 디렉터리가 됩니다. 현재 구성에 trimlegacyrootprefix: false
를 추가하여 중단 사항을 피할 수 있습니다.
이 파괴적 변경 사항은 GitLab 16.0에서 발생합니다.
번들 Grafana Helm 차트가 더 이상 지원되지 않습니다.
GitLab Helm 차트와 함께 번들로 제공되는 Grafana Helm 차트는 더 이상 지원되지 않으며 GitLab Helm 차트 7.0 릴리스(즉, GitLab 16.0과 함께 발매)에 제거될 예정입니다.
번들 Grafana Helm 차트는 GitLab Helm 차트의 Prometheus 메트릭에 연결된 Grafana UI를 제공하기 위해 활성화할 수 있는 선택적 서비스입니다.
현재 GitLab Helm 차트에서 제공하는 Grafana 버전은 더 이상 지원되는 Grafana 버전이 아닙니다.
번들 Grafana를 사용 중이라면, Grafana Labs의 최신 차트 버전으로 전환하거나 신뢰할 수 있는 제공업체의 Grafana 연산자를 사용해야 합니다.
새 Grafana 인스턴스에서 GitLab에서 제공하는 Prometheus를 데이터 소스로 구성하고, Grafana를 GitLab UI에 연결할 수 있습니다.
CAS OmniAuth 제공자
GitLab에 CAS OmniAuth 제공자를 제공하는 omniauth-cas3
젬은 다음 주요 릴리스인 GitLab 16.0에서 제거될 예정입니다. 이 젬은 사용이 매우 적으며, 상위 유지를 하지 못해 GitLab의 OmniAuth 2.0으로의 업그레이드를 방해하고 있습니다.
CI/CD 작업은 Hashicorp Vault에서 비밀이 반환되지 않을 경우 실패합니다.
네이티브 HashiCorp Vault 통합을 사용할 때, Vault에서 비밀이 반환되지 않으면 CI/CD 작업이 실패합니다. GitLab 16.0 이전에 항상 비밀을 반환하도록 구성하거나 이 변경 사항을 처리하도록 파이프라인을 업데이트해야 합니다.
MobSF 기반 SAST 분석기 동작 변경 (다중 모듈 Android 프로젝트에서)
- GitLab 16.0에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 중단 문제를 참조하세요.
업데이트: 우리는 MobSF 기반 GitLab SAST 분석기가 다중 모듈 Android 프로젝트를 스캔하는 방식에 대한 변경 사항을 발표했었습니다.
그 변경 사항은 취소되었으며, 조치를 취할 필요가 없습니다.
어떤 단일 모듈이 스캔될지를 변경하는 대신, 우리는 다중 모듈 지원을 개선했습니다.
/approvals
API 엔드포인트를 통한 병합 요청 승인 변경
- GitLab 14.0에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 중단 문제를 참조하세요.
병합 요청에 필요한 승인을 변경하려면 더 이상 GitLab 14.0에서 중단된 /approvals
API 엔드포인트를 사용하지 않아야 합니다.
대신, /approval_rules
엔드포인트를 사용하여 병합 요청의 승인 규칙을 생성하거나 업데이트하세요.
Conan 프로젝트 수준 검색 엔드포인트가 프로젝트별 결과 반환
- GitLab 15.8에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 중단 문제를 참조하세요.
GitLab Conan 리포지토리를 프로젝트 수준 또는 인스턴스 수준 엔드포인트와 함께 사용할 수 있습니다. 각 수준은 conan 검색 명령을 지원합니다. 그러나 프로젝트 수준의 검색 엔드포인트는 대상 프로젝트 외부의 패키지도 반환하고 있습니다.
이 의도하지 않은 기능은 GitLab 15.8에서 중단되었으며 GitLab 16.0에서 제거될 것입니다. 프로젝트 수준의 검색 엔드포인트는 대상 프로젝트의 패키지만 반환합니다.
GitLab Runner Helm Chart의 구성 필드
GitLab 13.6부터 사용자는 GitLab Runner Helm 차트에서 모든 러너 구성을 지정할 수 있습니다. 이 기능을 구현할 때 GitLab Helm 차트 구성에 GitLab Runner에 특정한 값들이 사용 중단되었습니다. 사용 중단된 값들은 GitLab 16.0에서 제거될 것입니다.
환경 변수를 사용하여 Redis 구성 파일 경로를 구성하는 것이 사용 중단되었습니다
이제 GITLAB_REDIS_CACHE_CONFIG_FILE
또는 GITLAB_REDIS_QUEUES_CONFIG_FILE
와 같은 환경 변수를 사용하여 Redis 구성 파일 위치를 지정할 수 없습니다. 대신 기본 구성 파일 위치를 사용하세요. 예를 들어 config/redis.cache.yml
또는 config/redis.queues.yml
을 사용하십시오.
Docker를 참조하는 컨테이너 스캐닝 변수
변수 이름에 DOCKER_
로 접두사 붙은 모든 컨테이너 스캐닝 변수는 사용 중단되었습니다. 여기에는 DOCKER_IMAGE
, DOCKER_PASSWORD
, DOCKER_USER
, 및 DOCKERFILE_PATH
변수가 포함됩니다. 이러한 변수를 GitLab 16.0 릴리스에서 지원하지 않게 됩니다. 사용 중단된 이름 대신 새 변수 이름인 CS_IMAGE
, CS_REGISTRY_PASSWORD
, CS_REGISTRY_USER
, 및 CS_DOCKERFILE_PATH
를 사용하세요.
컨테이너 레지스트리 풀 스루 캐시
컨테이너 레지스트리의 풀 스루 캐시가 GitLab 15.8에서 사용 중단되며 GitLab 16.0에서 제거됩니다. 풀 스루 캐시는 업스트림 Docker Distribution 프로젝트의 일부입니다. 그러나 GitLab Dependency Proxy를 사용하여 Docker Hub에서 컨테이너 이미지를 프록시 및 캐시할 수 있는 이점이 있어 풀 스루 캐시를 제거하고 있습니다. 풀 스루 캐시를 제거함으로써 기능성을 저해하지 않고 업스트림 클라이언트 코드를 제거할 수 있게 됩니다.
Jira Cloud 앱의 GitLab에서의 쿠키 인증
Jira Cloud 앱의 GitLab에서의 쿠키 인증은 이제 OAuth 인증으로 전환되었습니다.
셀프 관리형에서는 GitLab Jira Cloud 앱을 계속 사용하기 위해 OAuth 인증 설정을 해야 합니다. OAuth 없이 링크된 네임스페이스를 관리할 수 없습니다.
DAST API 스캔에서 DAST 템플릿 사용 중단
새 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에서는 더 이상 작동하지 않습니다. API 스캔에는 DAST-API.gitlab-ci.yml
템플릿을 사용하고 DAST API 분석기 문서를 참조하여 구성 세부정보를 확인하세요.
DAST API 변수
GitLab 15.6에서 새로운 DAST API 분석기로 전환하면서 두 개의 레거시 DAST API 변수가 중단됩니다. 변수 DAST_API_HOST_OVERRIDE
와 DAST_API_SPECIFICATION
은 더 이상 DAST API 스캔에 사용되지 않습니다.
DAST_API_HOST_OVERRIDE
는 OpenAPI 사양에서 호스트를 자동으로 오버라이드하기 위해 DAST_API_TARGET_URL
을 사용하는 것으로 대체되었습니다.
DAST_API_SPECIFICATION
은 DAST_API_OPENAPI
로 대체되었습니다. 사용자는 OpenAPI 사양을 사용하여 테스트를 계속하려면 DAST_API_SPECIFICATION
변수를 DAST_API_OPENAPI
변수로 변경해야 합니다. 값은 동일하게 유지할 수 있지만 변수 이름은 교체해야 합니다.
이 두 변수는 GitLab 16.0에서 제거될 예정입니다.
DAST 리포트 변수 사용 중단
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에서 제거될 것입니다.
기본 CI/CD 작업 토큰(CI_JOB_TOKEN
) 범위 변경
GitLab 14.4에서 우리는 프로젝트의 CI/CD 작업 토큰(CI_JOB_TOKEN
) 액세스를 제한할 수 있는 기능을 도입하여 더 안전하게 만들었습니다. 여러분은 프로젝트의 파이프라인에서 작업 토큰을 사용하여 다른 프로젝트에 접근하지 못하도록 할 수 있습니다. 다른 구성 없이 활성화하면 귀하의 파이프라인은 다른 프로젝트에 접근할 수 없습니다. 파이프라인에서 작업 토큰을 사용하여 다른 프로젝트에 접근하려면, CI_JOB_TOKEN 액세스 제한 설정의 허용 목록에 해당 프로젝트를 명시적으로 나열해야 하며, 모든 프로젝트에서 유지 관리자가 되어야 합니다.
작업 토큰 기능은 15.9에서 작업 토큰으로 프로젝트에 접근을 허용하는 더 나은 보안 설정으로 업데이트되었습니다. 다른 구성 없이 활성화하면 다른 프로젝트의 작업 토큰은 귀하의 프로젝트에 접근할 수 없습니다. 이전 설정과 마찬가지로, 작업 토큰으로 귀하의 프로젝트에 접근하도록 다른 프로젝트의 접근을 허용할 수 있으며, 이를 위해 해당 프로젝트를 CI_JOB_TOKEN으로 이 프로젝트에 접근 허용 설정의 허용 목록에 명시적으로 나열해야 합니다. 이 새로운 설정에서는 귀하의 프로젝트에서 유지 관리자가 되어야 하지만, 다른 프로젝트에서는 게스트 역할만 있으면 됩니다.
그 결과로, 제한 설정은 더 나은 접근 허용 설정으로 대체되어 사용 중단되었습니다. GitLab 16.0에서 제한 설정은 모든 새로운 프로젝트에 대해 기본적으로 비활성화될 것입니다. 현재 이 설정이 활성화된 프로젝트에서는 예상대로 계속 작동하지만, 더 이상 프로젝트를 허용 목록에 추가할 수 없습니다. 특정 프로젝트에서 설정이 비활성화된 경우, 16.0 이후에 이 설정을 다시 활성화하는 것은 불가능할 것입니다.
18.0에서 우리는 제한 설정을 완전히 제거하고, 모든 프로젝트에 대해 접근 허용 설정을 활성화할 계획입니다. 이 변경 사항은 프로젝트 간의 보안 수준을 높이는 데 도움이 됩니다. 현재 제한 설정을 사용하는 경우, 프로젝트를 접근 허용 설정으로 업데이트해야 합니다. 다른 프로젝트가 작업 토큰으로 귀하의 프로젝트에 접근하는 경우, 허용 목록에 추가해야 합니다.
이 변경 사항을 준비하기 위해, GitLab.com 또는 자체 관리 GitLab 15.9 이상을 사용하는 사용자는 지금 접근 허용 설정을 활성화하고 다른 프로젝트를 추가할 수 있습니다. 18.0 이상에서는 이 설정을 비활성화할 수 없게 됩니다.
16.3에서는 이러한 설정의 이름이 변경되어 그 의미가 더 명확해졌습니다: 사용 중단된 CI_JOB_TOKEN 액세스 제한 설정은 이제 이 프로젝트에서의 접근 제한으로 불리며, 새로운 CI_JOB_TOKEN으로 이 프로젝트에 접근 허용 설정은 이제 이 프로젝트에 대한 접근 제한으로 불립니다.
Java 13, 14, 15, 및 16에 대한 종속성 스캐닝 지원
- GitLab 15.8에서 발표됨
- GitLab 16.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하려면 또는 자세한 내용을 보려면 중단 문제를 참조하세요.
GitLab은 Java 13, 14, 15 및 16 버전에 대한 종속성 스캐닝 지원을 중단했으며, 이는 다가오는 GitLab 16.0 릴리스에서 제거될 예정입니다. 이는 Oracle의 지원 정책과 일치하며, 해당 버전에 대한 Oracle Premier 및 Extended Support가 종료되었습니다. 또한, 이는 GitLab이 앞으로 LTS 버전에 대한 종속성 스캐닝 Java 지원에 집중할 수 있도록 합니다.
배포 API는 updated_at
과 updated_at
이 함께 사용되지 않을 때 오류를 반환합니다
- GitLab 15.8에서 발표됨
- GitLab 16.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하려면 또는 자세한 내용을 보려면 중단 문제를 참조하세요.
이제 배포 API는 updated_at
필터링과 updated_at
정렬이 함께 사용되지 않을 때 오류를 반환합니다. 일부 사용자는 updated_at
으로 필터링하여 “최신” 배포를 가져오고자 했으나 updated_at
정렬을 사용하지 않아 잘못된 결과를 생성할 수 있었습니다. 대신 두 가지를 함께 사용하거나, finished_at
으로 필터링하고 finished_at
으로 정렬하여 “최신 배포”를 일관된 방식으로 가져와야 합니다.
레거시 Gitaly 구성 메소드 중단
- GitLab 14.8에서 발표됨
- GitLab 16.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하려면 또는 자세한 내용을 보려면 중단 문제를 참조하세요.
환경 변수 GIT_CONFIG_SYSTEM
및 GIT_CONFIG_GLOBAL
을 사용하여 Gitaly를 구성하는 것은 중단되었습니다.
이 변수들은 표준 config.toml
Gitaly 구성으로 대체되고 있습니다.
GIT_CONFIG_SYSTEM
및 GIT_CONFIG_GLOBAL
을 사용하여 Gitaly를 구성하는 GitLab 인스턴스는 config.toml
로 구성하도록 전환해야 합니다.
Consul http 메트릭 중단
- GitLab 15.10에서 발표됨
- GitLab 16.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하려면 또는 자세한 내용을 보려면 중단 문제를 참조하세요.
GitLab Omnibus 패키지에서 제공되는 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 SaaS의 CI_PRE_CLONE_SCRIPT
변수에 대한 사용 중단 및 계획된 제거
CI_PRE_CLONE_SCRIPT
변수는 GitLab SaaS Runners에서 지원되며 GitLab 15.9부터 사용 중단되며 16.0에서 제거됩니다. CI_PRE_CLONE_SCRIPT
변수를 사용하면 러너가 Git init 및 get fetch를 실행하기 전에 CI/CD 작업에서 명령을 실행할 수 있습니다. 이 기능에 대한 정보는 Pre-clone script를 참조하세요. 대안으로는 pre_get_sources_script
를 사용할 수 있습니다.
그룹에 프로젝트를 가져오는 기능을 제공하는 개발자 역할
그룹에 대한 개발자 역할을 가진 사용자가 해당 그룹에 프로젝트를 가져올 수 있는 기능은 GitLab 15.8에서 사용 중단되며 GitLab 16.0에서 제거됩니다. GitLab 16.0부터는 적어도 유지 관리자 역할을 가진 사용자만 해당 그룹에 프로젝트를 가져올 수 있습니다.
PHP 및 Python에 대해 보고된 개발 의존성
GitLab 16.0부터 GitLab Dependency Scanning 분석기는 Python/pipenv 및 PHP/composer 프로젝트에 대한 개발 의존성을 보고하기 시작합니다. 개발 의존성을 보고받고 싶지 않은 사용자는 CI/CD 파일에서 DS_INCLUDE_DEV_DEPENDENCIES: false
를 설정해야 합니다.
Markdown에 Grafana 패널을 포함하는 것이 사용 중단됩니다
GitLab 맛이 나는 Markdown에 Grafana 패널을 추가할 수 있는 기능은 15.9에서 사용 중단되며 16.0에서 제거됩니다. 우리는 이 기능을 차트 포함하기로 대체할 계획입니다. GitLab Observability UI와 함께 사용할 수 있습니다.
CI/CD 매개변수 문자 길이에 대한 강제 검증
CI/CD 작업 이름은 255자 엄격 제한이 있지만, 다른 CI/CD 매개변수는 아직 제한을 유지하도록 보장하는 검증이 없습니다.
GitLab 16.0에서는 다음을 엄격하게 255자로 제한하는 검증이 추가될 것입니다:
-
stage
키워드. - 파이프라인의 Git 브랜치 또는 태그 이름인
ref
. - 외부 CI/CD 통합에 사용되는
description
및target_url
매개변수.
셀프 관리 인스턴스를 사용하는 사용자는 255자를 초과하는 매개변수를 사용하지 않도록 파이프라인을 업데이트해야 합니다. GitLab.com 사용자는 데이터베이스에서 이미 제한되어 있으므로 변경할 필요가 없습니다.
환경 검색 쿼리는 최소 세 문자 필요
GitLab 16.0부터 API를 사용하여 환경을 검색할 때 최소 세 문자를 사용해야 합니다. 이 변경은 검색 작업의 확장성을 보장하는 데 도움이 됩니다.
GraphQL ReleaseAssetLink 유형의 외부 필드
- GitLab 15.9에서 발표
- GitLab 16.0에서 제거됨 (중대한 변경사항)
GraphQL API에서 ReleaseAssetLink
유형의 external
필드는 릴리스 링크가 GitLab 인스턴스에 내부인지 외부인지를 나타내는 데 사용되었습니다.
GitLab 15.9부터 모든 릴리스 링크를 외부로 처리하므로 이 필드는 GitLab 15.9에서 사용 중단되며 GitLab 16.0에서 제거될 것입니다.
워크플로에 방해가 되지 않도록 external
필드의 사용을 중지하시기 바랍니다. 이 필드는 제거되며 대체될 계획이 없습니다.
릴리스 및 릴리스 링크 API의 외부 필드
- GitLab 15.9에 발표됨
- GitLab 16.0에 제거될 예정입니다 (breaking change)
릴리스 API와 릴리스 링크 API에서 external
필드는 릴리스 링크가 귀하의 GitLab 인스턴스에 내부인지 외부인지를 나타내기 위해 사용되었습니다.
GitLab 15.9부터 모든 릴리스 링크를 외부로 간주하며, 따라서 이 필드는 GitLab 15.9에서 더 이상 사용되지 않으며, GitLab 16.0에서 제거될 예정입니다.
작업 흐름에 중단이 발생하지 않도록 external
필드의 사용을 중지해 주시기 바랍니다. 이 필드는 제거되며 대체되지 않을 것입니다.
Geo: 프로젝트 리포지토리 다시 다운로드가 더 이상 사용되지 않음
- GitLab 15.11에 발표됨
- GitLab 16.0에 제거될 예정입니다
- 이 변경 사항에 대해 논의하거나 더 자세히 알아보려면 deprecation issue를 참조하십시오.
보조 Geo 사이트에서 프로젝트 리포지토리를 “다시 다운로드”하는 버튼이 더 이상 사용되지 않습니다. 다시 다운로드 논리는 해결하기 어려운 데이터 일관성 문제를 내포하고 있습니다. 버튼은 GitLab 16.0에서 제거될 것입니다.
GitLab 관리자는 보호된 브랜치 또는 태그를 수정할 수 있는 권한이 필요합니다
- GitLab 16.0에 발표됨
- GitLab 16.0에 제거될 예정입니다 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 자세히 알아보려면 deprecation issue를 참조하십시오.
GitLab 관리자는 명시적으로 부여된 권한이 없는 한 보호된 브랜치 또는 태그에서 작업을 수행할 수 없습니다. 이러한 작업에는 보호된 브랜치로 푸시 및 병합, 브랜치 보호 해제, 보호된 태그 생성 등이 포함됩니다.
GitLab 셀프 모니터링 프로젝트
- GitLab 14.9에 발표됨
- GitLab 16.0에 제거될 예정입니다 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 자세히 알아보려면 deprecation issue를 참조하십시오.
GitLab 셀프 모니터링은 셀프 호스팅 GitLab 인스턴스의 관리자에게 인스턴스의 상태를 모니터링하는 도구를 제공합니다. 이 기능은 GitLab 14.9에서 더 이상 사용되지 않으며, 16.0에서 제거될 예정입니다.
GitLab.com 가져오기 도구
- GitLab 15.8에서 발표됨
- GitLab 16.0에서 제거 예정
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 비하인드 이슈를 참조하세요.
GitLab.com 가져오기 도구는 GitLab 15.8에서 사용 중단되었으며 GitLab 16.0에서 제거될 예정입니다.
GitLab.com 가져오기 도구는 2015년에 GitLab.com에서 UI를 통해 자체 관리 GitLab 인스턴스로 프로젝트를 가져오도록 도입되었습니다.
이 기능은 자체 관리 인스턴스에서만 사용할 수 있습니다. 직접 전송을 통한 GitLab 그룹 및 프로젝트 마이그레이션은 GitLab.com 가져오기 도구를 대체하며 보다 일관된 가져오기 기능을 제공합니다.
마이그레이션된 그룹 항목 및 마이그레이션된 프로젝트 항목을 참조하여 개요를 확인하세요.
GraphQL API 실행기 상태는 paused
를 반환하지 않습니다.
GitLab Runner의 GraphQL API 엔드포인트는 GitLab 16.0에서는 상태로 paused
또는 active
를 반환하지 않습니다.
향후 REST API의 v5에서도 GitLab Runner의 엔드포인트는 paused
또는 active
를 반환하지 않을 것입니다.
러너의 상태는 오직 러너 연락 상태와 관련이 있으며, 예를 들어:
online
, offline
, 또는 not_connected
와 같은 상태만 나타납니다. 상태 paused
또는 active
는 더 이상 나타나지 않습니다.
러너가 paused
인지 확인할 때, API 사용자는 불리언 속성 paused
가 true
인지를 확인할 것을 권장합니다. 러너가 active
인지 확인할 때는 paused
가 false
인지 확인하세요.
Jira Cloud용 Jira DVCS 커넥터
Jira DVCS 커넥터는 Jira Cloud에서 사용 중단되었으며 GitLab 16.0에서 제거될 예정입니다. Jira Cloud와 함께 Jira DVCS 커넥터를 사용하고 있다면 GitLab for Jira Cloud 앱으로 마이그레이션하세요.
Jira DVCS 커넥터는 Jira 8.13 및 이전 버전에서도 사용 중단되었습니다. Jira 8.14 이후에는 Jira Server 또는 Jira Data Center와 함께 Jira DVCS 커넥터를 사용할 수 있습니다.
GitLab Helm Chart의 KAS 메트릭 포트
- GitLab 15.7 에서 발표됨
- GitLab 16.0 에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 폐기 이슈를 참조하세요.
gitlab.kas.metrics.port
는 GitLab Helm Chart를 위해 새로운 gitlab.kas.observability.port
구성 필드를 선호하여 폐기되었습니다.
이 포트는 단순한 메트릭 그 이상으로 사용되기 때문에, 구성을 혼동하지 않기 위해 이 변경이 요구되었습니다.
레거시 Gitaly 구성 방법
- GitLab 15.10 에서 발표됨
- GitLab 16.0 에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 폐기 이슈를 참조하세요.
Omnibus GitLab 내에서 Gitaly 구성은 모든 Gitaly 관련 구성 키가 표준 Gitaly 구성과 일치하는 단일 구성 구조로 업데이트되었습니다.
따라서, 이전 구성 구조는 폐기되었습니다.
단일 구성 구조는 GitLab 15.10에서 사용할 수 있으며, 이전 버전과의 호환성도 유지됩니다. 제거되면, Gitaly는 단일 구성 구조를 사용하여 구성해야 합니다.
가능한 한 빨리 Gitaly의 구성을 업데이트해야 합니다.
이 변경은 Omnibus GitLab과 소스 설치 간의 일관성을 향상시키며, 두 플랫폼 모두에 대해 더 나은 문서화 및 도구 제공이 가능하게 합니다.
업그레이드 지침을 사용하여 가능한 한 빨리 새 구성 구조로 업데이트해야 합니다.
레거시 Praefect 구성 방법
- GitLab 15.9 에서 발표됨
- GitLab 16.0 에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 폐기 이슈를 참조하세요.
이전에는 Praefect 구성 키가 구성 파일 전체에 흩어져 있었습니다. 이제, 이는 단일 구성 구조에 포함되어 Praefect 구성과 일치하므로, 이전 구성 방법은 폐기되었습니다.
GitLab 15.9부터 사용 가능한 단일 구성 구조가 있으며, 이전 버전과의 호환성도 유지됩니다. 제거되면, Praefect는 단일 구성 구조를 사용하여 구성해야 합니다.
가능한 한 빨리 Praefect 구성을 업데이트해야 합니다.
이 변경은 Omnibus GitLab 내의 Praefect 구성을 Praefect의 구성 구조와 일치시킵니다. 이전에는 계층 구조와 구성 키가 일치하지 않았습니다.
이 변경은 Omnibus GitLab과 소스 설치 간의 일관성을 개선하여 두 플랫폼 모두에 대해 더 나은 문서화 및 도구 제공이 가능하게 합니다.
레거시 URL 교체 또는 제거
GitLab 16.0은 GitLab 애플리케이션에서 레거시 URL을 제거합니다.
GitLab 9.0에서 서브그룹이 도입될 때, 그룹 경로의 끝을 표시하기 위해 URL에 /-/
구분 기호가 추가되었습니다. 모든 GitLab URL은 이제 프로젝트, 그룹 및 인스턴스 수준 기능에 대해 이 구분 기호를 사용합니다.
/-/
구분 기호를 사용하지 않는 URL은 GitLab 16.0에서 제거될 예정입니다. 이러한 URL의 전체 목록과 교체 사항은 이슈 28848를 참조하십시오.
레거시 URL을 참조하는 스크립트나 북마크를 업데이트하십시오. GitLab API는 이 변경 사항의 영향을 받지 않습니다.
라이선스 확인 및 라이선스 준수 페이지의 정책 탭
라이선스 확인 기능은 이제 사용 중단 예정이며 GitLab 16.0에서 제거될 예정입니다. 또한, 라이선스 준수 페이지의 정책 탭 및 라이선스 확인 기능과 관련된 모든 API도 사용 중단 예정이며 GitLab 16.0에서 제거될 것입니다. 감지된 라이선스를 기반으로 승인을 계속 시행하려는 사용자는 대신 새로운 라이선스 승인 정책을 생성하는 것이 좋습니다.
외부 인증으로 개인 액세스 토큰 및 배포 토큰의 액세스 제한
외부 인증이 활성화된 경우, 개인 액세스 토큰(PAT) 및 배포 토큰은 더 이상 컨테이너 또는 패키지 레지스트리에 액세스할 수 있어서는 안 됩니다. 이 심층 방어 보안 조치는 16.0에서 배포될 예정입니다. 이러한 레지스트리에 액세스하기 위해 PAT 및 배포 토큰을 사용하는 사용자에게는 이 조치가 이러한 토큰의 사용을 중단시킵니다. 컨테이너 또는 패키지 레지스트리와 함께 토큰을 사용하려면 외부 인증을 비활성화하십시오.
GitLab Helm Chart의 주요 번들 Helm Chart 업데이트
GitLab 16.0에 맞춰 GitLab Helm Chart는 7.0 주요 버전을 출시할 예정입니다. 다음 주요 번들 차트 업데이트가 포함됩니다:
-
GitLab 16.0에서 PostgreSQL 12 지원이 제거되고 PostgreSQL 13이 새로운 최소 버전이 됩니다.
-
프로덕션 준비가 완료된 외부 데이터베이스를 사용하는 설치는 업그레이드 전에 최신 PostgreSQL 버전으로 마이그레이션을 완료해야 합니다.
-
비 프로덕션 번들 PostgreSQL 12 차트를 사용하는 설치는 차트가 새 버전으로 업그레이드됩니다. 자세한 내용은 문제 4118를 참조하세요.
-
-
비 프로덕션 번들 Redis 차트를 사용하는 설치는 차트가 최신 버전으로 업그레이드됩니다. 자세한 내용은 문제 3375를 참조하세요.
-
번들 cert-manager 차트를 사용하는 설치는 차트가 최신 버전으로 업그레이드됩니다. 자세한 내용은 문제 4313를 참조하세요.
전체 GitLab Helm Chart 7.0 업그레이드 단계는 업그레이드 문서에서 확인할 수 있습니다.
</div>
프로젝트당 활성 파이프라인 최대 수 제한(ci_active_pipelines
)
- GitLab 15.3에서 발표됨
- GitLab 16.0에서 제거됨
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
프로젝트당 활성 파이프라인 최대 수 제한은 기본적으로 활성화되지 않았으며 GitLab 16.0에서 제거될 예정입니다. 이 제한은 또한 ci_active_pipelines
아래의 Rails 콘솔에서 설정할 수 있습니다. 대신, 유사한 보호 기능을 제공하는 다른 권장 속도 제한을 사용하세요:
Prometheus를 통한 성능 메트릭 모니터링
- GitLab 14.7에서 발표됨
- GitLab 16.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
GitLab은 Prometheus 인스턴스에 저장된 데이터를 표시하여 사용자가 성능 메트릭을 볼 수 있도록 합니다. 또한 GitLab은 대시보드에서 이러한 메트릭의 시각화도 표시합니다. 사용자는 이전에 구성된 외부 Prometheus 인스턴스에 연결하거나 GitLab 관리 앱으로 Prometheus를 설정할 수 있습니다. 그러나 Kubernetes 클러스터와의 인증서 기반 통합은 GitLab에서 사용 중단되었으므로, Prometheus에 의존하는 GitLab의 메트릭 기능도 사용 중단됩니다. 여기에는 대시보드의 메트릭 시각화도 포함됩니다. GitLab은 Opstrace를 기반으로 한 단일 사용자 경험을 개발하기 위해 노력하고 있습니다. Opstrace 통합 작업을 따라갈 수 있는 문제가 존재합니다.
만료되지 않는 액세스 토큰
- GitLab 15.4에서 발표됨
- GitLab 16.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
만료 날짜가 없는 액세스 토큰은 무기한 유효하므로, 액세스 토큰이 유출되면 보안 위험이 발생합니다. 만료 날짜가 있는 액세스 토큰이 더 좋기 때문에, GitLab 15.3부터는 기본 만료 날짜를 설정합니다.
GitLab 16.0에서 만료 날짜가 없는 개인, 프로젝트 또는 그룹 액세스 토큰은 자동으로 1년의 만료 날짜가 설정됩니다.
기본값이 적용되기 전에 회사의 보안 정책에 맞추어 액세스 토큰에 만료 날짜를 설정하는 것이 좋습니다:
- GitLab.com에서 16.0 이정표 동안.
- GitLab 셀프 관리 인스턴스를 16.0으로 업그레이드할 때.
비표준 기본 Redis 포트가 사용 중단됩니다
- GitLab 15.8에서 발표됨
- GitLab 16.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
Redis 구성 파일이 없는 상태에서 GitLab이 시작되면, GitLab은 localhost:6380
, localhost:6381
및 localhost:6382
의 세 개의 Redis 서버에 연결할 수 있다고 가정합니다. 우리는 이 동작을 변경하여 GitLab이 localhost:6379
에 하나의 Redis 서버가 있다고 가정하도록 변경하고 있습니다.
세 개의 서버를 유지하고자 하는 관리자는 config/redis.cache.yml
, config/redis.queues.yml
및 config/redis.shared_state.yml
파일을 편집하여 Redis URL을 구성해야 합니다.
프로젝트를 즉시 삭제하는 옵션은 삭제 보호 설정에서 더 이상 지원되지 않습니다
- GitLab 15.9에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 폐기 문제를 참조하세요.
관리자 영역의 그룹 및 프로젝트 삭제 보호 설정에는 그룹과 프로젝트를 즉시 삭제하는 옵션이 있었습니다. 16.0부터 이 옵션은 더 이상 제공되지 않으며, 지연된 그룹 및 프로젝트 삭제가 기본 동작이 됩니다.
이 옵션은 더 이상 그룹 설정으로 표시되지 않습니다. 셀프 관리 사용자는 삭제 지연 기간을 정의할 수 있는 옵션이 여전히 있으며, SaaS 사용자는 7일의 조정 불가능한 기본 보존 기간을 가집니다. 사용자는 여전히 프로젝트 설정에서 프로젝트를 즉시 삭제할 수 있으며, 그룹 설정에서 그룹을 삭제할 수 있습니다.
그룹과 프로젝트를 기본적으로 즉시 삭제하는 옵션은 사용자가 이 작업을 실수로 수행하여 그룹과 프로젝트를 영구적으로 잃어버리는 것을 방지하기 위해 폐기되었습니다.
</div>
PostgreSQL 12가 폐기되었습니다
- GitLab 15.0에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 폐기 문제를 참조하세요.
PostgreSQL 12에 대한 지원은 GitLab 16.0에서 제거될 예정입니다.
GitLab 16.0에서는 PostgreSQL 13이 최소 요구 PostgreSQL 버전이 됩니다.
PostgreSQL 12는 전체 GitLab 15 릴리즈 주기 동안 지원됩니다.
PostgreSQL 13은 GitLab 16.0 이전에 업그레이드를 원하는 인스턴스에서도 지원됩니다.
PostgreSQL 13에 대한 지원은 GitLab 15.2에서 Geo에 추가되었습니다.
Projects API 필드 operations_access_level
이 폐기되었습니다
- GitLab 15.8에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 폐기 문제를 참조하세요.
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 인스턴스로 리포지토리의 디렉토리 트리를 가져옵니다. 이 리포지토리는 이전에 GitLab에 의해 관리되었어야 하며, Rake 작업은 특정 디렉토리 구조 또는 특정 사용자 지정 Git 설정(gitlab.fullpath
)에 의존합니다.
이 Rake 작업을 사용하여 리포지토리를 가져오는 데는 제한 사항이 있습니다. Rake 작업은:
- 프로젝트 및 프로젝트 위키 리포지토리만 알고 있으며, 디자인, 그룹 위키 또는 스니펫에 대한 리포지토리는 지원하지 않습니다.
- 지원되지 않는 비해시 저장소 프로젝트를 가져올 수 있도록 허용합니다.
-
gitlab.fullpath
Git 구성이 설정되어 있어야 합니다. Epic 8953는 이러한 설정에 대한 지원을 제거하는 것을 제안합니다.
gitlab:import:repos
Rake 작업을 사용하는 대신 다음과 같은 대안이 있습니다:
- 내보내기 파일을 사용하여 프로젝트를 마이그레이션 하거나, 직접 전송으로 리포지토리를 마이그레이션 할 수 있습니다.
- URL로 리포지토리 가져오기.
- 비 GitLab 소스에서 리포지토리 가져오기 할 수 있습니다.
Redis 5 사용 중단
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
Runner 엔드포인트에서 job_age
매개변수 제거
GitLab Runner와의 통신에서 사용되는 POST /jobs/request
API 엔드포인트에서 반환되는 job_age
매개변수는 GitLab 또는 Runner 기능에 의해 사용된 적이 없습니다. 이 매개변수는 GitLab 16.0에서 제거됩니다.
이 매개변수가 엔드포인트에서 반환되기를 의존하는 고유한 러너를 개발한 경우 주요 변경 사항이 될 수 있습니다. 공식 릴리스된 GitLab Runner 버전 또는 GitLab.com의 공개 공유 런너를 사용하는 경우에는 주요 변경 사항이 아닙니다.
GitLab 16.0에서 SAST 분석기 지원 범위 변경
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에서 다음 변경 사항을 더 이상 적용하지 않습니다:
-
PHPCS Security Audit 기반 분석기의 지원을 제거하고 Semgrep 기반 분석기에서 GitLab 관리 탐지 규칙으로 대체합니다.
-
SpotBugs 기반 분석기에서 Scala를 범위에서 제거하고 Semgrep 기반 분석기에서 GitLab 관리 탐지 규칙으로 대체합니다.
PHPCS Security Audit 기반 분석기를 교체하는 작업은 이슈 364060에서 추적되며, Scala 스캔을 Semgrep 기반 분석기로 마이그레이션하는 작업은 이슈 362958에서 추적됩니다.
보안 분석기 주요 버전 업데이트
- GitLab 15.9에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 제거 이슈를 참조하세요.
보안 단계는 GitLab 16.0 릴리즈와 함께 분석기의 주요 버전을 업데이트할 예정입니다. 이 업데이트는 다음과 같은 분석기 간의 명확한 구분을 가능하게 합니다:
- 2023년 5월 22일 이전에 릴리스된 것
- 2023년 5월 22일 이후에 릴리스된 것
기본으로 포함된 템플릿을 사용하지 않거나 분석기 버전을 고정한 경우, CI/CD 작업 정의를 업데이트하여 고정된 버전을 제거하거나 최신 주요 버전으로 업데이트해야 합니다. GitLab 13.0-15.10 사용자는 GitLab 16.0 릴리스 전까지 정상적으로 분석기 업데이트를 경험하며, 이후에는 새로 수정된 버그와 릴리스된 기능이 오직 새로운 주요 버전의 분석기에만 릴리스됩니다. 우리는 유지 관리 정책에 따라 구식 버전에는 버그 및 기능을 백포트하지 않습니다. 필요한 경우 보안 패치는 최신 3개의 마이너 릴리즈에 백포트됩니다.
특히, 다음 사항이 더 이상 업데이트되지 않으며 16.0 GitLab 릴리즈 이후로는 업데이트되지 않습니다:
- API Fuzzing: 버전 2
- Container Scanning: 버전 5
- Coverage-guided fuzz testing: 버전 3
- Dependency Scanning: 버전 3
- Dynamic Application Security Testing (DAST): 버전 3
- DAST API: 버전 2
- IaC Scanning: 버전 3
- License Scanning: 버전 4
- Secret Detection: 버전 4
- Static Application Security Testing (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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 제거 이슈를 참조하세요.
GitLab 관리 CI/CD 템플릿의 보안 스캐닝은 GitLab 16.0 릴리즈에서 업데이트될 것입니다.
업데이트에는 최신 CI/CD 템플릿 버전에서 이미 릴리스된 개선 사항이 포함됩니다.
이러한 변경 사항은 맞춤형 CI/CD 파이프라인 구성에 혼란을 초래할 가능성이 있기 때문에 최신 템플릿 버전에서 릴리스되었습니다.
모든 업데이트된 템플릿에서, SAST_DISABLED
및 DEPENDENCY_SCANNING_DISABLED
와 같은 변수의 정의를 업데이트하여 값이 "true"
일 경우에만 스캐닝이 비활성화되도록 합니다. 이전에는 값이 "false"
일 경우에도 스캐닝이 비활성화되었습니다.
다음 템플릿이 업데이트됩니다:
- API Fuzzing:
API-Fuzzing.gitlab-ci.yml
- Container Scanning:
Container-Scanning.gitlab-ci.yml
- Coverage-Guided Fuzzing:
Coverage-Fuzzing.gitlab-ci.yml
- DAST:
DAST.gitlab-ci.yml
- DAST API:
DAST-API.gitlab-ci.yml
- Dependency Scanning:
Dependency-Scanning.gitlab-ci.yml
- IaC Scanning:
SAST-IaC.gitlab-ci.yml
- SAST:
SAST.gitlab-ci.yml
- Secret Detection:
Secret-Detection.gitlab-ci.yml
위에 나열된 템플릿 중 하나를 사용하고 _DISABLED
변수를 사용하지만 "true"
가 아닌 값을 설정한 경우, 16.0 릴리즈 이전에 파이프라인을 테스트할 것을 권장합니다.
업데이트: 우리는 영향을 받는 템플릿에서 기본적으로 병합 요청 파이프라인에서 실행되도록 rules
를 업데이트할 것이라고 발표했습니다.
그러나 호환성 문제로 인해 제거 이슈에서 논의된 것처럼, 우리는 더 이상 GitLab 16.0에서 이 변경을 하지 않을 것입니다. 위에 설명된 대로 _DISABLED
변수의 변경 사항은 여전히 릴리스될 것입니다.
보안 보고서 스키마 버전 14.x.x
- GitLab 15.3에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
버전 14.x.x 보안 보고서 스키마가 사용 중단되었습니다.
GitLab 15.8 이후, 스키마 버전 14.x.x를 사용하는 보안 보고서 스캐너 통합은 파이프라인의 보안 탭에 사용 중단 경고를 표시합니다.
GitLab 16.0 이후, 해당 기능이 제거됩니다. 스키마 버전 14.x.x를 사용하는 보안 보고서는 파이프라인의 보안 탭에서 오류를 발생시킬 것입니다.
자세한 내용은 보안 보고서 검증을 참조하세요.
Kubernetes용 GitLab 에이전트 구성의 Starboard 지시문
- GitLab 15.4에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
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 상태 이름의 마침표(.
) 지원은 기존 상태를 중단시킬 수 있습니다.
이전에는 마침표가 포함된 Terraform 상태 이름이 지원되지 않았습니다. 하지만, 우회 방법을 통해 마침표가 포함된 상태 이름을 사용할 수 있었습니다.
GitLab 15.7은 마침표가 포함된 상태 이름에 대한 완전한 지원을 추가했습니다. 이러한 상태 이름을 처리하기 위해 우회 방법을 사용했다면, 작업이 실패할 수 있으며 Terraform을 처음 실행한 것처럼 보일 수 있습니다.
문제를 해결하려면:
- 마침표와 그 뒤의 문자를 제외하고 상태 파일에 대한 모든 참조를 변경하세요.
- 예를 들어, 상태 이름이
state.name
인 경우 모든 참조를state
로 변경합니다.
- 예를 들어, 상태 이름이
- Terraform 명령을 실행합니다.
전체 상태 이름(마침표 포함)을 사용하려면, 전체 상태 파일로 마이그레이션을 하세요.
API는 더 이상 Kubernetes의 에이전트에 대한 취소된 토큰을 반환하지 않습니다.
현재 클러스터 에이전트 API 엔드포인트에 대한 GET 요청은 취소된 토큰을 반환할 수 있습니다. GitLab 16.0에서는 GET 요청이 더 이상 취소된 토큰을 반환하지 않습니다.
이러한 엔드포인트에 대한 호출을 검토하고 취소된 토큰을 사용하지 않도록 해야 합니다.
이 변경은 다음 REST 및 GraphQL API 엔드포인트에 영향을 미칩니다:
- REST API:
- GraphQL:
Phabricator 작업 가져오기 도구가 중단되었습니다.
Phabricator 작업 가져오기 도구가 중단됩니다. Phabricator 프로젝트는 2021년 6월 1일부터 더 이상 활성 유지 관리되지 않습니다. 이 도구를 사용한 가져오기를 관찰하지 못했습니다. GitLab의 열린 관련 이슈에 대한 활동도 없습니다.
최신 Terraform 템플릿이 현재 안정적인 템플릿을 덮어씁니다
- GitLab 15.8에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경 사항을 논의하거나 더 알아보려면 사용 중지 문제를 참조하세요.
모든 주요 GitLab 버전에서 우리는 안정적인 Terraform 템플릿을 현재의 최신 템플릿으로 업데이트합니다.
이 변경 사항은 quickstart와 base 템플릿에 영향을 미칩니다.
새 템플릿은 기본 규칙과 함께 제공되므로 업데이트가 Terraform 파이프라인을 중단시킬 수 있습니다.
예를 들어, Terraform 작업이 하위 파이프라인으로 트리거되는 경우 규칙이 GitLab 16.0에서 작업을 트리거하지 않습니다.
변경 사항에 맞추어 .gitlab-ci.yml
파일에서 rules
를 조정해야 할 수도 있습니다.
병합 요청에서 /draft
빠른 작업의 동작 전환
- GitLab 15.4에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경 사항을 논의하거나 더 알아보려면 사용 중지 문제를 참조하세요.
병합 요청의 초안 상태 전환 동작을 보다 명확하게 만들기 위해 /draft
빠른 작업의 전환 동작을 사용 중지하고 제거하고 있습니다. GitLab의 16.0 릴리스부터 /draft
는 병합 요청을 초안으로 설정하는 데만 사용되며, 새로운 /ready
빠른 작업이 초안 상태를 제거하는 데 사용됩니다.
vulnerabilityFindingDismiss
뮤테이션에서 id
필드의 사용
- GitLab 15.3에서 발표됨
- GitLab 16.0에서 제거됨 (breaking change)
- 이 변경 사항을 논의하거나 더 알아보려면 사용 중지 문제를 참조하세요.
vulnerabilityFindingDismiss
GraphQL 뮤테이션을 사용하여 취약점 발견의 상태를 Dismissed
로 설정할 수 있습니다. 이전에 이 뮤테이션은 발견을 고유하게 식별하기 위해 id
필드를 사용했습니다. 그러나 이 방법은 파이프라인 보안 탭에서 발견을 해제하는 데 작동하지 않았습니다. 따라서 고유 식별자로서 id
필드의 사용이 uuid
필드에 우선하여 삭제되었습니다. ‘uuid’ 필드를 식별자로 사용하면 파이프라인 보안 탭에서 발견을 해제할 수 있습니다.
서드파티 컨테이너 레지스트리 사용 중단
- GitLab 15.8에서 발표
- GitLab 16.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 중단 문제를 참조하세요.
서드파티 컨테이너 레지스트리를 GitLab의 인증 엔드포인트로 사용하는 것은 GitLab 15.8에서 지원 중단되며 지원 종료는 GitLab 16.0로 예정되어 있습니다. 이는 외부 레지스트리를 GitLab 사용자 인터페이스에 연결하여 컨테이너 이미지를 찾고, 보고, 삭제하는 self-managed 고객에게 영향을 미칩니다.
GitLab의 컨테이너 레지스트리와 서드파티 컨테이너 레지스트리를 동시에 지원하는 것은 유지 관리, 코드 품질 및 이전 호환성 측면에서 도전이 됩니다. 이것은 우리가 효율성을 유지하는 능력을 방해합니다. 결과적으로 우리는 이 기능을 앞으로 지원하지 않을 것입니다.
이 변경 사항은 파이프라인을 사용하여 외부 레지스트리에 컨테이너 이미지를 끌어오고 푸시하는 능력에 영향을 미치지 않습니다.
우리가 GitLab.com에 대해 새로운 GitLab 컨테이너 레지스트리 버전을 출시한 이후, 우리는 서드파티 컨테이너 레지스트리에서는 사용할 수 없는 추가 기능을 구현하기 시작했습니다. 이러한 새로운 기능은 정리 정책과 같은 중요한 성능 개선을 이루는 데 기여했습니다. 우리는 대부분이 GitLab 컨테이너 레지스트리에서만 사용할 수 있는 기능을 요구하는 새로운 기능 제공에 주력하고 있습니다. 이러한 중단은 장기적으로 더 강력한 통합 레지스트리 경험과 기능 세트를 제공하는 데 집중하여 단편화와 사용자 불만을 줄이는 데 도움이 됩니다.
앞으로 우리는 GitLab 컨테이너 레지스트리에서만 사용할 수 있는 새로운 기능 개발과 배포에 계속 투자할 것입니다.
경로 끝에 글로벌 ID가 있는 작업 항목 사용 중단
- GitLab 15.10에서 발표
- GitLab 16.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 중단 문제를 참조하세요.
작업 항목 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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
혼동과 중복을 피하기 위해 environment_tier
매개변수가 사용 중단되고 environment_tiers
매개변수가 도입되었습니다. 새로운 environment_tiers
매개변수는 DORA API가 여러 티어에 대한 집계 데이터를 동시에 반환할 수 있도록 합니다. environment_tier
매개변수는 GitLab 16.0에서 제거됩니다.
name
필드 for PipelineSecurityReportFinding
GraphQL 유형
- GitLab 15.1에 발표됨
- GitLab 16.0에 제거될 예정 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
이전에는 PipelineSecurityReportFinding
GraphQL 유형이 업데이트되었습니다 새로운 title
필드를 포함하도록. 이 필드는 현재 name
필드의 별칭으로, 덜 구체적인 name
필드는 중복적입니다. name
필드는 GitLab 16.0에서 PipelineSecurityReportFinding
유형에서 제거될 예정입니다.
started
반복 상태
- GitLab 14.8에 발표됨
- GitLab 16.0에 제거될 예정 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
iterations GraphQL API와 iterations REST API에서 started
반복 상태가 사용 중단되었습니다.
GraphQL API 버전은 GitLab 16.0에서 제거될 예정입니다. 이 상태는 다른 시간 기반 엔터티(예: 마일스톤)와의 이름 일치를 위해 이미 사용 가능한 current
상태로 대체되고 있습니다.
우리는 다음 v5 REST API 버전까지 REST API 버전에서 started
상태를 계속 지원할 계획입니다.
vulnerabilityFindingDismiss
GraphQL 변이
- GitLab 15.5에 발표됨
- GitLab 16.0에 제거될 예정 (breaking change)
- 이 변경에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
VulnerabilityFindingDismiss
GraphQL 변이는 사용 중단되며 GitLab 16.0에서 제거될 예정입니다. 이 변이는 취약성 발견 ID가 사용자에게 제공되지 않았기 때문에 자주 사용되지 않았습니다(이 필드는 15.3에서 사용 중단됨). 사용자는 대신 취약성 보고서에서 취약성을 기각하기 위해 VulnerabilityDismiss
를 사용하거나 CI 파이프라인 보안 탭에서 보안 발견을 위해 SecurityFindingDismiss
를 사용해야 합니다.
</div>
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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 사용 중단 문제를 참조하세요.
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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 사용 중단 문제를 참조하세요.
Web IDE의 Live Preview 기능은 정적 웹 애플리케이션의 클라이언트 측 미리보기를 제공하기 위한 것이었습니다. 그러나 복잡한 구성 단계와 지원되는 프로젝트 유형의 제한으로 인해 유용성이 제한되었습니다. GitLab 15.7에서 Web IDE Beta가 도입됨에 따라 이제 전체 서버 측 런타임 환경에 연결할 수 있습니다. Web IDE에서 확장 프로그램 설치에 대한 지원이 추가됨에 따라 Live Preview로 제공되는 것보다 더 발전된 워크플로우를 지원할 것입니다. GitLab 15.9부터는 Web IDE에서 Live Preview를 더 이상 사용할 수 없습니다.
Kubernetes와의 인증서 기반 SaaS 통합
Kubernetes와의 인증서 기반 통합은 더 이상 사용되지 않으며 제거될 예정입니다. GitLab SaaS 고객으로서, 새로운 네임스페이스에서는 GitLab과 클러스터를 인증서 기반 방식으로 통합할 수 없습니다(GitLab 15.0부터). 현재 사용자에 대한 통합은 네임스페이스별로 활성화됩니다.
Kubernetes와의 보다 견고하고 안전하며 신뢰할 수 있는 통합을 위해, Kubernetes 에이전트를 사용하여 Kubernetes 클러스터를 GitLab과 연결하는 것을 권장합니다. 어떻게 마이그레이션하나요?
명시된 제거 날짜는 설정되어 있지만, 새로운 솔루션이 기능 동등성을 갖출 때까지 이 기능을 제거할 계획은 없습니다. 제거에 대한 장애물에 대한 더 많은 정보는 이 이슈를 참조하세요.
이 비활성화에 대한 업데이트 및 세부정보는 이 에픽을 팔로우하세요.
GitLab 자체 관리 고객은 여전히 기능 플래그를 사용하여 이 기능을 사용할 수 있습니다.
GitLab 15.7
.gitlab-ci.yml
에서 파일 유형 변수 확장
이전에는 별칭 파일 변수를 참조하거나 적용한 변수가 File
유형 변수의 값을 확장했습니다. 예를 들어, 파일 내용이 그렇습니다. 이 동작은 일반적인 셸 변수 확장 규칙을 준수하지 않아 올바르지 않았습니다. File
유형 변수에 저장된 비밀 정보나 민감한 정보가 유출될 수 있도록, 사용자가 변수와 함께 $echo 명령어를 실행할 수 있었습니다.
이 주요 변경 사항은 이 문제를 수정하지만, 이 동작에 대한 우회를 사용하는 사용자 워크플로우에 방해가 될 수 있습니다. 이 변경으로 인해 별칭 파일 변수를 참조하거나 적용하는 작업 변수 확장이 이제 File
유형 변수의 값 대신 파일 이름이나 경로로 확장됩니다. 즉, 파일 내용이 아닙니다.
Flowdock 통합
- GitLab 15.7에서 발표됨
- GitLab 15.7에서 제거됨
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
2022년 12월 22일부터 Flowdock 통합을 제거합니다. 이는 서비스가 2022년 8월 15일에 중단되었기 때문입니다.
GitLab 15.6
Git 저장소 저장을 위한 NFS
- GitLab 14.0에서 발표됨
- GitLab 15.6에서 제거됨
Gitaly Cluster의 일반 가용성(GitLab 13.0에서 소개됨)에 따라, GitLab 14.0에서 Git 저장소 저장을 위한 NFS에 대한 개발(버그 수정, 성능 개선 등)을 종료했습니다. 14.x 동안 Git 저장소를 위한 NFS에 대한 기술 지원은 계속 제공하겠지만, 2022년 11월 22일에 NFS에 대한 모든 지원을 제거할 것입니다. 이는 원래 2022년 5월 22일로 예정되어 있었으나, Gitaly Cluster의 계속적인 성장을 허용하기 위해 지원 중단 날짜를 연장하기로 결정했습니다. 추가 정보는 공식 지원 성명서를 참조하세요.
Gitaly Cluster는 고객에게 다음과 같은 많은 이점을 제공합니다:
현재 NFS를 Git 저장소로 사용하고 있는 고객은 Gitaly Cluster로 마이그레이션하는 문서를 검토하여 마이그레이션 계획을 세우길 권장합니다.
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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 폐기 문제를 참조하세요.
GitLab SAST는 다양한 분석기를 사용하여 코드에서 취약점을 검사합니다.
우리는 더 나은 일관된 사용자 경험을 제공하기 위한 장기 전략의 일환으로 GitLab SAST에서 사용하는 분석기의 수를 줄이고 있습니다.
분석기 세트를 간소화하면 더 빠른 반복, 더 나은 결과, 더 큰 효율성( 대부분의 경우 CI 러너 사용의 감소 포함)을 달성할 수 있습니다.
GitLab 15.4에서 GitLab SAST는 더 이상 다음 분석기를 사용하지 않습니다:
참고: 이 변경은 원래 GitLab 15.0에 계획되었으나 GitLab 15.4로 연기되었습니다.
이 분석기는 GitLab 관리형 SAST CI/CD 템플릿에서 제거되고 Semgrep 기반 분석기로 대체됩니다.
즉시 적용되며, 보안 업데이트만 제공됩니다. 기타 일상적인 개선 또는 업데이트는 보장되지 않습니다.
이 분석기가 지원 종료에 도달하면 더 이상의 업데이트는 제공되지 않습니다.
이 분석기를 위해 이전에 게시된 컨테이너 이미지는 삭제하지 않을 것입니다. 그러한 변경 사항은 폐기, 제거 또는 비호환 변경 사항 발표로 공지될 것입니다.
우리는 또한 SpotBugs 분석기에서 Java를 범위에서 제거하고 Semgrep 기반 분석기로 대체합니다.
이 변경은 Java 코드를 스캔하는 것을 더 간단하게 만들 것입니다. 더 이상 컴파일이 필요하지 않습니다.
이 변경은 GitLab 관리형 SAST CI/CD 템플릿에서 자동 언어 감지 부분에 반영됩니다. SpotBugs 기반 분석기가 Groovy, Kotlin 및 Scala를 계속 커버할 것임을 유념하세요.
이전의 폐기된 분석기 중 하나에서 취약점 발견을 이미 무시한 경우, 교체 분석기는 이전 무시를 존중하려고 시도합니다. 시스템 동작은 다음에 의존합니다:
- 이전에 Semgrep 기반 분석기를 실행하지 않도록 제외했는지 여부.
- 프로젝트의 취약점 보고서에 표시된 취약점을 처음 발견한 분석기.
자세한 내용은 취약점 변환 문서를 참조하세요.
영향을 받는 분석기 중 어떤 것에 사용자 정의를 적용했거나 현재 파이프라인에서 Semgrep 분석기를 비활성화한 경우, 이 변경 사항에 대한 폐기 문제에 자세히 설명된 대로 조치를 취해야 합니다.
</div>
GitLab 15.3
상태별 취약점 보고서 정렬
- GitLab 15.0에서 발표됨
- GitLab 15.3에서 제거됨
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 제거 이슈를 참조하세요.
취약점 보고서를 State
열로 정렬하는 기능은 기초 데이터 모델의 리팩토링으로 인해 GitLab 14.10에서 비활성화되고 기능 플래그 뒤에 숨겨졌습니다. 성능을 유지하기 위해 이 값을 기준으로 정렬하려면 추가 리팩토링이 필요하므로 기능 플래그는 기본적으로 꺼진 상태로 유지되었습니다. State
열로 정렬하는 사용률이 매우 낮기 때문에 코드베이스를 단순화하고 원치 않는 성능 저하를 방지하기 위해 기능 플래그가 삭제될 것입니다.
도구별 취약점 보고서 정렬
- 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 15.0에서 제거됩니다.
이 이벤트는 항상 기본적으로 비활성화되어 있었고 수동으로 기능 플래그를 사용하여 활성화해야 했습니다. 이들을 활성화하면 너무 많은 이벤트가 생성되어 GitLab 인스턴스의 속도가 현저하게 저하될 수 있습니다. 이러한 이유로 인해 이 기능이 제거됩니다.
객체 저장소를 위한 백그라운드 업로드
GitLab의 객체 저장소 기능의 전반적인 복잡성과 유지 관리 부담을 줄이기 위해, 파일을 업로드하는 데 background_upload
를 사용하는 지원이 사용 중단되었으며 GitLab 15.0에서 완전히 제거될 예정입니다. 15.0 특정 변경 사항 및 객체 저장소를 위한 제거된 백그라운드 업로드 설정을 검토하세요.
이는 소수의 객체 저장소 제공업체에 영향을 미칩니다:
- OpenStack OpenStack을 사용하는 고객은 Swift 대신 S3 API를 사용하도록 구성 변경이 필요합니다.
- RackSpace RackSpace 기반 객체 저장소를 사용하는 고객은 데이터를 다른 제공업체로 마이그레이션해야 합니다.
GitLab은 영향을 받는 고객이 마이그레이션할 수 있도록 추가 지침을 게시할 예정입니다.
CI/CD 작업 이름 길이 제한
GitLab 15.0에서는 CI/CD 작업 이름의 문자 수를 255자로 제한할 예정입니다. 255자 제한을 초과하는 작업 이름이 있는 파이프라인은 15.0 릴리즈 이후 작동을 중단합니다.
인스턴스(공유) 러너를 프로젝트(특정) 러너로 변경
GitLab 15.0에서는 인스턴스(공유) 러너를 더 이상 프로젝트(특정) 러너로 변경할 수 없습니다.
사용자들이 종종 실수로 인스턴스 러너를 프로젝트 러너로 변경하고, 이를 다시 변경할 수 없게 됩니다. GitLab은 보안상의 이유로 프로젝트 러너를 공유 러너로 변경하는 것을 허용하지 않습니다. 하나의 프로젝트에 대해 설정된 러너는 전체 인스턴스의 작업을 실행할 수 있습니다.
여러 프로젝트에 대한 러너를 추가해야 하는 관리자는 하나의 프로젝트에 러너를 등록한 다음, 관리 보기로 이동하여 추가 프로젝트를 선택할 수 있습니다.
컨테이너 네트워크 및 호스트 보안
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거 예정 (중단된 변경사항)
GitLab의 컨테이너 네트워크 보안 및 호스트 보안 카테고리와 관련된 모든 기능은 GitLab 14.8에서 중단되며, GitLab 15.0에서 제거될 예정입니다. 이 기능의 대체가 필요한 사용자에게는 GitLab 외부에서 설치 및 관리할 수 있는 잠재적 솔루션으로 다음의 오픈 소스 프로젝트를 평가할 것을 권장합니다: AppArmor, Cilium, Falco, FluentD, Pod Security Admission.
이 기술을 GitLab에 통합하려면 원하는 Helm 차트를 클러스터 관리 프로젝트 템플릿 복사본에 추가하세요.
이 Helm 차트를 프로덕션에 배포하려면 GitLab의 CI/CD를 통해 명령을 호출하세요.
이 변경의 일환으로, GitLab 내에서 다음의 특정 기능이 현재 중단되었으며, GitLab 15.0에서 제거될 예정입니다:
- 보안 및 규정 준수 > 위협 모니터링 페이지.
-
보안 및 규정 준수 > 정책 페이지에서 찾을 수 있는
네트워크 정책
보안 정책 유형. - GitLab을 통해 다음 기술과의 통합을 관리하는 기능: AppArmor, Cilium, Falco, FluentD, 및 Pod 보안 정책.
- 위 기능과 관련된 모든 API.
이 변경에 대한 추가 맥락을 제공하거나 피드백을 주시려면 우리의 열린 중단 문제를 참고해 주세요.
14.0.0 미만의 컨테이너 스캔 스키마
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거 예정
컨테이너 스캔 보고서 스키마 버전 14.0.0 이전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서가 보고서에 선언된 스키마 버전과 유효성 검사를 통과하지 못하면 GitLab 15.0에서 더 이상 지원되지 않습니다.
컨테이너 스캔 보안 보고서를 출력하여 GitLab과 통합하는 서드파티 도구가 영향을 받습니다. 모든 출력 보고서가 최소 14.0.0의 올바른 스키마를 준수하도록 해야 합니다. 버전이 낮거나 선언된 스키마 버전과 유효성 검사를 통과하지 못하는 보고서는 처리되지 않으며, 취약성 발견 사항이 MRs, 파이프라인 또는 취약성 보고서에 표시되지 않습니다.
전환을 지원하기 위해, GitLab 14.10부터 비준수 보고서에는 취약성 보고서에 경고가 표시됩니다.
14.0.0 이하의 커버리지 기반 퍼징 схемы
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거됨
버전 14.0.0 이하의 보고서는 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 схемы 버전에 대한 유효성 검사를 통과하지 않는 보고서도 GitLab 15.0에서 더 이상 지원되지 않습니다.
커버리지 기반 퍼징 보안 보고서를 출력하여 GitLab과 통합하는 타사 도구가 영향을 받습니다. 모든 출력 보고서가 최소 14.0.0 버전의 올바른 схемы를 준수하는지 확인해야 합니다. 낮은 버전의 보고서나 선언된 схемы 버전 검증에 실패한 보고서는 처리되지 않으며, 취약점 발견 사항은 MR, 파이프라인 또는 취약점 보고서에 표시되지 않습니다.
전환을 돕기 위해 GitLab 14.10부터 비준수 보고서가 경고로 표시됩니다.
14.0.0 이하의 DAST схемы
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거됨
버전 14.0.0 이전의 보고서는 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서에 선언된 схемы 버전에 대한 유효성 검사를 통과하지 않는 보고서도 GitLab 15.0에서 더 이상 지원되지 않습니다.
DAST 보안 보고서를 출력하여 GitLab과 통합하는 타사 도구가 영향을 받습니다. 모든 출력 보고서가 최소 14.0.0 버전의 올바른 схемы를 준수하는지 확인해야 합니다. 낮은 버전의 보고서나 선언된 схемы 버전 검증에 실패한 보고서는 처리되지 않으며, 취약점 발견 사항은 MR, 파이프라인 또는 취약점 보고서에 표시되지 않습니다.
전환을 돕기 위해 GitLab 14.10부터 비준수 보고서가 경고가 표시됩니다 .
종속성 스캐닝 Python 3.9 및 3.6 이미지 사용 중지
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (비 breaking change)
- 이 변경사항에 대해 논의하거나 더 알아보려면 사용 중지 문제를 참조하세요.
Python 프로젝트에 대해 종속성 스캐닝을 사용하는 경우, 우리는 Python 3.6을 사용하는 기본 gemnasium-python:2
이미지를 사용 중단하고, Python 3.9를 사용하는 커스텀 gemnasium-python:2-python-3.9
이미지도 사용 중단합니다. GitLab 15.0부터의 새로운 기본 이미지는 Python 3.9를 위한 것입니다. 이는 지원되는 버전이며, 3.6은 더 이상 지원되지 않습니다.
Python 3.9 또는 3.9와 호환되는 프로젝트를 사용하는 사용자들은 조치를 취할 필요가 없으며, 종속성 스캐닝은 GitLab 15.0에서 작동하기 시작해야 합니다. 현재 새 컨테이너를 테스트하려면, 이 컨테이너로 프로젝트에서 테스트 파이프라인을 실행하세요 (15.0에서 제거될 것입니다). Python 3.9 이미지를 사용하세요:
gemnasium-python-dependency_scanning:
image:
name: registry.gitlab.com/gitlab-org/security-products/analyzers/gemnasium-python:2-python-3.9
Python 3.6을 사용하는 사용자들은 GitLab 15.0부터 더 이상 종속성 스캐닝을 위한 기본 템플릿을 사용할 수 없습니다. 사용 중지된 gemnasium-python:2
분석기 이미지를 사용하도록 전환해야 합니다. 이 영향을 받는 경우에는 이 문제에 댓글을 남겨주세요. 필요할 경우 제거를 연장할 수 있도록 하겠습니다.
3.9 특수 예외 이미지를 사용하는 사용자들은 기본 값 사용을 변경해야 하며 더 이상 컨테이너를 오버라이드하지 않아야 합니다. 3.9 특수 예외 이미지를 사용하고 있는지 확인하려면 다음 참조를 위해 .gitlab-ci.yml
파일을 확인하세요:
gemnasium-python-dependency_scanning:
image:
name: registry.gitlab.com/gitlab-org/security-products/analyzers/gemnasium-python:2-python-3.9
Dependency Scanning 기본 Java 버전이 17로 변경되었습니다
- GitLab 14.10에서 발표됨
- GitLab 15.0에서 제거됨 (중단 변경)
GitLab 15.0에서는 Dependency Scanning의 기본 Java 버전이 11에서 17로 업데이트됩니다. Java 17은 가장 최신의 장기 지원(LTS) 버전입니다. Dependency Scanning은 동일한 버전 범위(8, 11, 13, 14, 15, 16, 17)를 계속 지원하며, 단지 기본 버전만 변경됩니다. 프로젝트에서 이전 기본 Java 11을 사용하고 있는 경우, 변수를 DS_Java_Version
에 맞게 설정해야 합니다.
14.0.0 이전의 Dependency Scanning 스키마
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거됨
Dependency scanning 보고서 스키마 14.0.0 이전의 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서가 보고서에 선언된 스키마 버전에 대해 유효성 검사를 통과하지 않으면 GitLab 15.0부터 더 이상 지원되지 않습니다.
Dependency scanning 보안 보고서 출력에 통합된 타사 도구는 영향을 받습니다. 모든 출력 보고서가 최소 14.0.0 버전의 올바른 스키마를 준수하도록 해야 합니다. 더 낮은 버전의 보고서나 선언된 스키마 버전에 대한 유효성 검사를 통과하지 못한 보고서는 처리되지 않으며, 취약성 발견 사항이 MRs, 파이프라인 또는 취약성 보고서에 표시되지 않습니다.
전환을 도움을 주기 위해, GitLab 14.10부터는 비준수 보고서에 대해 경고가 표시됩니다.
Geo 관리 UI 라우트 중단
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨
- 이 변경에 대해 논의하거나 자세한 내용을 보려면 중단 이슈를 참조하세요.
GitLab 13.0에서는 Geo 관리 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의 다중 데이터베이스 지원으로 전환한 후 가능해진 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 사용 중단
기능 플래그 PUSH_RULES_SUPERSEDE_CODE_OWNERS
는 GitLab 15.0에서 제거됩니다. 제거 시 푸시 규칙이 코드 소유자를 초월합니다. 코드 소유자 승인이 요구되더라도 특정 사용자가 코드를 푸시하도록 명시적으로 허용하는 푸시 규칙이 코드 소유자 설정을 초월합니다.
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은 Amazon OpenSearch와도 호환되지 않으며, 우리는 GitLab 15.0에서 지원할 계획입니다.
보안 보고서 스키마의 강제 검증
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거 예정
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
보안 보고서 스키마 버전이 14.0.0보다 낮으면 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서가 보고서에 선언된 스키마 버전과 검증을 통과하지 못하면 GitLab 15.0에서 더 이상 지원되지 않습니다.
GitLab과 보안 보고서를 출력하여 통합되는 보안 도구들은 영향을 받습니다. 모든 출력 보고서가 최소 14.0.0 버전의 올바른 스키마를 준수하는지 확인해야 합니다.
버전이 낮거나 선언된 스키마 버전과 검증 실패한 보고서는 처리되지 않으며, 취약점 발견 사항은 MRs, 파이프라인 또는 취약점 보고서에 표시되지 않습니다.
전환을 돕기 위해 GitLab 14.10부터 비정상 보고서는 취약점 보고서에 경고가 표시됩니다.
외부 상태 검사 API 파괴적 변경 사항
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거 예정 (파괴적인 변경 사항)
외부 상태 검사 API는 원래 상태 검사를 통과로 표시하기 위해 기본적으로 통과하는 요청을 지원하기 위해 구현되었습니다. 기본적으로 통과하는 요청은 이제 사용 중단되었습니다.
특히, 다음 요청이 사용 중단되었습니다:
-
status
필드가 포함되지 않은 요청. -
status
필드가approved
로 설정된 요청.
GitLab 15.0부터 상태 검사는 status
필드가 존재하고 passed
로 설정된 경우에만 통과 상태로 업데이트됩니다. 요청이 다음과 같으면:
-
status
필드가 포함되지 않은 경우422
오류로 거부됩니다. 더 많은 정보는 관련 문제를 참조하세요. -
passed
이외의 값을 포함하는 경우 상태 검사가 실패합니다. 더 많은 정보는 관련 문제를 참조하세요.
이 변경 사항과 일치하도록 외부 상태 검사 목록을 나열하기 위한 API 호출은 통과된 상태 검사에 대해 approved
대신 passed
값을 반환합니다.
GitLab Serverless
- GitLab 14.3에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecation issue를 참조하세요.
GitLab Serverless는 자동 배포 및 모니터링을 지원하는 Knative 기반 서버리스 개발을 위한 기능 세트입니다.
우리는 GitLab Serverless 기능이 사용자에게 실질적으로 반향을 일으키지 못했기 때문에 이를 제거하기로 결정했습니다. 게다가 Kubernetes와 Knative의 지속적인 개발을 고려할 때, 현재 구현은 최신 버전과 작동하지 않습니다.
License Compliance에서 Godep 지원
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거됨
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecation issue를 참조하세요.
Golang에 대한 Godep 의존성 관리자는 2020년에 Go에 의해 사용 중단되었으며 Go 모듈로 대체되었습니다.
유지 보수 비용을 줄이기 위해 14.7부터 Godep 프로젝트에 대한 License Compliance를 사용 중단하고 GitLab 15.0에서 제거할 것입니다.
GraphQL ID 및 GlobalID 호환성
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 deprecation issue를 참조하세요.
우리는 이전 호환성을 위해 추가한 GraphQL 프로세서에 대한 비표준 확장을 제거하고 있습니다.
이 확장은 GraphQL 쿼리의 유효성 검사를 수정하여 일반적으로 거부될 인수에 대해 ID
유형을 사용할 수 있도록 합니다.
일부 인수는 원래 ID
유형을 가졌으며, 이는 특정 종류의 ID
로 변경되었습니다.
이 변경은 다음과 같은 경우 중단될 수 있습니다:
- GraphQL을 사용하는 경우.
- 쿼리 서명에서 인수로
ID
유형을 사용하는 경우.
일부 필드 인수는 여전히 ID
유형을 가지고 있습니다. 이는 일반적으로 IID 값 또는 네임스페이스 경로에 해당합니다.
예를 들어 Query.project(fullPath: ID!)
가 있습니다.
영향을 받는 필드 인수와 영향을 받지 않는 필드 인수의 목록은 deprecation issue를 참조하세요.
이 변경이 귀하에게 영향을 미치는지 테스트하려면 GitLab 서버에서 가져온 스키마 데이터를 사용하여 로컬에서 쿼리를 검증할 수 있습니다.
관련 GitLab 인스턴스에 대해 GraphQL 탐색기 도구를 사용하여 수행할 수 있습니다. 예: https://gitlab.com/-/graphql-explorer
.
예를 들어, 다음 쿼리는 중단 변경 사항을 보여줍니다:
# deprecated type of Query.issue(id:)를 사용하는 쿼리
# 경고: GitLab 15.0 이후에는 작동하지 않습니다.
query($id: ID!) {
deprecated: issue(id: $id) {
title, description
}
}
위의 쿼리는 GitLab 15.0이 출시된 이후에는 작동하지 않으며, Query.issue(id:)
의 유형은 실제로 IssueID!
입니다.
대신 다음 두 가지 형태 중 하나를 사용해야 합니다:
# 이는 계속 작동합니다
query($id: IssueID!) {
a: issue(id: $id) {
title, description
}
b: issue(id: "gid://gitlab/Issue/12345") {
title, description
}
}
이 쿼리는 지금 작동하며 GitLab 15.0 이후에도 계속 작동할 것입니다.
첫 번째 형태의 쿼리(서명에서 ID
를 명명된 유형으로 사용하는 경우)를 다른 두 형태 중 하나로 변경해야 합니다 (서명에서 올바른 적절한 유형을 사용하거나 인라인 인수 표현식을 사용하는 경우).
패키지 설정을 위한 GraphQL 권한 변경
- GitLab 14.9에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
GitLab 패키지 단계는 GitLab을 사용하여 모든 종속성을 관리하는 데 도움이 되는 패키지 레지스트리, 컨테이너 레지스트리 및 종속성 프록시를 제공합니다. 이러한 각 제품 카테고리에는 API를 통해 조정할 수 있는 다양한 설정이 있습니다.
GraphQL의 권한 모델이 업데이트되고 있습니다. 15.0 이후, Guest, Reporter, Developer 역할을 가진 사용자는 더 이상 다음 설정을 업데이트할 수 없습니다:
GitLab Runner SSH 실행기를 위한 알려진 호스트 필요
- GitLab 14.5에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 deprecation issue를 참조하세요.
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에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 deprecation issue를 참조하세요.
우리는 managed_licenses
API에서 라이센스 정책의 승인 상태에 대한 구형 이름(블랙리스트, 승인됨)을 사용 중단했습니다. 그러나 여전히 API 쿼리 및 응답에서 사용되고 있습니다. 이것들은 15.0에서 제거될 것입니다.
License Compliance API를 사용하고 있다면 approved
및 blacklisted
쿼리 매개변수를 더 이상 사용하지 마세요. 이제 이들은 allowed
및 denied
입니다. 15.0에서는 응답에서도 approved
및 blacklisted
를 더 이상 사용하지 않으므로 커스텀 도구가 성공적으로 작동하려면 이전 값과 새 값을 조정해야 합니다.
레거시 데이터베이스 구성
database.yml
에서 위치한 GitLab의 데이터베이스 구문이 변경되며 레거시 형식은 사용 중단됩니다. 레거시 형식은 단일 PostgreSQL 어댑터를 사용하는 것을 지원했지만, 새 형식은 여러 데이터베이스를 지원하도록 변경됩니다. main:
데이터베이스는 첫 번째 구성 항목으로 정의되어야 합니다.
이 사용 중단은 주로 소스에서 GitLab을 컴파일하는 사용자에게 영향을 미치며 Omnibus는 이 구성을 자동으로 처리합니다.
GitLab에서의 로깅
GitLab의 로깅 기능은 사용자가 ELK 스택(Elasticsearch, Logstash, Kibana)을 설치하여 애플리케이션 로그를 집계하고 관리할 수 있도록 합니다. 사용자는 GitLab에서 관련 로그를 검색할 수 있습니다. 그러나 Kubernetes 클러스터 및 GitLab 관리 애플리케이션과의 인증서 기반 통합이 사용 중단됨에 따라 GitLab 내에서 로깅을 위한 추천 솔루션이 없습니다. 더 많은 정보는 Opstrace를 GitLab과 통합하는 문제를 따라가시면 됩니다.
custom_hooks_dir
설정을 GitLab Shell에서 Gitaly로 이동
- GitLab 14.9에서 발표됨
- GitLab 15.0에서 제거됨
custom_hooks_dir
설정은 이제 Gitaly에서 구성되며 GitLab 15.0에서 GitLab Shell에서 제거됩니다.
OAuth 암시적 grant
- GitLab 14.0에서 발표됨
- GitLab 15.0에서 제거됨 (파괴적 변경)
OAuth 암시적 grant 인가 흐름은 다음 주요 릴리즈인 GitLab 15.0에서 제거됩니다. OAuth 암시적 grant를 사용하는 모든 애플리케이션은 대체 지원되는 OAuth 흐름으로 전환해야 합니다.
만료되지 않는 OAuth 토큰
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (중단되는 변경 사항)
기본적으로 모든 새로운 애플리케이션은 2시간 후에 액세스 토큰이 만료됩니다. GitLab 14.2 및 이전 버전에서는 OAuth 액세스 토큰에 만료가 없었습니다. GitLab 15.0에서는 기존 토큰 중 만료가 설정되어 있지 않은 토큰에 대해 자동으로 만료가 생성됩니다.
GitLab 15.0이 출시되기 전에 만료되는 토큰을 옵트인해야 합니다:
- 애플리케이션을 편집합니다.
- 액세스 토큰 만료를 선택하여 활성화합니다. 토큰은 철회되어야 하며, 그렇지 않으면 만료되지 않습니다.
</div>
OmniAuth Kerberos 젬
- GitLab 14.3에서 발표됨
- GitLab 15.0에서 제거됨 (중단되는 변경 사항)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 중단 문제를 참조하십시오.
omniauth-kerberos
젬은 다음 주요 릴리즈인 GitLab 15.0에서 제거될 예정입니다.
이 젬은 유지 관리되지 않았으며 사용률이 매우 낮습니다. 따라서 우리는 이 인증 방법에 대한 지원을 제거할 계획이며, 대신 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에서 제거 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
GitLab SAST SpotBugs 분석기는 Java, Scala, Groovy 및 Kotlin 코드에서 보안 취약점을 검사합니다.
기술적인 이유로 인해 분석기는 먼저 코드를 컴파일한 후 스캔을 수행해야 합니다.
사전 컴파일 전략을 사용하지 않는 한, 분석기는 프로젝트의 코드를 자동으로 컴파일하려고 시도합니다.
GitLab 15.0 이전 버전에서는 분석기 이미지에 Java 8 및 Java 11 런타임이 포함되어 컴파일을 촉진합니다.
GitLab 15.0에서는 다음과 같은 작업을 수행할 것입니다:
- 이미지 크기를 줄이기 위해 분석기 이미지에서 Java 8을 제거합니다.
- Java 17로 컴파일하기 쉽게 만들기 위해 분석기 이미지에 Java 17을 추가합니다.
분석기 환경에 Java 8이 필요하다면, 이 변경 사항에 대한 사용 중단 문제에서 자세히 설명된 대로 조치를 취해야 합니다.
</div>
고급 검색 마이그레이션의 오래된 인덱스
- GitLab 14.10에서 발표
- GitLab 15.0에서 제거 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
고급 검색 마이그레이션은 일반적으로 오랜 기간 동안 여러 코드 경로에 대한 지원이 필요하므로,
안전하게 정리하는 것이 중요합니다. 우리는 GitLab 주요 버전 업그레이드를 사용할 수 있는 안전한 시점으로 사용하여,
완전히 마이그레이션되지 않은 인덱스에 대한 이전 호환성을 제거합니다. 자세한 내용은 업grade 문서를 참조하세요.
Pseudonymizer
- GitLab 14.7에서 발표
- GitLab 15.0에서 제거
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중단 문제를 참조하세요.
Pseudonymizer 기능은 일반적으로 사용되지 않으며,
대규모 데이터베이스에서 프로덕션 문제를 일으킬 수 있고,
객체 저장소 개발에 방해가 될 수 있습니다.
현재 더 이상 사용되지 않는 것으로 간주되며, GitLab 15.0에서 제거될 예정입니다.
instanceStatisticsMeasurements
GraphQL 노드를 통한 사용 추세 쿼리
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중지 문제를 참조하세요.
instanceStatisticsMeasurements
GraphQL 노드는 13.10에서 usageTrendsMeasurements
로 이름이 변경되었으며, 이전 필드 이름은 더 이상 사용되지 않도록 표시되었습니다. 기존 GraphQL 쿼리를 수정하려면 instanceStatisticsMeasurements
를 usageTrendsMeasurements
로 교체하세요.
요청 프로파일링
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 알아보려면 사용 중지 문제를 참조하세요.
요청 프로파일링은 GitLab 14.8에서 사용 중지가 되었고 GitLab 15.0에서 제거될 예정입니다.
우리는 프로파일링 도구 통합 작업을 진행하고 있으며, 이를 더 쉽게 접근할 수 있도록 만들고 있습니다.
이 기능의 사용에 대해 평가한 결과, 널리 사용되지 않는 것으로 나타났습니다.
또한 이 기능은 몇 가지 서드파티 젬에 의존하고 있으며, 이들은 더 이상 활발하게 유지 관리되지 않거나, 최신 버전의 Ruby에 대해 업데이트되지 않거나, 무거운 페이지 로드를 프로파일링할 때 자주 충돌합니다.
자세한 내용은 사용 중지 문제 요약 섹션을 확인하세요.
프리미엄 티어의 필수 파이프라인 구성
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
필수 파이프라인 구성 기능은 프리미엄 고객을 위해 GitLab 14.8에서 사용 중지되었으며 GitLab 15.0에서 제거될 예정입니다. 이 기능은 GitLab 얼티밋 고객에게는 사용 중지가 되지 않습니다.
이 기능을 GitLab의 얼티밋 티어로 이동하는 변화는, 기능에 대한 수요가 주로 경영진에서 비롯됨에 따라 우리의 가격 철학과 더 잘 일치하도록 도와줄 것입니다.
이 변화는 또한 GitLab이 보안 정책(Security policies) 및 순응 프레임워크 파이프라인(compliance framework pipelines) 등 다른 관련 얼티밋 티어 기능과 일관되도록 도와줄 것입니다.
Retire-JS 종속성 스캐닝 도구
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경사항에 대해 논의하거나 더 많이 알아보려면 폐기 이슈를 참조하세요.
14.8부터 retire.js 작업이 종속성 스캐닝에서 폐기됩니다. 폐기되는 동안 CI/CD 템플릿에 계속 포함될 것입니다. 우리는 GitLab 15.0에서 retire.js를 2022년 5월 22일에 종속성 스캐닝에서 제거할 것입니다. JavaScript 스캐닝 기능은 여전히 Gemnasium에 의해 커버되므로 영향을 받지 않습니다.
명시적으로 DS_EXCLUDED_ANALYZERS를 사용하여 retire.js를 제외한 경우 15.0에서 정리(참조 삭제)를 해야 합니다. retire-js-dependency_scanning
작업과 관련하여 파이프라인의 종속성 스캐닝 구성을 사용자 지정한 경우 15.0에서의 제거를 방지하기 위해 gemnasium-dependency_scanning으로 전환해야 합니다. DS_EXCLUDED_ANALYZERS를 사용하여 retire.js를 참조하지 않았거나 retire.js에 대해 템플릿을 특별히 사용자 지정하지 않았다면 조치를 취할 필요는 없습니다.
SAST 스키마 14.0.0 이하
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거됨
SAST 보고서 스키마 14.0.0 이전 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서가 보고서에 선언된 스키마 버전 검증을 통과하지 못하는 경우에도 GitLab 15.0부터 더 이상 지원되지 않습니다.
파이프라인 작업 아티팩트로 SAST 보안 보고서를 출력하여 GitLab과 통합하는 타사 도구가 영향을 받습니다. 모든 출력 보고서가 최소 버전 14.0.0의 올바른 스키마에 준수하는지 확인해야 합니다. 더 낮은 버전의 보고서 또는 선언된 스키마 버전에 대해 검증에 실패하는 보고서는 처리되지 않으며, 취약점 발견 사항은 MRs, 파이프라인 또는 취약점 보고서에 표시되지 않습니다.
전환을 돕기 위해 GitLab 14.10부터 비준수 보고서는 취약점 보고서에 경고가 표시됩니다.
.NET 2.1에 대한 SAST 지원
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경사항에 대해 논의하거나 더 많이 알아보려면 폐기 이슈를 참조하세요.
GitLab SAST 보안 코드 스캔 분석기는 .NET 코드를 보안 취약점에 대해 스캔합니다. 기술적인 이유로 분석기는 스캔하기 위해 먼저 코드를 빌드해야 합니다.
GitLab 15.0 이전 버전에서는 기본 분석기 이미지(버전 2)가 다음을 지원합니다:
- .NET 2.1
- .NET 3.0 및 .NET Core 3.0
- .NET Core 3.1
- .NET 5.0
GitLab 15.0에서는 이 분석기의 기본 주요 버전을 버전 2에서 버전 3으로 변경합니다. 이 변경사항:
- 취약점에 대한 심각도 값을 추가하고 기타 새로운 기능 및 개선 사항을 포함합니다.
- .NET 2.1 지원을 제거합니다.
- .NET 6.0, Visual Studio 2019 및 Visual Studio 2022에 대한 지원을 추가합니다.
버전 3은 GitLab 14.6에서 발표되었습니다 및 선택적 업그레이드로 제공되었습니다.
기본적으로 분석기 이미지에 .NET 2.1 지원이 존재하는 것에 의존하는 경우, 이 변화에 대한 폐기 이슈에서 설명된 대로 조치를 취해야 합니다.
비밀 감지 구성 변수 사용 중단
- 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
은 이전에 코드베이스 내 문자열의 엔트로피 수준만 고려하는 규칙을 구성할 수 있게 해주었으나, 이제 사용 중단됩니다.
이러한 엔트로피 전용 규칙은 허용할 수 없는 수의 잘못된 결과(허위 긍정)를 초래하며 더 이상 지원되지 않습니다.
GitLab 15.0에서 비밀 감지 분석기를 업데이트하여 이러한 사용 중단된 옵션은 무시하도록 하겠습니다.
여전히 SECRET_DETECTION_HISTORIC_SCAN
CI/CD 변수를 설정하여 커밋 기록의 과거 스캐닝을 구성할 수 있습니다.
자세한 내용은 이 변경 사항에 대한 사용 중단 문제를 참조하세요.
14.0.0 이하의 비밀 감지 스키마
- GitLab 14.7에서 발표
- GitLab 15.0에서 제거
14.0.0 이전 버전은 GitLab 15.0에서 더 이상 지원되지 않습니다. 보고서가 보고서에 선언된 스키마 버전과 검증을 통과하지 못하면 GitLab 15.0부터 더 이상 지원되지 않습니다.
비밀 감지 보안 보고서를 출력하여 GitLab과 통합되는 타사 도구는 영향을 받습니다. 모든 출력 보고서가 최소 14.0.0 버전의 올바른 스키마를 준수해야 합니다. 더 낮은 버전의 보고서 또는 선언된 스키마 버전에 대한 검증을 통과하지 못하는 보고서는 처리되지 않으며, 취약성 발견 사항은 MRs, 파이프라인 또는 취약성 보고서에 표시되지 않습니다.
전환을 돕기 위해, GitLab 14.10부터 비준수 보고서는 취약성 보고서에 경고를 표시합니다.
새 위치에 게시된 분석기 이미지의 보안 및 보호
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 상세 정보를 보려면 비공식적 문제를 참조하세요.
GitLab은 다양한 분석기를 사용하여 보안 취약점을 스캔합니다.
각 분석기는 컨테이너 이미지로 배포됩니다.
GitLab 14.8부터 GitLab Secure 및 Protect 분석기의 새 버전이 registry.gitlab.com/security-products
의 새 레지스트리 위치에 게시됩니다.
이 변경 사항을 반영하기 위해 GitLab 관리 CI/CD 템플릿의 기본 값을 업데이트할 것입니다:
- Container Scanning을 제외한 모든 분석기에 대해 변수
SECURE_ANALYZERS_PREFIX
를 새 이미지 레지스트리 위치로 업데이트할 것입니다. - Container Scanning의 경우 기본 이미지 주소는 이미 업데이트되었습니다. Container Scanning에 대한
SECURE_ANALYZERS_PREFIX
변수는 없습니다.
향후 릴리스에서 registry.gitlab.com/gitlab-org/security-products/analyzers
에 이미지를 게시하지 않게 됩니다.
이런 일이 발생하면 수동으로 이미지를 끌어다가 별도의 레지스트리에 푸시해야 합니다.
이는 오프라인 배포에서 일반적입니다.
그렇지 않으면 더 이상의 업데이트를 받지 못합니다.
자세한 내용은 비공식적 문제를 참조하세요.
Secure 및 Protect 분석기 주요 버전 업데이트
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 상세 정보를 보려면 비공식적 문제를 참조하세요.
Secure 및 Protect 단계는 GitLab 15.0 릴리스에 맞춰 분석기의 주요 버전을 증가시킬 것입니다. 이 주요 증가는 다음과 같은 분석기를 구분하는 데 도움이 됩니다:
- 2022년 5월 22일 이전에 릴리스된 분석기로, _엄격한 스키마 검증_을 받지 않은 보고서를 생성합니다.
- 2022년 5월 22일 이후에 릴리스된 분석기로, _엄격한 스키마 검증_을 받는 보고서를 생성합니다.
기본 포함 템플릿을 사용하지 않거나 분석기 버전을 고정한 경우, 고정된 버전을 제거하거나 최신 주요 버전으로 업데이트하기 위해 CI/CD 작업 정의를 업데이트해야 합니다.
GitLab 12.0-14.10 사용자들은 GitLab 15.0 릴리스까지 정상적으로 분석기 업데이트를 경험하게 되며, 이후 새로운 주요 버전의 분석기에서 수정된 모든 버그와 새로 릴리스된 기능은 더 이상 deprecated된 버전에서 사용할 수 없습니다.
이는 유지 관리 정책에 따라 버그와 새로운 기능을 백포트하지 않기 때문입니다. 요구되는 보안 패치는 최신 3개 마이너 릴리스에 백포트됩니다.
특히, 다음은 deprecated되며 GitLab 15.0 릴리스 이후로는 더 이상 업데이트되지 않습니다:
- API Security: 버전 1
- Container Scanning: 버전 4
- Coverage-guided fuzz testing: 버전 2
- Dependency Scanning: 버전 2
- Dynamic Application Security Testing (DAST): 버전 2
- Infrastructure as Code (IaC) Scanning: 버전 1
- License Scanning: 버전 3
- Secret Detection: 버전 3
- Static Application Security Testing (SAST): 버전 2의 모든 분석기,
gosec
는 현재 버전 3입니다.-
bandit
: 버전 2 -
brakeman
: 버전 2 -
eslint
: 버전 2 -
flawfinder
: 버전 2 -
gosec
: 버전 3 -
kubesec
: 버전 2 -
mobsf
: 버전 2 -
nodejs-scan
: 버전 2 -
phpcs-security-audit
: 버전 2 -
pmd-apex
: 버전 2 -
security-code-scan
: 버전 2 -
semgrep
: 버전 2 -
sobelow
: 버전 2 -
spotbugs
: 버전 2
-
Sidekiq 메트릭 및 상태 확인 구성
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 더 자세히 알아보려면 사용 중지 문제를 참조하세요.
단일 프로세스 및 포트를 사용하여 Sidekiq 메트릭 및 상태 확인을 내보내는 기능은 더 이상 지원되지 않습니다. 지원은 15.0에서 제거됩니다.
Sidekiq를 업데이트하여 두 개의 별도 프로세스에서 메트릭 및 상태 확인을 내보내도록 하여 안정성과 가용성을 개선하고 엣지 케이스에서 데이터 손실을 방지했습니다.
별도의 서버이기 때문에 15.0에서 메트릭 및 상태 확인을 위해 별도의 포트를 명시적으로 설정하는 구성 변경이 필요합니다.
sidekiq['health_checks_*']
의 새로 도입된 설정은 항상 gitlab.rb
에 설정되어야 합니다.
자세한 내용은 Sidekiq 구성 문서를 참조하세요.
이러한 변경은 또한 Prometheus가 새 엔드포인트를 스크랩하거나 k8s 상태 확인이 새 상태 확인 포트를 타겟으로 하여 제대로 작동하도록 업데이트해야 하며, 그렇지 않으면 메트릭 또는 상태 확인 중 하나가 사라질 것입니다.
사용 중지 기간 동안 이러한 설정은 선택 사항이며 GitLab은 Sidekiq 상태 확인 포트를 sidekiq_exporter
와 동일한 포트로 기본 설정하고 하나의 서버만 실행합니다(현재 동작 변경 아님).
두 가지가 모두 설정되고 다른 포트가 제공된 경우에만 별도의 메트릭 서버가 시작되어 Sidekiq 메트릭을 제공하며, 이는 Sidekiq가 15.0에서 동작하는 방식과 유사합니다.
Static Site Editor
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거됨
- 이 변경 사항에 대해 논의하거나 더 자세히 알아보려면 사용 중지 문제를 참조하세요.
Static Site Editor는 GitLab 15.0부터 더 이상 사용할 수 없습니다. GitLab 전반에 걸쳐 Markdown 편집 경험에 대한 개선사항은 유사한 혜택을 제공하지만 더 넓은 범위에서 이루어질 것입니다. Static Site Editor로 들어오는 요청은 Web IDE로 리디렉션됩니다.
Static Site Editor의 현재 사용자들은 문서를 참조하여 기존 프로젝트에서 구성 파일을 제거하는 방법을 포함한 더 많은 정보를 확인할 수 있습니다.
SLES 12 SP2 지원
- GitLab 14.5에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
SUSE Linux Enterprise Server (SLES) 12 SP2에 대한 장기 서비스 및 지원(LTSS)은 2021년 3월 31일에 종료되었습니다. SP2의 CA 인증서는 만료된 DST 루트 인증서를 포함하고 있으며, 새로운 CA 인증서 패키지 업데이트를 받지 못하고 있습니다. 일부 우회 방법을 구현했지만, 우리는 빌드가 제대로 실행될 수 있도록 계속 유지할 수 없습니다.
Gitaly와 GitLab 나머지 사이에 배포된 gRPC 인식 프록시에 대한 지원
- GitLab 14.8에 발표되었습니다.
- GitLab 15.0에서 제거됩니다. (breaking change)
추천하지 않거나 문서화되지 않았지만, Gitaly와 GitLab의 나머지 사이에 gRPC 인식 프록시를 배포하는 것이 가능했습니다. 예를 들어, NGINX와 Envoy입니다. gRPC 인식 프록시를 배포하는 기능은 deprecated되었습니다. 현재 Gitaly 연결에 gRPC 인식 프록시를 사용하는 경우, 프록시 구성을 TCP 또는 TLS 프록시로 변경해야 합니다(OSI 레이어 4).
Gitaly 클러스터는 GitLab 13.12에서 gRPC 인식 프록시와 호환되지 않게 되었습니다. 이제 모든 GitLab 설치는 Gitaly 클러스터가 없어도 gRPC 인식 프록시와 호환되지 않습니다.
우리의 내부 RPC 트래픽의 일부를 맞춤 프로토콜(대신 gRPC)로 보내면 처리량이 증가하고 Go 가비지 수집 대기 시간이 줄어듭니다. 더 자세한 정보는 관련 에픽을 참조하세요.
테스트 커버리지 프로젝트 CI/CD 설정
- GitLab 14.8에 발표되었습니다.
- GitLab 15.0에서 제거됩니다. (breaking change)
테스트 커버리지 패턴 설정을 단순화하기 위해, GitLab 15.0에서는 테스트 커버리지 구문 분석을 위한 프로젝트 설정 이 제거됩니다.
대신, 프로젝트의 .gitlab-ci.yml
을 사용하여 coverage
키워드와 함께 정규 표현식을 제공하여 병합 요청에서 테스트 커버리지 결과를 설정합니다.
GitLab의 추적 기능
- GitLab 14.7에 발표되었습니다.
- GitLab 15.0에서 제거됩니다. (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 deprecation issue를 참조하세요.
GitLab의 추적 기능은 Jaeger와의 통합입니다. Jaeger는 오픈 소스 엔드 투 엔드 분산 추적 시스템입니다. GitLab 사용자는 배포된 애플리케이션의 성능을 파악하기 위해 Jaeger 인스턴스로 이동하여 주어진 요청을 처리하는 각 기능이나 마이크로서비스를 추적할 수 있습니다. GitLab의 추적 기능은 GitLab 14.7에서 deprecated 되었으며, 15.0에서 제거될 예정입니다. 가능한 대체 작업을 추적하려면 Opstrace와 GitLab 통합의 문제를 참조하세요.
컨테이너 레지스트리 그룹 수준 API 업데이트
- GitLab 14.5에 발표됨
- GitLab 15.0에 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 deprecation issue를 확인하세요.
마일스톤 15.0에서 tags
및 tags_count
매개변수에 대한 지원이 그룹에서 레지스트리 리포지토리를 가져오는 컨테이너 레지스트리 API에서 제거됩니다.
GET /groups/:id/registry/repositories
엔드포인트는 유지되지만 태그에 대한 정보는 반환하지 않습니다. 태그에 대한 정보를 얻으려면 기존의 GET /registry/repositories/:id
엔드포인트를 사용할 수 있으며, 이는 오늘과 동일하게 tags
및 tag_count
옵션을 계속 지원합니다. 후자는 각 이미지 리포지토리에 대해 한 번 호출해야 합니다.
가치 흐름 분석 필터링 계산 변경
- GitLab 14.5에 발표됨
- GitLab 15.0에 제거됨 (breaking change)
- 이 변경에 대해 논의하거나 더 알아보려면 deprecation issue를 확인하세요.
가치 흐름 분석에서 날짜 필터가 작동하는 방식을 변경하고 있습니다. 이제 문제 또는 병합 요청이 생성된 시간을 기준으로 필터링하는 대신, 날짜 필터는 주어진 단계의 종료 이벤트 시간을 기준으로 필터링합니다. 이로 인해 이 변경이 시행된 후 완전히 다른 수치가 발생할 것입니다.
가치 흐름 분석 메트릭을 모니터링하고 날짜 필터에 의존하는 경우, 데이터를 잃지 않도록 이 변경 전 데이터를 저장해야 합니다.
취약점 검사
- GitLab 14.8에 발표됨
- GitLab 15.0에 제거됨 (breaking change)
취약점 검사 기능은 GitLab 14.8에서 사용 중지되었으며 GitLab 15.0에서 제거될 예정입니다. 대신 새 보안 승인 기능으로 마이그레이션할 것을 권장합니다. 이를 위해 보안 및 컴플라이언스 > 정책으로 이동하여 새 스캔 결과 정책을 생성할 수 있습니다.
새 보안 승인 기능은 취약점 검사와 유사합니다. 예를 들어, 둘 다 보안 취약점을 포함하는 MRs에 대한 승인을 요구할 수 있습니다. 그러나 보안 승인은 여러 면에서 이전 경험을 개선합니다:
- 사용자는 보안 승인 규칙을 편집할 수 있는 사람을 선택할 수 있습니다. 따라서 독립적인 보안 또는 준수 팀이 개발 프로젝트 유지 관리자가 규칙을 수정하지 않도록 하는 방식으로 규칙을 관리할 수 있습니다.
- 서로 다른 심각도 기준에 대해 필터링할 수 있도록 여러 규칙을 생성하고 연결할 수 있습니다.
- 보안 승인 규칙에 대한 원하는 변경에 대한 2단계 승인 프로세스를 시행할 수 있습니다.
- 원활한 단일 중앙 집중식 규칙 세트를 유지 관리할 수 있도록 여러 개발 프로젝트에 단일 보안 정책 집합을 적용할 수 있습니다.
PackageType
의 기본 Versions
- GitLab 14.5에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 deprecation issue를 참조하십시오.
Package Registry GraphQL API 생성을 위한 작업의 일환으로, Package 그룹은 기본 PackageType
의 Version
타입을 사용 중단하고 PackageDetailsType
으로 이동했습니다.
15.0 마일스톤에서 Version
을 PackageType
에서 완전히 제거할 예정입니다.
apiFuzzingCiConfigurationCreate
GraphQL 뮤테이션
- GitLab 14.6에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 deprecation issue를 참조하십시오.
API Fuzzing 구성 스니펫은 이제 클라이언트측에서 생성되며 더 이상 API 요청이 필요하지 않습니다. 따라서 GitLab에서 더 이상 사용되지 않는 apiFuzzingCiConfigurationCreate
뮤테이션을 사용 중단합니다.
artifacts:reports:cobertura
키워드
- GitLab 14.7에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 deprecation issue를 참조하십시오.
현재 GitLab의 테스트 커버리지 시각화는 Cobertura 보고서만 지원합니다. 15.0부터 artifacts:reports:cobertura
키워드는 artifacts:reports:coverage_report
로 대체됩니다. Cobertura는 15.0에서 지원되는 유일한 보고서 파일이지만, 이는 GitLab이 다른 보고서 유형을 지원하는 첫 번째 단계입니다.
defaultMergeCommitMessageWithDescription
GraphQL API 필드
- GitLab 14.5에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세한 내용을 보려면 deprecation issue를 참조하십시오.
GraphQL API 필드 defaultMergeCommitMessageWithDescription
는 사용 중단되었으며 GitLab 15.0에서 제거될 예정입니다. 커밋 메시지 템플릿이 설정된 프로젝트의 경우 템플릿을 무시합니다.
dependency_proxy_for_private_groups
기능 플래그
우리는 GitLab-#11582로 인해 공개 그룹이 Dependency Proxy를 사용하는 방식을 변경하기 위해 기능 플래그를 추가했습니다. 이 변경 이전에는 인증 없이 Dependency Proxy를 사용할 수 있었습니다. 이 변경 사항은 Dependency Proxy를 사용하기 위해 인증을 요구합니다.
15.0 마일스톤에서는 기능 플래그를 완전히 제거할 것입니다. 앞으로 Dependency Proxy를 사용할 때 인증이 필요합니다.
version
필드의 pipelines
필드
GraphQL에서는 PackageDetailsType
내에서 패키지 버전의 파이프라인을 가져오기 위해 사용할 수 있는 두 개의 pipelines
필드가 있습니다:
-
versions
필드의pipelines
필드. 이 필드는 패키지의 모든 버전과 관련된 모든 파이프라인을 반환하며, 메모리에서 무한 수의 객체를 끌어올 수 있어 성능 문제를 일으킬 수 있습니다. - 특정
version
의pipelines
필드. 이 필드는 해당 단일 패키지 버전과 관련된 파이프라인만 반환합니다.
가능한 성능 문제를 완화하기 위해, 15.0 마일스톤에서 versions
필드의 pipelines
필드를 제거할 것입니다. 모든 패키지 버전에 대한 모든 파이프라인을 더 이상 가져올 수 없지만, 여전히 해당 버전에 대한 나머지 pipelines
필드를 통해 단일 버전의 파이프라인을 가져올 수 있습니다.
PipelineSecurityReportFinding
GraphQL의 projectFingerprint
- GitLab 14.8에서 발표됨
- GitLab 15.0에서 제거됨 (브레이킹 변경)
PipelineSecurityReportFinding GraphQL 객체의 projectFingerprint
필드가 더 이상 사용되지 않습니다. 이 필드는 고유성을 판단하는 데 사용되는 보안 결과의 “지문”을 포함합니다. 지문을 계산하는 방법이 변경되어 다른 값이 생성됩니다. 앞으로는 새로운 값이 UUID 필드에 노출될 것입니다. 이전에 projectFingerprint 필드에서 사용 가능했던 데이터는 궁극적으로 완전히 제거될 것입니다.
promote-db
명령어 from gitlab-ctl
- GitLab 14.5에 발표
- GitLab 15.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
GitLab 14.5에서는 장애 조치(failover) 동안 Geo 보조 노드를 기본(primary)으로 승격시키기 위해 gitlab-ctl promote
명령을 도입했습니다. 이 명령은 다중 노드 Geo 보조 사이트에서 데이터베이스 노드를 승격시키기 위해 사용되던 gitlab-ctl promote-db
의 대체입니다. gitlab-ctl promote-db
는 GitLab 15.0까지 기존 방식으로 계속 작동하며 제공될 것입니다. Geo 고객은 새로운 gitlab-ctl promote
명령을 스테이징 환경에서 테스트하고 장애 조치 절차에 새로운 명령을 통합하는 것을 권장합니다.
promote-to-primary-node
명령어 from gitlab-ctl
- GitLab 14.5에 발표
- GitLab 15.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
GitLab 14.5에서는 장애 조치(failover) 동안 Geo 보조 노드를 기본(primary)으로 승격시키기 위해 gitlab-ctl promote
명령을 도입했습니다. 이 명령은 단일 노드 Geo 사이트에서만 사용되던 gitlab-ctl promote-to-primary-node
의 대체입니다. gitlab-ctl promote-to-primary-node
는 GitLab 15.0까지 기존 방식으로 계속 작동하며 제공될 것입니다. Geo 고객은 새로운 gitlab-ctl promote
명령을 스테이징 환경에서 테스트하고 장애 조치 절차에 새로운 명령을 통합하는 것을 권장합니다.
CI/CD 구성의 type
및 types
키워드
- GitLab 14.6에 발표
- GitLab 15.0에서 제거 예정 (breaking change)
type
및 types
CI/CD 키워드는 GitLab 15.0에서 제거될 예정입니다. 이 키워드를 사용하는 파이프라인은 작동을 중지하므로, 동일한 동작을 하는 stage
및 stages
로 전환해야 합니다.
bundler-audit 종속성 스캐닝 도구
- GitLab 14.6에 발표
- GitLab 15.0에서 제거 예정 (breaking change)
- 이 변경 사항에 대해 논의하거나 자세히 알아보려면 사용 중단 문제를 참조하세요.
14.6부터 bundler-audit는 종속성 스캐닝에서 사용 중단됩니다. 사용 중단 상태에서 CI/CD 템플릿에 계속 포함될 것입니다. bundler-audit는 15.0에서 2022년 5월 22일에 종속성 스캐닝에서 제거됩니다. 이 제거가 이루어진 후에도 Ruby 스캐닝 기능은 Gemnasium에 의해 여전히 지원됩니다.
bundler-audit를 DS_EXCLUDED_ANALYZERS를 사용해 명시적으로 제외한 경우, 15.0에서 정리를 해야 합니다(참조를 제거해야 함). 파이프라인의 종속성 스캐닝 구성을 사용자 정의한 경우, 예를 들어 bundler-audit-dependency_scanning
작업을 편집하기 위해, 15.0에서의 제거 전에 gemnasium-dependency_scanning으로 전환해야 파이프라인이 실패하지 않습니다. DS_EXCLUDED_ANALYZERS를 사용해 bundler-audit를 참조하지 않았거나, bundler-audit에 대해 특정하게 템플릿을 사용자 정의하지 않았다면 추가 조치를 취할 필요는 없습니다.
컨테이너 레지스트리를 위한 htpasswd 인증
- GitLab 14.9에서 발표됨
- GitLab 15.0에서 제거됨 (breaking change)
컨테이너 레지스트리는 htpasswd
를 사용한 인증을 지원합니다. 이는 비밀번호가 bcrypt
로 해시된 Apache htpasswd
파일에 의존합니다.
GitLab(제품)과의 맥락에서 사용되지 않기 때문에, htpasswd
인증은 GitLab 14.9에서 더 이상 사용되지 않으며, GitLab 15.0에서 제거될 예정입니다.
</div>
GitLab 14.10
Composer 종속성 다운로드에 대한 권한 변경
- GitLab 14.9에서 발표됨
- GitLab 14.10에서 제거됨 (breaking change)
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에서 제거됨
- 이 변경 사항에 대한 논의 또는 자세한 내용을 보려면 deprecation issue를 참조하세요.
per_repository
Gitaly 선거 전략 구성은 deprecated입니다.
per_repository
는 GitLab 14.0부터 유일한 옵션이었습니다.
이 변경은 코드베이스를 유지 관리하기 위한 정기적인 작업의 일환입니다.
기본적으로 통합 오류 추적 비활성화
- GitLab 14.9에서 발표됨
- GitLab 14.9에서 제거됨 (breaking change)
- 이 변경 사항에 대한 논의 또는 자세한 내용을 보려면 deprecation issue를 참조하세요.
GitLab 14.4에서는 Sentry를 대체하는 통합 오류 추적 백엔드가 릴리스되었습니다. 이 기능은 데이터베이스 성능 문제를 유발했습니다. GitLab 14.9에서는 통합 오류 추적이 GitLab.com에서 제거되고, GitLab 자체 관리에서 기본적으로 꺼집니다. 이 기능의 향후 개발을 탐색하는 동안, 프로젝트 설정에서 오류 추적을 Sentry로 변경하여 Sentry 백엔드로 전환하는 것을 고려해 주세요.
이 제거에 대한 추가 배경은 기본적으로 통합 오류 추적 비활성화을 참조해 주세요. 피드백이 있는 경우, 피드백: 통합 오류 추적 제거에 댓글을 남겨주세요.
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
로 찾을 수 있습니다.
이 페이지는 향후 제품, 기능 및 기능과 관련된 정보를 포함합니다.
제공된 정보는 정보 제공 목적으로만 사용되며, 구매 또는 계획 목적으로 의존하지 마시기 바랍니다.
모든 제품, 기능 또는 기능의 개발, 출시 및 타임라인은 변경되거나 지연될 수 있으며, GitLab Inc.의 단독 재량에 따라 결정됩니다.