GitLab 17.9가 지난 20일 출시됐습니다. 이번 업데이트에서는 GitLab Duo 셀프 호스팅 GA 버전, 병렬 배포 기반 여러 Page 사이트 실행, Sysbox 기반 워크스페이스 컨테이너 지원 기능을 도입했습니다. 아울러 Value Stream Analytics에서 추적하는 이벤트와 취약점 위험 데이터 지원을 늘리고, UI 기반 DAST 스캔 구성 기능을 업그레이드했습니다.
위 내용은 이번 릴리즈에서 선보인 110개 이상 개선 사항 중 몇 가지 주요 사항입니다. 아래에 주요 업데이트 내용을 모두 확인하세요.
GitLab Duo 셀프 호스팅 GA 버전
(Self-managed 전용)

이제 자체 인프라에서 선택한 대규모 언어 모델(LLM)을 호스팅하고, 해당 모델을 GitLab Duo Code Suggestions와 Chat의 소스로 구성할 수 있습니다. 이 기능은 해당 라이선스가 있는 Self-managed GitLab 환경에서 GA(Generally Available) 버전으로 이용할 수 있습니다.
GitLab Duo 셀프 호스팅을 사용하면, 온프레미스 또는 프라이빗 클라우드에서 호스팅되는 모델을 GitLab Duo Chat 또는 Code Suggestions의 소스로 사용할 수 있습니다. 현재 vLLM 또는 AWS Bedrock에서 오픈 소스 Mistral 모델을, AWS Bedrock에서 Claude 3.5 Sonnet을, Azure OpenAI에서 OpenAI 모델을 지원합니다. 셀프 호스팅 모델을 활성화하면, 완전한 데이터 주권과 프라이버시를 유지하면서 생성형 AI의 강력한 기능을 활용할 수 있습니다.
이슈 512753에 피드백을 남겨 주세요.
병렬 배포로 여러 Page 사이트 실행

이제 병렬 배포로 여러 버전의 GitLab Pages 사이트를 동시에 만들 수 있습니다. 각 배포는 구성된 prefix를 기반으로 고유한 URL을 얻습니다. 예를 들어, 고유 도메인을 사용하면 여러분의 사이트는 project-123456.gitlab.io/prefix
에서 액세스할 수 있고, 고유 도메인이 없으면 namespace.gitlab.io/project/prefix
에서 액세스할 수 있습니다.
이 기능은 다음 작업을 수행할 때, 특히 유용합니다.
- 디자인 변경 사항 또는 콘텐츠 업데이트 미리보기
- 개발 중 사이트 변경 사항 테스트
- Merge request(MR)에서 변경 사항 리뷰
- 여러 사이트 버전을 유지 관리(예: 로컬화된 콘텐츠 포함)
저장 공간 관리에 도움이 되도록 병렬 배포는 기본적으로 24시간 뒤에 만료되지만, 이 기간을 맞춤 설정하거나, 배포가 만료되지 않도록 설정할 수 있습니다. 자동 정 리를 위해, MR이 merge 되거나 종료되면 MR에서 생성된 병렬 배포는 삭제됩니다.
Sysbox 기반 워크스페이스 컨테이너 지원
워크스페이스에서 컨테이너를 빌드, 실행하는 데모. 출처=GitLab
이제 GitLab 워크스페이스가 개발 환경에서 직접 컨테이너를 빌드하고 실행하도록 지원합니다. 워크스페이스가 Sysbox로 구성된 Kubernetes 클러스터에서 실행될 때, 추가 구성 없이 컨테이너를 빌드하고 실행할 수 있습니다.
sudo 액세스 기능의 일부로 GitLab 17.4에 도입된 이 기능을 사용하면, GitLab 워크스페이스 환경에서 전체 컨테이너 워크플로를 유지할 수 있습니다.
워크플로 가시성 향상: MR 리뷰 시간의 새 인사이트

