This PR enables Lake to download artifacts from a remote cache service on demand as part of a `lake build`. It also refactors much of the cache API to be more type safe. The newly documented `lake cache add` command loads input-to-output mappings from a file and stores them in the cache with optional information about which cache service and what scope they come from. With this information, Lake can now download artifacts on demand during a `lake build`. The `lake cache get` command has also changed its default behavior to download just the input-to-outputs mapping and then lazily fetch artifacts from Reservoir as part of a `lake build`. The original eager behavior can be forced via the new `--download-arts` option. |
||
|---|---|---|
| .. | ||
| examples | ||
| tests | ||
| .gitattributes | ||
| .gitignore | ||
| build.sh | ||
| clean-build.sh | ||
| lakefile.toml | ||
| Makefile | ||
| time-build.sh | ||