lean4-htt/tests/lake
Mac Malone 8038a8b890
feat: lake: system-wide cache configuration (#12490)
This PR adds a system-wide Lake configuration file and uses it to
configure the remote cache services used by `lake cache`.

The system configuration is written in TOML. The exact location of the
file is system dependent and can be controlled via the `LAKE_CONFIG`
environment variable, but is usually located at `~/.lake/config.toml`.
As an example, one can configure a custom S3 cache service like so:

**~/.lake/config.toml**
```toml
cache.defaultService = "my-s3"
cache.defaultUploadService = "my-s3"

[[cache.service]]
name = "my-s3"
kind = "s3"
artifactEndpoint = "https://my-s3.com/a0"
revisionEndpoint = "https://my-s3.com/r0"
```

If no `cache.defaultService` is configured, Lake will use Reservoir for
downloads by default. A Reservoir mirror (or Reservoir-like service) can
be configured using `kind = "reservoir"` and setting an `apiEndpoint`. A
list of configured cache service (one name per line) can be obtained via
`lake cache services`.
2026-02-20 05:48:58 +00:00
..
examples chore: lake: mv targets test to tests (#11592) 2025-12-11 09:28:44 +00:00
tests feat: lake: system-wide cache configuration (#12490) 2026-02-20 05:48:58 +00:00
.gitattributes
.gitignore
build.sh
clean-build.sh
lakefile.toml feat: module system is no longer experimental (#11637) 2025-12-12 21:20:26 +00:00
Makefile
time-build.sh