Semantic-release를 통해 자동으로 보고서 패키지 발표

2862 단어 npmCDpakagetech
단일 보고서로 Semantic-release를 사용하고 싶어서 비망록으로 씁니다.
Semantic-release를 사용하여 Semantic Versioning을 따라 자동으로 제출 메시지를 생성합니다.
Giithub에서 위탁 관리와 CI/CD를 진행하고 npm에서 발표하며 js를 제외한 포장도 다른 등록표에서 사용할 수 있다.
Semantic-release는 창고 1포를 전제로 이동하기 때문에 물보고를 설정해야 합니다.
기본적으로 모든 가방은 자신의 가방의 제출 방식만 참고하여 Semantic-release를 실행한다.
npm workspace를 사용합니다.

How to


먼저 설치합니다.노선대로 하면 됩니다.따로 포장할 필요 없어요.(node modules 버전에서는 간혹 움직이기만 하면 설치하는 게 좋다는 말이 있다. 어쨌든 먼저 이동하는 게 좋다!)
코스 패키지.json에 다음 내용 추가
./package.json
npm install -D semantic-release semantic-release-monorepo
그리고 각각 포장된 패키지.json에서 Semantic-release 뛰기
./package-a/package.json
{
    "scripts": {
        "release": "npm run release -ws --if-present"
    },
    "release": {
        "extends": "semantic-release-monorepo"
    }
}
플러그인 등은 취향에 따라 노선을 설정할 수 있다.CI 설정도 코스 타npm i && npm run release에 그쳐 거의 변화가 없었다.
Semantic-release를 가져오기 전에 수동으로 포장하여 발행하려면 발행에 대한 제출에 라벨을 붙여야 합니다.
예를 들어 제출123abc발표package-a버전1.2.3하면
{
    "scripts": {
        "release": "npx semantic-release"
  }
}

로 Semantic release에게 가르칩니다.(기본 설정v1.2.3하면 되지만 이러면 단일 보고서에서 라벨이 충돌하기 때문에 Semantic-release-monorepo에 따라 변경됨)
기타 설정은 공식 문서에 쓰여 있습니다.

홍보와 소감


정말 발매가 가벼워요. 다행이에요.
이 방법으로 firefuse라는 Firestore의 모형 라이브러리를 만들었습니다. 한번 시도해 보시면 기쁘겠습니다.
https://github.com/Hagihara-A/fire-fuse

좋은 웹페이지 즐겨찾기