InfoGrab Docs

모노레포 패키지 관리 워크플로우

모노레포 프로젝트를 패키지 레지스트리로 사용하여 여러 프로젝트에 패키지를 게시합니다.

모노레포 프로젝트를 패키지 레지스트리로 사용하여 여러 프로젝트에 패키지를 게시합니다. 프로젝트 및 하위 프로젝트에 패키지 게시 # 프로젝트와 하위 프로젝트에 패키지를 게시하려면 각 패키지에 대한 구성 파일을 추가해야 합니다. 특정 패키지 관리자에 대한 패키지 구성 방법을 알아보려면 지원되는 패키지 관리자 를 참조하세요. 다음 예시는 npm 을 사용하여 프로젝트와 하위 프로젝트에 대한 패키지를 게시하는 방법을 보여줍니다. 전제 조건: 범위가 api 로 설정된 개인 접근 토큰 . 테스트 프로젝트. 이 예시에서 MyProject 는 상위 프로젝트입니다. components 디렉토리에 ChildProject 라는 하위 프로젝트가 포함되어 있습니다: MyProject/ |- src/ | |- components/ | |- ChildProject/ |- package.json MyProject 에 대한 패키지를 게시하려면: MyProject 디렉토리로 이동합니다. npm init 을 실행하여 프로젝트를 초기화합니다. 패키지 이름이 명명 규칙 을 따르는지 확인합니다. .npmrc 파일을 만듭니다. 레지스트리 URL과 프로젝트 엔드포인트를 포함합니다. 예를 들어: //gitlab.example.com/api/v4/projects/<project_id>/packages/npm/:_authToken="${NPM_TOKEN}" @scope:registry=https://gitlab.example.com/api/v4/projects/<project_id>/packages/npm/ 명령줄에서 패키지를 게시합니다. <token> 을 개인 접근 토큰으로 교체합니다: NPM_TOKEN=<token> npm publish Warning GitLab 토큰(또는 다른 토큰)을 .npmrc 파일이나 저장소에 커밋할 수 있는 다른 파일에 직접 하드코딩하지 마세요. 프로젝트의 패키지 레지스트리에 MyProject 에 대한 패키지가 게시된 것을 볼 수 있습니다. ChildProject 에 패키지를 게시하려면 동일한 단계를 따릅니다. .npmrc 파일의 내용은 MyProject 에 추가한 것과 동일할 수 있습니다. ChildProject 에 대한 패키지를 게시하면 프로젝트의 패키지 레지스트리에 해당 패키지가 표시됩니다. 다른 프로젝트에 패키지 게시 # 패키지는 GitLab의 프로젝트와 연결됩니다. 그러나 패키지는 해당 프로젝트의 코드와 연결되지 않습니다. 예를 들어 npm 또는 Maven에 대한 패키지를 구성할 때 project_id 는 패키지가 게시될 레지스트리 URL을 설정합니다. 예를 들어: npm: https://gitlab.example.com/api/v4/projects/<project_id>/packages/npm/ maven: https://gitlab.example.com/api/v4/projects/<project_id>/packages/maven/ 레지스트리 URL의 project_id 를 다른 프로젝트로