Справочник config.yaml
Подробное описание основных секций config.yaml.
Загрузка и defaults
Config читается из YAML, затем нормализуется.
Приоритет пути:
--configCONFIG_PATHconfig.yaml
Актуальные стартовые значения для template-репозиториев (notepub-recipe-blog, notepub-recipe-docs):
site.id:defaultcontent.source:localcontent.local_dir:./contentpaths.file_root:./.notepubpaths.artifacts_dir:./.notepub/artifactspaths.snapshot_file:./.notepub/snapshot/objects.jsonpaths.cache_root:./.notepub/cachetheme.dir:.theme.name:themetheme.templates_subdir:templatestheme.assets_subdir:assetsserver.listen:127.0.0.1:8080cache.html_ttl_seconds:600cache.stale_if_error_seconds:604800
Системные defaults движка (если поля не заданы) могут отличаться от recipe-конфигов.
site
id: идентификатор пространства кеша (по умолчаниюdefault).base_url: обязательный, нормализуется без завершающего/.title,description: default-метаданные.default_og_image: fallback-картинка OpenGraph.media_base_url: опциональная абсолютная база для медиа.host: основной allowlist host дляserve.host_aliases: дополнительные разрешенные host дляserve.
content
source:localилиs3.local_dir: путь для local-режима; относительный путь резолвится от директории config. Еслиsource=localиlocal_dirне задан, используетсяmarkdown.
Если content.source пуст:
- выбирается
local, еслиs3.bucketпуст - выбирается
s3, еслиs3.bucketзадан
s3
endpoint,region,force_path_stylebucket(обязателен дляcontent.source: s3)prefixнормализуется без ведущего/; если задан, движок добавляет завершающий/- credentials:
- либо обе пары
access_key+secret_key, либо ни одной - при отсутствии пары используется AWS default credential chain
- либо обе пары
anonymous: trueвыключает подпись запросов (публичный bucket)
og_type_by_type
Карта соответствия type -> og:type для OpenGraph.
Пример: article: article, page: website.
theme
dir,nametemplates_subdir(по умолчаниюtemplates)assets_subdir(по умолчаниюassets)
paths
artifacts_dir: директория чтения/записи index-артефактовsnapshot_file: snapshot-файл для инкрементальной индексацииcache_root: корень HTML-кеша в serve
robots
disallow: список путей дляrobots.txt.extra: произвольный текст, который дописывается вrobots.txt.
cache
html_ttl_seconds: TTL HTML-кеша вserve(по умолчанию600).stale_if_error_seconds: период выдачи stale-кеша при ошибках (по умолчанию604800).
media
expose_all_under_prefix:false:/media/*только для медиа, найденных в индексированном markdowntrue: открыть все медиа под заданным prefix
rules_path
Если не указан, по умолчанию ищется rules.yaml рядом с config-файлом.
Валидация при загрузке
site.base_urlобязателен.content.sourceдолжен быть толькоlocalилиs3.- Для
source=s3обязателенs3.bucket. - Для
source=s3ключиs3.access_keyиs3.secret_keyзадаются только парой.