DevOps/CI.CD

[Gitlab] Badge

WhiteDuck 2024. 3. 1. 02:24

Badges

converage, pipeline 뱃지를 달기 위해서 처리순서는 다음과 같음:

1. Project => Settings => Genernal => Badges => Add badge
    1. name: `coverage`
    2. link: `https://{gitlab-site}/%{project_path}/-/commits/%{default_branch}`
    3. Badge image URL: `https://{gitlab-site}/%{project_path}/badges/%{default_branch}/coverage.svg`
    4. name: `pipeline
    5. link: `https://{gitlab-site}/%{project_path}/-/commits/%{default_branch}`
    6. Badge image URL: `https://{gitlab-site}/%{project_path}/badges/%{default_branch}/pipeline.svg`
2. `.gitlab-ci.yml` 에서 `test` 단계에서 `cover` 수행 후 `coverage` 수치 적용
test:
  stage: test
  script:
    - cover -delete
    - >
      TEST_VERBOSE=1 HARNESS_PERL_SWITCHES=-MDevel::Cover
      prove -lvm -I${LIB_DIR} t/unit.t :: --statistics
    - cover -ignore_re '^t/'
  coverage: '/^(?i)Total\s+.*\s+([\d\.]+)$/'
  artifacts:
    when: always
    paths:
      - cover_db
      - unit.log
    expire_in: 1 week
반응형