뱃지

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

뱃지는 프로젝트에 대한 간결한 정보를 제공하는 통합된 방법입니다.
뱃지는 작은 이미지와 해당 이미지를 가리키는 URL로 구성되어 있습니다.
GitLab에서는 뱃지가 프로젝트 설명 아래에 표시됩니다.
뱃지는 프로젝트그룹 수준에서 사용할 수 있습니다.

프로젝트 정보 페이지에 나타난 뱃지

사용 가능한 뱃지

GitLab은 다음과 같은 파이프라인 뱃지를 제공합니다:

GitLab은 또한 사용자 정의 뱃지를 지원합니다.

파이프라인 상태 뱃지

파이프라인 상태 뱃지는 프로젝트의 최신 파이프라인 상태를 나타냅니다.
파이프라인 상태에 따라 뱃지는 다음 값 중 하나를 가질 수 있습니다:

  • pending
  • running
  • passed
  • failed
  • skipped
  • manual
  • canceled
  • unknown

다음 링크를 사용하여 파이프라인 상태 뱃지 이미지에 액세스할 수 있습니다:

https://gitlab.example.com/<namespace>/<project>/badges/<branch>/pipeline.svg

건너뛴 상태만 표시

파이프라인 상태 뱃지가 마지막 건너뛴 상태만 표시되도록 만들려면 ?ignore_skipped=true 쿼리 매개변수를 사용하세요:

https://gitlab.example.com/<namespace>/<project>/badges/<branch>/pipeline.svg?ignore_skipped=true

테스트 커버리지 보고서 뱃지

테스트 커버리지 보고서 뱃지는 프로젝트에서 테스트된 코드의 백분율을 나타냅니다.
값은 최신 성공한 파이프라인을 기반으로 계산됩니다.

다음 링크를 사용하여 테스트 커버리지 보고서 뱃지 이미지에 액세스할 수 있습니다:

https://gitlab.example.com/<namespace>/<project>/badges/<branch>/coverage.svg

각 작업 로그가 일치하는 커버리지 보고서에 대한 정규 표현식을 정의할 수 있습니다.
이는 파이프라인의 각 작업에서 테스트 커버리지 백분율 값을 정의할 수 있다는 의미입니다.

특정 작업에서 커버리지 보고서를 얻으려면 URL에 job=coverage_job_name 매개변수를 추가하세요.
예를 들어, 다음과 유사한 코드를 사용하여 coverage 작업의 테스트 커버리지 보고서 뱃지를 Markdown 파일에 추가할 수 있습니다:

