Skip to content

Common badges for readme for Cloud Barista repos

Seokho Son edited this page Feb 17, 2021 · 2 revisions

개요

본 문서는 Cloud-Barista의 각 저장소의 README.md에 공통적으로 적용하면 좋을 Badge를 정의합니다.


Badge 개념

Github에서 Badge는 저장소에 대한 정보를 아이콘 형태로 쉽게 확인할 수 있도록, Readme에 Badge 이미지를 마크다운 형태로 추가하여 저장소를 꾸미는 Github 사용자의 사용 패턴 입니다.

Badge 제공 예시

CB-Tumblebug repo: https://github.com/cloud-barista/cb-tumblebug/blob/master/README.md

Go Report Card Build Top Language GitHub go.mod Go version Repo Size GoDoc Swagger API Doc

Release Version License FOSSA Status

All Contributors

Badge 일반적 제공 방식

1)특정 서비스에 대한 제공자가 직접 제공하는 Badge 사용 (ex: goreportcard.com, godoc.org, ...)

2)각종 Badge를 모아서 제공하는 Badge 전용 서비스 사용 (shields.io)

[note]
https://shields.io/ 에서는 일반적인 Badge들을 모아서 제공하고 있습니다. (많은 저장소가 shields 를 사용하여 Badge 제공), 
shields.io Badge의 카테고리: Build, Code Coverage, Analysis, Chat, Dependencies, Size, Downloads, Funding, 
Issue Tracking, License, Rating, Social, Version, Platform & Version Support, Monitoring, Activity, Other.

Cloud-Barista 공통 Badge

Go Report Card Build Top Language GitHub go.mod Go version Repo Size GoDoc Release Version License

항목 기능 제공 방법 비고
Go Report Card 코드 정적 분석 리포트 점수 표시 - goreportcard.com 를 통해 제공
- 예시: https://goreportcard.com/badge/github.com/cloud-barista/cb-tumblebug
적용 시기는 자율
Build test result Github의 Build workflow 동작 성공 여부 표시 - shields.io 를 통해 제공
- 예시: https://img.shields.io/github/workflow/status/cloud-barista/cb-tumblebug/Build%20amd64%20container%20image
build가 관련된 저장소 적용, 적용 시기는 자율
Top (main) Language 주요 프로그래밍 언어 표시 - shields.io 를 통해 제공
- 예시: https://img.shields.io/github/languages/top/cloud-barista/cb-tumblebug
- 임의 입력 예시: https://img.shields.io/badge/language-go-blue
Repo의 주요 언어와 실제 비율이 일치하지 않는 경우 임의 지정
go.mod Go version go.mod 파일의 go version을 자동 검색하여 표시 - shields.io 를 통해 제공
- 예시: https://img.shields.io/github/go-mod/go-version/cloud-barista/cb-tumblebug?label=go.mod
Go 언어 활용 저장소에 대해서만 적용
Repo file size / Lines of code 저장소의 전체 파일 사이즈 또는 소스코드 라인 수 표시 - shields.io 를 통해 제공
- 예시: https://img.shields.io/tokei/lines/github/cloud-barista/cb-tumblebug
size / lines 는 저장소 관리자 선호에 따라 자율 지정
GoDoc godoc을 통한 go 소스 문서 웹사이트 링크 제공 - pkg.go.dev 에서 제공. 
- 예시: https://godoc.org/github.com/cloud-barista/cb-tumblebug?status.svg
Go 언어 활용 저장소에 대해서만 적용, 적용 시기는 자율
Release Version 저장소의 최신 릴리스를 자동으로 표시 - shields.io 를 통해 제공
- 예시: https://img.shields.io/github/v/release/cloud-barista/cb-tumblebug
 
License 저장소의 LICENSE 파일에 입력된 라이선스를 표시 - shields.io 를 통해 제공
- 예시: https://img.shields.io/github/license/cloud-barista/cb-tumblebug
 
참조 코드
  • [![Go Report Card](https://goreportcard.com/badge/github.com/cloud-barista/cb-tumblebug)](https://goreportcard.com/report/github.com/cloud-barista/cb-tumblebug)
  • [![Build](https://img.shields.io/github/workflow/status/cloud-barista/cb-tumblebug/Build%20amd64%20container%20image)](https://github.com/cloud-barista/cb-tumblebug/actions?query=workflow%3A%22Build+amd64+container+image%22)
  • [![Top Language](https://img.shields.io/github/languages/top/cloud-barista/cb-tumblebug)](https://github.com/cloud-barista/cb-tumblebug/search?l=go)
  • [![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/cloud-barista/cb-tumblebug?label=go.mod)](https://github.com/cloud-barista/cb-tumblebug/blob/master/go.mod)
  • [![Repo Size](https://img.shields.io/github/repo-size/cloud-barista/cb-tumblebug)](#)
  • [![GoDoc](https://godoc.org/github.com/cloud-barista/cb-tumblebug?status.svg)](https://pkg.go.dev/github.com/cloud-barista/cb-tumblebug@master)
  • [![Release Version](https://img.shields.io/github/v/release/cloud-barista/cb-tumblebug)](https://github.com/cloud-barista/cb-tumblebug/releases)
  • [![License](https://img.shields.io/github/license/cloud-barista/cb-tumblebug)](https://github.com/cloud-barista/cb-tumblebug/blob/master/LICENSE)

Cloud-Barista 옵션 Badge

항목 기능 제공 방법 비고
All Contributors All Contributors 기준의 컨트리뷰터 수를 표시 - https://github.com/all-contributors/all-contributors 의 커스텀 Badge를 통해 제공  
Coverage Code Coverage - shields.io 를 통해 제공
- “Code Coverage”  from Shields IO: coverage|xx%
 
Platform Platform & Version Support - shields.io 를 통해 제공
- “Platform & Version Support” from Shields IO: platform|linux-64
 
API reference API 참조 문서 링크 표시 - shields.io 를 통해 제공
- 예시: https://img.shields.io/badge/API%20Doc-Swagger-brightgreen