| # Setup |
| |
| Now that you've installed `cargo vet`, you're ready to set it up for your project. Move |
| into the top-level project directory and execute the following: |
| |
| ``` |
| $ cargo vet |
| error: cargo vet is not configured |
| ``` |
| |
| To be useful, `cargo vet` needs to know which audits have been performed and |
| what policy should be enforced. By default, this information is stored next to |
| `Cargo.lock` in a directory called `supply-chain`. This location is |
| [configurable](./config.md). |
| |
| To get started, you can invoke: |
| |
| ``` |
| $ cargo vet init |
| ``` |
| |
| This creates and populates the `supply-chain` directory. It contains two files: |
| `audits.toml` and `config.toml`. The `exemptions` table of `config.toml` is |
| populated with the full list of third-party crates currently used by the |
| project. The files in this directory should be added to version control along |
| with `Cargo.lock`. |
| |
| Now, try vetting again: |
| |
| ``` |
| $ cargo vet |
| Vetting Succeeded (X exempted) |
| ``` |
| |
| You're now up and running, though with an empty audit set: vetting only succeeds |
| because your list of exceptions contains the exact set of current dependencies |
| used in your project. Generally speaking, you should try to avoid more |
| exceptions, and ideally seek to shrink the list over time. |