905c529d61
- add sync_interval to the github_deb/github_alpine docs and the caching field table - apply the created_at slot gate only when no sync state row exists - test 0<->N interval changes, the insert-only gate and a negative sync_interval on update
21 lines
835 B
Markdown
21 lines
835 B
Markdown
# `github_alpine` remote
|
|
|
|
Shared classification, TTL and eviction rules: [caching](../common/caching.md).
|
|
|
|
| Type | Mutable (auto-detected) | Immutable (auto-detected) |
|
|
|---|---|---|
|
|
| `github_alpine` | `APKINDEX.tar.gz` (synthesized) | `.apk` (redirected) |
|
|
|
|
## Release sync
|
|
|
|
A background syncer re-scans the GitHub releases list per remote, sharing one
|
|
lease per remote across replicas through `github_alpine_sync_state`.
|
|
|
|
- **`sync_interval`** (seconds) re-checks once per interval at a stable
|
|
per-remote offset, so remotes on the same interval spread out instead of
|
|
syncing together; its first scheduled sync waits for that slot (a cold-cache
|
|
request still primes at once). Unset, it re-checks no more often than its
|
|
`mutable_ttl`.
|
|
- A failed scan keeps serving the last good index and retries with exponential
|
|
backoff.
|