![coverage](https://gitlab.example.com/<namespace>/<project>/badges/<branch>/coverage.svg?job=coverage)

테스트 커버리지 보고서 뱃지 색상 및 제한

뱃지의 기본 색상 및 제한은 다음과 같습니다:

  • 95 이상 100% - 우수함 (#4c1)
  • 90 이상 95% - 적합함 (#a3c51c)
  • 75 이상 90% - 보통 (#dfb317)
  • 0 이상 75% - 낮음 (#e05d44)
  • 커버리지 없음 - 알 수 없음 (#9f9f9f)

이상은 이상을 포함한 것을 의미합니다.

다음과 같은 추가 매개변수를 사용하여 제한을 덮어쓸 수 있습니다 (GitLab 14.4에서 소개됨):

  • min_good (기본값 95, 3에서 100 사이의 값 사용 가능)
  • min_acceptable (기본값 90, 2에서 min_good-1 사이의 값 사용 가능)
  • min_medium (기본값 75, 1에서 min_acceptable-1 사이의 값 사용 가능)

잘못된 경계가 설정되면 GitLab은 자동으로 유효한 값으로 조정합니다.
예를 들어, min_good80으로 설정되고 min_acceptable85로 설정되었을 경우(너무 높음), GitLab은 자동으로 min_acceptable79(min_good - 1)로 설정합니다.

최신 릴리스 뱃지

최신 릴리스 뱃지는 프로젝트의 최신 릴리스 태그 이름을 나타냅니다.
릴리스가 없는 경우 none을 표시합니다.

다음 링크를 사용하여 최신 릴리스 뱃지 이미지에 액세스할 수 있습니다:

https://gitlab.example.com/<namespace>/<project>/-/badges/release.svg

기본적으로 뱃지는 ?order_by 쿼리 매개변수와 함께 released_at 시간을 사용하여 릴리스를 가져옵니다.

https://gitlab.example.com/<namespace>/<project>/-/badges/release.svg?order_by=release_at

value_width 매개변수를 사용하여 릴리스 이름 필드의 너비를 변경할 수 있습니다(GitLab 15.10에서 소개됨).
값은 1에서 200 사이여야 하며, 기본값은 54입니다.
범위를 벗어나는 값이 설정되면 GitLab은 자동으로 기본값으로 조정합니다.

프로젝트 뱃지

관리자 또는 소유자가 프로젝트에 뱃지를 추가할 수 있으며, 해당 뱃지는 프로젝트의 개요 페이지에 표시됩니다. 동일한 뱃지를 여러 프로젝트에 추가해야 하는 경우 그룹 레벨에서 추가할 수 있습니다.

예제 프로젝트 뱃지: 파이프라인 상태

일반적인 프로젝트 뱃지는 GitLab CI 파이프라인 상태를 나타냅니다.

프로젝트에 이 뱃지를 추가하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 설정 > 일반을 선택합니다.
  3. 뱃지를 확장합니다.
  4. 이름 아래에 _파이프라인 상태_를 입력합니다.
  5. 링크에 다음 URL을 입력합니다: https://gitlab.com/%{project_path}/-/commits/%{default_branch}
  6. 뱃지 이미지 URL에 다음 URL을 입력합니다: https://gitlab.com/%{project_path}/badges/%{default_branch}/pipeline.svg
  7. 뱃지 추가를 선택합니다.

그룹 뱃지

그룹에 뱃지를 추가하면 해당 그룹에 속한 모든 프로젝트에 대해 프로젝트 레벨 뱃지를 추가하고 강제할 수 있습니다. 그룹 뱃지는 그룹에 속한 모든 프로젝트의 개요 페이지에서 볼 수 있습니다.

참고: 이러한 뱃지는 코드베이스에서 프로젝트 레벨의 뱃지로 나타나지만, 프로젝트 레벨에서 편집하거나 삭제할 수는 없습니다.

각 프로젝트에 개별 뱃지가 필요한 경우 다음 중 하나를 선택합니다:

뱃지 보기

프로젝트 또는 그룹에서 사용 가능한 뱃지를 보려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트 또는 그룹을 찾습니다.
  2. 설정 > 일반을 선택합니다.
  3. 뱃지를 확장합니다.

뱃지 추가

프로젝트 또는 그룹에 새로운 뱃지를 추가하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트 또는 그룹을 찾습니다.
  2. 설정 > 일반을 선택합니다.
  3. 뱃지를 확장합니다.
  4. 뱃지 추가를 선택합니다.
  5. 이름 텍스트 상자에 뱃지의 이름을 입력합니다.
  6. 링크 텍스트 상자에 뱃지가 가리킬 URL을 입력합니다.
  7. 뱃지 이미지 URL 텍스트 상자에 뱃지에 표시할 이미지의 URL을 입력합니다.
  8. 뱃지 추가를 선택합니다.

파이프라인 뱃지의 URL 보기

뱃지의 정확한 링크를 볼 수 있습니다. 그런 다음 해당 링크를 사용하여 HTML이나 Markdown 페이지에 뱃지를 삽입할 수 있습니다.

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 설정 > CI/CD를 선택합니다.
  3. 일반 파이프라인을 확장합니다.
  4. 파이프라인 상태, 커버리지 보고서 또는 최신 릴리스 섹션에서 이미지의 URL을 볼 수 있습니다.

파이프라인 뱃지

뱃지 사용자 정의

뱃지의 다음 측면을 사용자 정의할 수 있습니다:

  • 스타일
  • 텍스트
  • 너비
  • 이미지

뱃지 스타일의 사용자 정의

파이프라인 뱃지는 URL에 style=style_name 매개변수를 추가하여 다양한 스타일로 렌더링될 수 있습니다. 두 가지 스타일을 사용할 수 있습니다:

  • Flat (기본값):

    https://gitlab.example.com/<namespace>/<project>/badges/<branch>/coverage.svg?style=flat
    

    평면 스타일 뱃지

  • Flat square (GitLab 11.8에서 도입됨):

    https://gitlab.example.com/<namespace>/<project>/badges/<branch>/coverage.svg?style=flat-square
    

    정사각형 평면 스타일 뱃지

뱃지 텍스트의 사용자 정의

뱃지의 텍스트는 동일한 파이프라인에서 실행되는 여러 커버리지 작업을 구분하기 위해 사용자 정의될 수 있습니다. URL에 key_text=custom_textkey_width=custom_key_width 매개변수를 추가하여 뱃지 텍스트와 너비를 사용자 정의할 수 있습니다:

https://gitlab.com/gitlab-org/gitlab/badges/main/coverage.svg?job=karma&key_text=Frontend+Coverage&key_width=130

사용자 정의 텍스트와 너비가 있는 뱃지

뱃지 이미지의 사용자 정의

기본 뱃지 이외에 원하는 뱃지 이미지를 사용하려면 프로젝트나 그룹에서 사용자 정의 뱃지 이미지를 사용할 수 있습니다.

전제 조건:

  • 뱃지에 표시될 원하는 이미지로 직접 가리키는 유효한 URL. 이미지가 GitLab 저장소에 위치한 경우 이미지의 원시 링크를 사용합니다.

플레이스홀더를 사용하여 다음과 같이 루트 저장소의 원시 이미지를 가리키는 예제 뱃지 이미지 URL이 있습니다:

https://gitlab.example.com/<project_path>/-/raw/<default_branch>/my-image.svg

그룹이나 프로젝트에 새로운 사용자 정의 이미지가 있는 뱃지를 추가하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트나 그룹을 찾습니다.
  2. 설정 > 일반을 선택합니다.
  3. 뱃지를 확장합니다.
  4. 이름 아래에 뱃지의 이름을 입력합니다.
  5. 링크 아래에 뱃지가 가리킬 URL을 입력합니다.
  6. 뱃지 이미지 URL 아래에 표시될 사용자 정의 이미지로 직접 가리키는 URL을 입력합니다.
  7. 뱃지 추가를 선택합니다.

파이프라인을 통해 생성된 사용자 정의 이미지를 사용하는 방법에 대해 자세히 알아보려면 URL을 통한 최신 작업 아티팩트에 액세스하는 문서를 참조하세요.

뱃지 편집

프로젝트 또는 그룹에서 뱃지를 편집하려면 다음을 수행하세요:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트 또는 그룹을 찾습니다.
  2. 설정 > 일반을 선택합니다.
  3. 뱃지를 확장합니다.
  4. 편집하려는 뱃지 옆에서 편집을 선택합니다 ().
  5. 이름, 링크, 또는 뱃지 이미지 URL을 편집합니다.
  6. 변경 사항 저장을 선택합니다.

뱃지 삭제

프로젝트 또는 그룹에서 뱃지를 삭제하려면 다음을 수행하세요:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트 또는 그룹을 찾습니다.
  2. 설정 > 일반을 선택합니다.
  3. 뱃지를 확장합니다.
  4. 삭제하려는 뱃지 옆에서 삭제를 선택합니다 ().
  5. 확인 대화상자에서 뱃지 삭제를 선택합니다.
  6. 변경 사항 저장을 선택합니다.

참고: 그룹과 연결된 뱃지는 그룹 수준에서만 편집하거나 삭제할 수 있습니다.

플레이스홀더

뱃지가 가리키는 URL 및 이미지 URL에는 평가될 때 사용되는 플레이스홀더가 포함될 수 있습니다. 다음과 같은 플레이스홀더가 사용 가능합니다:

  • %{project_path}: 상위 그룹을 포함한 프로젝트의 경로
  • %{project_title}: 프로젝트의 제목
  • %{project_name}: 프로젝트의 이름
  • %{project_id}: 프로젝트에 연결된 데이터베이스 ID
  • %{default_branch}: 프로젝트 저장소에 구성된 기본 브랜치 이름
  • %{commit_sha}: 프로젝트 저장소의 기본 브랜치에 대한 가장 최근 커밋의 ID

참고: 플레이스홀더는 뱃지가 기본적으로 비공개 정보를 노출하도록 허용할 수 있으며, 이는 뱃지가 공개적으로 사용되도록 의도된 것입니다. 정보가 민감하다면 이러한 플레이스홀더를 사용을 피하십시오.