gen_cargo_lock plugin

gen-cargo-lock - Generate a Cargo.lock file

Some Rust projects lack a Cargo.lock file, making it impossible to vendor dependencies using the cargo source. This source, when staged between a source that provides a Cargo project and the cargo source, generates the missing Cargo.lock file.

Host dependencies:

  • cargo (only needed for tracking)

Usage:

sources:

# The project sources. These lack a Cargo.lock file
- kind: git_repo
  url: upstream:foobar.git
  track: refs/tags/*

# Generates the missing Cargo.lock file
- kind: gen-cargo-lock

# Uses generated Cargo.lock file to vendor Rust dependencies
- kind: cargo