PineCache

Documentation

Client settings for the supported build tools. Replace TOKEN with your team token.

Bazel

build --remote_cache=https://pinecache.org/cache
build --remote_header=Authorization=Bearer TOKEN
build --remote_upload_local_results=true
build --remote_timeout=120

Action results live under /cache/ac/ and blobs under /cache/cas/, both keyed by SHA-256.

Gradle

buildCache {
    remote(HttpBuildCache) {
        url = uri("https://pinecache.org/cache/gradle/")
        credentials { username = "ci"; password = "TOKEN" }
        push = System.getenv("CI") != null
    }
}

sccache

export SCCACHE_WEBDAV_ENDPOINT=https://pinecache.org/cache/sc/
export SCCACHE_WEBDAV_TOKEN=TOKEN

ccache

remote_storage = https://pinecache.org/cache/cc/|bearer-token=TOKEN|layout=bazel

Limits

LimitValue
Largest single object2 GiB
Retention without a read21 days
Requests per token600 / s

Objects are evicted least-recently-used once a node passes 85% of its disk.

Troubleshooting

Every request returns 404. The token is missing or expired. Cache endpoints do not distinguish a bad token from a missing object.

Uploads stall on large objects. Raise the client timeout; the first upload of a multi-gigabyte artifact can take minutes on a slow runner.