mirror of
https://codeberg.org/git-pages/git-pages.git
synced 2026-05-21 14:41:34 +00:00
This is done using reflection to avoid boilerplate and potential desync of the two configuration interfaces. The `[[wildcards]]` section did not fit well into the "splat every config key" paradigm, so it is unmarshalled as a whole from a JSON payload in an environment variable. This commit also splits up the `Config` type into small per-section struct types and removes most references to the global `config` in favor of passing pointers to sections around. A new option, `-print-config-env-vars`, shows the names and types of all of the available configuration knobs.
46 lines
1.0 KiB
TOML
46 lines
1.0 KiB
TOML
# Unless otherwise noted, every value in this file is the same
|
|
# as the intrinsic default value.
|
|
|
|
log-format = "datetime+message"
|
|
|
|
[server]
|
|
# Use "-" to disable the handler.
|
|
pages = "tcp/:3000"
|
|
caddy = "tcp/:3001"
|
|
health = "tcp/:3002"
|
|
|
|
[[wildcard]] # non-default section
|
|
domain = "codeberg.page"
|
|
clone-url = "https://codeberg.org/<user>/<project>.git"
|
|
index-repos = ["<user>.codeberg.page", "pages"]
|
|
fallback-proxy-to = "https://codeberg.page"
|
|
|
|
[storage]
|
|
type = "fs"
|
|
|
|
[storage.fs]
|
|
root = "./data"
|
|
|
|
[storage.s3] # non-default bucket configuration
|
|
endpoint = "play.min.io"
|
|
access-key-id = "Q3AM3UQ867SPQQA43P2F"
|
|
secret-access-key = "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG"
|
|
region = "us-east-1"
|
|
bucket = "git-pages-demo"
|
|
|
|
[storage.s3.blob-cache]
|
|
max-size = "256MB"
|
|
|
|
[storage.s3.site-cache]
|
|
max-size = "16MB"
|
|
max-age = 60 # seconds
|
|
|
|
[limits]
|
|
max-site-size = "128M"
|
|
max-manifest-size = "1M"
|
|
max-inline-file-size = "256B"
|
|
git-large-object-threshold = "1M"
|
|
max-symlink-depth = 16
|
|
update-timeout = 60 # seconds
|
|
max-heap-size-ratio = 0.5 # * RAM_size
|