我有一组 Azure 构建管道,用于编译 rust 项目,并且当前使用 blob 存储将.cargo和target文件夹存储为缓存。
在本地编译时,一旦第一次编译了二进制文件,后续的cargo build就不会再次编译依赖库/板条箱,而只是本地二进制文件,但是使用我当前的管道系统,在下载缓存并使用正确的目标文件夹后构建后,管道仍然下载并构建 crates。
这是我用于缓存和任何管道构建的 config.toml。
[build]
target-dir = "./target"
dep-info-basedir = "."
incremental = true
Run Code Online (Sandbox Code Playgroud)
在某些情况下,它减少了编译时间,但远没有我预期的那么多。我可以缓存更多文件夹以提高速度吗?是否存在货物正在检查并污染缓存的某些缓存标识符?
管道运行一个自定义的 xtask 二进制文件,该二进制文件执行许多任务,包括运行,cargo build --release这是否会导致问题?