[Rust] cargo-vendor: 라이브러리 로컬로 갖다쓰기
실무에서는 종종 외부와의 접속이 차단된 환경에서 작업을 해야 할 때가 있다.
라이브러리를 가져오더라도 usb 검수를 거쳐서만 가져올 수 있는 그런 혹독한 환경들 말이다.
그럴때면 당연히 평소에 하던것처럼 무조건 cargo run을 때릴 수도 없다.
얘들도 cratesio에서 다운받아오니까..
이에 대한 대처법은 몇가지가 있는데, 가장 간편한건 아무래도 cargo 기본 기능인 vendor를 쓰는 쪽인 것 같다.
예를 들어 이런 종속성과 코드가 있다고 치자.

여기 루트 경로에서 그냥 cargo vendor를 친다.
그럼 거기있는 Cargo.toml을 읽어서 죄다 다운을 받고
그걸 vendor라는 디렉터리에 모아준다.
이것들의 사용법도 간단하다.
그냥 실행이나 빌드를 하면 cargo가 vendor에 있는 것들을 알아서 잘 읽어준다.
다운로드 없이 컴파일만 잘 돈 것을 볼 수 있겠다.
그렇다.
참조
https://crates.io/crates/cargo-local-registry
https://doc.rust-lang.org/cargo/commands/cargo-vendor.html