위키득계정 ↗
기술

Cargo-release

Cargo-release기술
대상
Rust 크레이트
주요 역할
패키지 릴리스 절차 관리
대표 명령
cargo release
기본 동작
모의 실행
Cargo-release는 Rust의 cargo publish에 버전 관리와 검증, 태그와 푸시 절차를 더하는 릴리스 도구다. 워크스페이스의 여러 패키지를 다루고 기본 모의 실행으로 수행할 변경을 확인할 수 있다.

게시 명령 주변의 절차

패키지를 공개하려면 게시 명령 외에도 버전 변경과 Git 상태 확인, 태그 생성 같은 작업이 필요하다. Cargo-release는 이 절차를 함께 다룬다. 올바른 브랜치인지, 원격과 동기화되어 있는지, 작업 트리가 깨끗한지 등을 확인하는 기능을 제공한다.

워크스페이스의 연관 변경

워크스페이스 전체나 특정 패키지를 대상으로 실행할 수 있다. 한 패키지의 버전을 바꾸면 그것에 의존하는 워크스페이스의 다른 크레이트도 갱신한다. 변경 탐지로 릴리스가 필요하지 않을 수 있는 패키지를 판단하는 데 도움을 주며 여러 패키지의 커밋을 함께 다루는 설정도 가능하다.

실행 전 확인과 사용자 정의

기본값은 실제 릴리스를 수행하지 않는 모의 실행이며 별도 실행 옵션으로 동작을 확정한다. 사전 검색과 치환으로 다른 파일의 버전 표현을 갱신하거나 릴리스 전 훅으로 추가 작업을 연결할 수 있다. 자동 절차를 사용해도 결과 버전과 공개 대상이 의도에 맞는지 확인해야 한다.

관련 문서

Release-plz / GoReleaser / Git-cliff / Changesets / Semantic-release