🤖 PR generated for branch `fix/cyrillic-fonts-dev-certs-and-page-head`.
### Changes Summary
- **Fonts**: Add Cyrillic glyph subsets for Lato, EB Garamond, and Fira
Code.
- **Dev**: Support remote Root CA and encrypted dev CA key in
`.env.dev`.
- **UI & Kits**: Add size variant to `Breadcrumbs` component and enlarge
`PageHead` breadcrumbs with tuned collapse scroll threshold.
- **ESLint**: Add `no-hanging-particles` i18n & markdown typography rule
with auto-fixer.
- **Content & i18n**: Apply `ru-text` editorial and typography polish
(em dashes, number ranges, «ё» restoration, non-breaking spaces) across
`services/www` and `services/docs`.
57 lines
4.8 KiB
Markdown
57 lines
4.8 KiB
Markdown
---
|
||
title: Справочник CLI
|
||
description: "Лаунчер apex: перечисление, диспетчеризация, справка и коды возврата."
|
||
weight: 31
|
||
---
|
||
|
||
Лаунчер — это скрипт на Python из стандартной библиотеки, `commons/apex` (попадает в `PATH` после выполнения `init.sh`). Все операции выполняются над локальным checkout: аргумента узла не существует.
|
||
|
||
## Формы вызова {#invocation}
|
||
|
||
| Команда | Поведение |
|
||
|---|---|
|
||
| `apex` или `apex --help` | Перечислить каждое доступное [действие](/apex/glossary#action) с его кратким описанием; выход с кодом `0`. |
|
||
| `apex <group>/<action> [args...]` | Выполнить одно действие. |
|
||
| `apex <group>/<action> --help` | Вывести справку argparse для действия, сгенерированную из `METADATA`; выход с кодом `0`. |
|
||
|
||
Перечисление помечает каждую запись источником [оверлея](/apex/glossary#overlay) — без метки (commons), `(local)`, `(local override)` — и добавляет `[DISABLED: reason]`, если модуль объявляет `DISABLED`. Перечисление использует статическое сканирование через `ast`, поэтому код самих действий не выполняется.
|
||
|
||
## Раскладка и разрешение путей {#layout}
|
||
|
||
При запуске лаунчер определяет, в какой из двух раскладок он находится:
|
||
|
||
- **Checkout узла** — лаунчер находится в каталоге `commons/`, родительский каталог которого содержит `node.env`. Родительский каталог служит корнем репозитория; `proprietaries/actions/` — дерево оверлея; [идентичность узла](/apex/glossary#node-identity) разрешается перед диспетчеризацией, а любые предупреждения об идентичности выводятся первыми в логе.
|
||
- **Автономный commons** — любое другое расположение. Каталог commons служит собственным корнем, оверлей отсутствует, а `ctx.node` равен `None` (строки лога содержат префикс `global`).
|
||
|
||
`sys.path` формируется следующим образом: каталог commons (позволяет импортировать `engine`), затем `commons/vendor/` при наличии и `../proprietaries/` в checkout узла (позволяет импортировать проприетарный код из `lib/`).
|
||
|
||
## Коды возврата {#exit-codes}
|
||
|
||
| Код | Источник |
|
||
|---|---|
|
||
| `0` | Действие вернуло `0` или нецелое значение; вызовы `--help`. |
|
||
| `1` | Неизвестное действие; отключённое действие; необработанное исключение (выводится в лог как `Type: message` с префиксом контекста); нецелый `SystemExit`. |
|
||
| `64` | Ошибка использования при разборе аргументов (`EX_USAGE`). |
|
||
| `65` | Ошибка данных, вызванная библиотеками движка (`EX_DATAERR`) — например, пустой результат рендеринга crontab. |
|
||
| `66` | Неполный или отсутствующий ввод (`EX_NOINPUT`) — например, не заданы поля идентичности или отсутствует каталог конфигурации ufw. |
|
||
|
||
Любой другой код — это значение, которое вернуло или вызвало само действие.
|
||
|
||
## Формат лога {#log-format}
|
||
|
||
Весь вывод движка и действий оформляется по единому шаблону:
|
||
|
||
```text
|
||
[<node>] [<group>/<action>] [LEVEL] message
|
||
```
|
||
|
||
`LEVEL` — это `INFO`, `WARN`, `ERROR` или `SUCCESS`. Строки `ERROR` выводятся в stderr, а остальные — в stdout. Такой формат удобен для cron: упрощает сбор логов и отправку оповещений.
|
||
|
||
---
|
||
|
||
**См. также:**
|
||
|
||
- [Концепция: Действия и оверлей](/apex/concepts/actions-and-overlay)
|
||
- [Справочник: Действия](/apex/reference/actions)
|
||
- [Справочник: API движка](/apex/reference/engine-api)
|