srekit config¶
Управление конфиг-файлом srekit — опциональной user-конфигурацией с identity автора и опциональной default templates dir.
Файл лежит в $XDG_CONFIG_HOME/srekit/config.yaml (то есть ~/.config/srekit/config.yaml, если переменная не выставлена). Старый ~/.srekit.yaml продолжает работать и выигрывает, если уже существует, — существующая установка никогда не остаётся с конфигом, который никто не читает. srekit doctor называет тот, что реально в силе, и предупреждает, если есть оба.
config init¶
Провести пользователя через заполнение конфига интерактивно (TTY) или non-interactively (--yes, piped stdin).
srekit config init # интерактив
srekit config init --yes # non-interactive, defaults из git config
srekit config init --force # перезаписать существующий
srekit --config ./my.yaml config init # кастомный путь (через root --config)
Флаги¶
| Флаг | Описание |
|---|---|
--author NAME |
Переопределить резолв автора |
--email EMAIL |
Переопределить резолв email |
--templates-dir PATH |
Default templates directory, который запишется в конфиг |
--force |
Перезаписать существующий конфиг |
--yes / -y |
Non-interactive; принять значения по умолчанию |
Значения по умолчанию¶
Если флаг опущен, srekit заполняет default из git config user.name / git config user.email. Если ни флага, ни git config, и команда non-interactive — падаем с ошибкой, не пишем невалидный файл.
Вывод¶
Генерируется файл вида:
# srekit user config — generated by `srekit config init` (safe to edit by hand)
author: Mikhail Savin
email: jtprogru@gmail.com
# templates_dir: ~/.config/srekit/templates # optional; uncomment to override embedded templates
Режим файла 0o600 (только владелец). templates_dir: идёт закомментированной подсказкой, когда не задан — раскомментируй чтобы включить, или передай --templates-dir PATH на init чтобы записать сразу.
Целевой путь¶
init пишет туда же, откуда конфиг читался бы: в ~/.srekit.yaml, если этот legacy-файл уже есть, иначе в $XDG_CONFIG_HOME/srekit/config.yaml — родительская директория создаётся при необходимости. Если передать --config FILE на root (srekit --config FILE config init) — файл будет записан туда. Удобно для multi-tenant setups или CI scratch.
См. также¶
- Конфигурация — как конфиг-файл участвует в общей resolution-цепочке.
srekit templates init— для скаффолда собственно директории шаблонов.