pkgowners
v0.2.0
Published
PKGOWNERS management utility
Downloads
2
Readme
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, [email protected], N
username2, [email protected], 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 rotate
로 init
, 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 카드로 변환해서 불러올 수 있습니다.