0.2.0 • Published 5 months ago

pkgowners v0.2.0

Weekly downloads
-
License
MIT
Repository
-
Last release
5 months ago

pkgowners

PKGOWNERS 관리 도구

사용법

먼저, .github/CODEOWNERS에 각 섹션별로 구분되도록 코드오너를 지정합니다.

# 로그인
/src/pages/login @username @username2
/src/components/login @username @username2

# 회원가입
/src/pages/register @username @username2
/src/components/register @username @username2

그 다음, GitHub ID / JIRA ID가 동기화될 수 있도록 아래의 형식으로 .github/ID_MAPPING.csv 파일을 작성합니다. Priority 필드가 true로 지정되면, 해당 인원에게 패키지가 우선 배정됩니다.

GitHub, Email, Priority
username, username@example.com, N
username2, username2@example.com, Y

이 두 파일이 준비되면 PKGOWNERS를 생성할 준비가 끝납니다.

init

npx pkgowners init 으로 비어있는 PKGOWNERS 파일을 생성합니다. 그룹으로 묶어서 관리하고 싶은 패키지가 있다면, 이 파일을 수정해서 병합할 수 있습니다. 와일드카드를 사용할 수도 있습니다.

이 명령은 이미 작성된 내용을 수정하지 않기 때문에, PKGOWNERS가 생성된 뒤에도 필요하다면 다시 호출해서 새로운 패키지들에 대한 PKGOWNERS를 생성할 수 있습니다.

# 이렇게 반환되지만
@storybook/react
@storybook/addons
storybook-jotai-plugin

# 이렇게 패턴으로 바꿔서 묶을 수 있습니다
@storybook/*|storybook-*

analyze

npx pkgowners analyze 로 CODEOWNERS에 기재된 영역별로 어느 부분에서 사용하고 있는지 파악해서, PKGOWNERS에 담당자 후보를 배정할 수 있습니다.

react @username @username2

해당 필드를 참고해서 담당자를 1명에게 부여하면 됩니다. 담당자는 GitHub ID를 받습니다.

assign

npx pkgowners assign 로 PKGOWNERS에 있는 여러 담당자 중 임의로 1명을 지정합니다. 패키지에 담당자가 아무도 지정되어 있지 않다면, ID_MAPPING.csv 에 있는 인원 중 한 명에게 임의로 지정됩니다.

react @username

rotate

npx pkgowners rotateinit, analyze, assign을 한 번에 실행해서 임의의 담당자를 바로 지정할 수 있습니다.

check-updates

npx pkgowners check-updates 는 PKGOWNERS와, package.json을 읽고 업데이트가 필요한 패키지와, 해당 패키지의 담당자를 출력합니다.

react: ^17.0.0 -> 18.0.0 (@username, @username2)

check-updates-jira

npx pkgowners check-updates-jira 는 업데이트가 필요한 패키지 하나마다 JIRA 카드를 자동으로 생성할 수 있도록 CSV 형식의 파일을 stdout으로 반환합니다.

npx pkgowners check-updates-jira --parent-id 'PROJECT-123' > ~/jira.csv 와 같은 방법으로 내보낼 수 있습니다.

내보낸 CSV는 JIRA의 "모든 이슈 보기" (/issues) 페이지의 메뉴에 있는 "CSV에서 이슈 가져오기" 기능을 통해 JIRA 카드로 변환해서 불러올 수 있습니다.

0.2.0

5 months ago

0.1.2

1 year ago

0.1.1

1 year ago

0.1.0

1 year ago