개발 워크플로 추적을 개선하기 위해, Value Stream Anaytics(VSA)가 새로운 이벤트인 MR이 마지막으로 승인된 시점으로 확장됐습니다. MR 승인 이벤트는 리뷰 단계의 종료와 최종 파이프라인 실행 또는 merge 단계의 시작을 표시합니다. 예를 들어, 총 MR 리뷰 시간을 계산하려면, MR 리뷰어가 처음 할당된 시점을 시작 이벤트로, MR이 마지막으로 승인된 시점을 종료 이벤트로 설정한 VSA 단계를 만들 수 있습니다.
팀은 이 향상된 기능으로 리뷰 시간을 최적화하는 기회와 관련해 더 깊은 통찰을 얻을 수 있습니다. 이로써 전체 개발 주기를 단축해 소프트웨어 를 더 빠르게 배포할 수 있습니다.
취약점 위험 우선순위 지정을 위한 EPSS, KEV, CVSS 데이터

다음 취약점 위험 데이터 지원을 추가했습니다.
- EPSS(Exploit Prediction Scoring System, 익스플로잇 예측 점수 시스템)
- KEV(Known Exploited Vulnerabilities, 알려진 익스플로잇 취약점)
- CVE(Common Vulnerabilities and Exposures, 공통 취약점과 노출)
이제 이 데이터를 사용해 의존성과 컨테이너 이미지 취약점 전반의 위험 우선순위를 효율적으로 지정할 수 있습니다. 취약점 보고서와 취약점 상세 정보 페이지에서 데이터를 찾을 수 있습니다.
전체 제어가 가능한 UI로 DAST 스캔 구성

복잡한 애플리케이션을 효과적으로 테스트하려면, 보안팀은 DAST 스캔을 구성할 때 유연성이 필요합니다. 이전에는 UI로 구성된 DAST 스캔의 구성 옵션이 제한돼 특정 보안 요구 사항이 있는 애플리케이션을 성공적으로 스캔하지 못했습니다. 즉, 빠른 보안 평가를 위해 파이프라인 기반 스캔을 사용해야 했습니다.
이제 파이프라인 기반 스캔에서 사용할 수 있는 것과 동일한 세부 제어 기능을 활용해 UI로 DAST 스캔을 구성할 수 있습니다. 다음 기능이 포함됩니다.
- 맞춤형 헤더와 쿠키를 포함한 전체 인증 구성
- 최대 페이지, 최대 깊이, 제외된 URL 등과 같은 정확한 크롤링 설정
- 고급 스캔 시간 초과와 재시도
- 크롤링할 최대 링크, DOM 깊이와 같은 맞춤형 스캐너 동작
- 특정 취약점 유형의 타깃 설정된 스캔 모드
애플리케이션 전반에 일관된 보안 테스트를 유지하려면, 이러한 구성을 재사용 가능한 프로필로 저장하세요. 모든 구성 변경은 감사 이벤트로 추적되므로 스캔 설정이 추가, 편집 또는 제거되는 시기를 알 수 있습니다.
이렇게 향상된 제어 기능으로 더 효과적인 보안 스캔을 실행하는 동시에 상세한 감사 추적으로 컴플라이언스를 유지할 수 있습니다. 파이프라인 구성을 관리하는 데 시간을 쓰는 대신, 각 애플리케이션에 적합한 스캔을 빠르게 실행해 취약점을 더 빠르게 찾아 수정할 수 있습니다.
인포그랩의 기술지원 서비스를 받으세요!
완벽한 GitLab 구축부터 성공적인 DevOps 도입까지! 인포그랩과 DevOps 라이프사이클을 함께하세요.
(이 포스트는 GitLab의 동의를 받아 공식 블로그의 영문 포스트를 우리말로 번역한 글입니다.)
Tip! 인포그랩의 GitLab 버전별 기능에서 버전별로 추가된 기능을 검색해 볼 수 있습니다.