Справочник CLI
Интерфейс командной строки среды выполнения Wippy.
Глобальные флаги
Доступны для всех команд:
| Флаг | Сокр. | Описание |
|---|---|---|
--config |
Файл конфигурации (по умолчанию: .wippy.yaml) | |
--verbose |
-v |
Включить отладочное логирование |
--very-verbose |
Отладка с трассировкой стека | |
--console |
-c |
Цветное консольное логирование |
--silent |
-s |
Отключить консольное логирование |
--event-streams |
-e |
Потоковая передача логов в шину событий |
--profiler |
-p |
Включить pprof на localhost:6060 |
--memory-limit |
-m |
Лимит памяти (например, 1G, 512M) |
Приоритет лимита памяти: флаг --memory-limit > переменная окружения GOMEMLIMIT > 1GB по умолчанию.
wippy init
Создать новый lock-файл.
wippy init
wippy init --src-dir ./src --modules-dir .wippy
| Флаг | Сокр. | По умолчанию | Описание |
|---|---|---|---|
--src-dir |
-d |
./src | Директория исходного кода |
--modules-dir |
.wippy | Директория модулей | |
--lock-file |
-l |
wippy.lock | Путь к lock-файлу |
wippy run
Запустить среду выполнения или выполнить команду.
wippy run # Запустить среду выполнения
wippy run list # Список доступных команд
wippy run test # Запустить тесты
wippy run snapshot.wapp # Запустить из pack-файла
wippy run acme/http # Запустить модуль
wippy run --exec app:processes/app:worker # Выполнить один процесс
| Флаг | Сокр. | Описание |
|---|---|---|
--override |
-o |
Переопределить значения записи (namespace:entry:field=value) |
--exec |
-x |
Выполнить процесс и завершить (host/namespace:entry) |
--host |
Хост для выполнения | |
--registry |
URL реестра |
wippy lint
Проверить Lua-код на ошибки типов и предупреждения.
wippy lint
wippy lint --level warning
Проверяет все Lua-записи: function.lua.*, library.lua.*, process.lua.*, workflow.lua.*.
| Флаг | Описание |
|---|---|
--level |
Минимальный уровень серьёзности для отчёта |
wippy add
Добавить зависимость модуля.
wippy add acme/http
wippy add acme/http@1.2.3
wippy add acme/http@latest
| Флаг | Сокр. | По умолчанию | Описание |
|---|---|---|---|
--lock-file |
-l |
wippy.lock | Путь к lock-файлу |
--registry |
URL реестра |
wippy install
Установить зависимости из lock-файла.
wippy install
wippy install --force
| Флаг | Сокр. | Описание |
|---|---|---|
--lock-file |
-l |
Путь к lock-файлу |
--force |
Игнорировать кэш, всегда скачивать | |
--registry |
URL реестра |
wippy update
Обновить зависимости и пересоздать lock-файл.
wippy update # Обновить все
wippy update acme/http # Обновить конкретный модуль
wippy update acme/http demo/sql # Обновить несколько
| Флаг | Сокр. | По умолчанию | Описание |
|---|---|---|---|
--lock-file |
-l |
wippy.lock | Путь к lock-файлу |
--src-dir |
-d |
. | Директория исходного кода |
--modules-dir |
.wippy | Директория модулей | |
--registry |
URL реестра |
wippy pack
Создать snapshot-пакет (файл .wapp).
wippy pack snapshot.wapp
wippy pack release.wapp --description "Release 1.0"
wippy pack app.wapp --embed app:assets --bytecode **
| Флаг | Сокр. | Описание |
|---|---|---|
--lock-file |
-l |
Путь к lock-файлу |
--description |
-d |
Описание пакета |
--tags |
-t |
Теги пакета (через запятую) |
--meta |
Пользовательские метаданные (key=value) | |
--embed |
Встроить записи fs.directory (паттерны) | |
--list |
Список записей fs.directory (пробный запуск) | |
--exclude-ns |
Исключить пространства имён (паттерны) | |
--exclude |
Исключить записи (паттерны) | |
--bytecode |
Компилировать Lua в байткод (** для всех) |
wippy publish
Опубликовать модуль в хаб.
wippy publish
wippy publish --version 1.0.0
wippy publish --dry-run
Читает из wippy.yaml в текущей директории.
| Флаг | Описание |
|---|---|
--version |
Версия для публикации |
--dry-run |
Проверить без публикации |
--label |
Опубликовать как изменяемую метку вместо версии |
--release-notes |
Заметки к релизу |
--protected |
Пометить версию как защищённую |
--embed |
Встроить записи fs.directory по id или имени |
--config |
Путь к директории с wippy.yaml (по умолчанию: .) |
--registry |
URL реестра |
wippy search
Поиск модулей в хабе.
wippy search http
wippy search "sql driver" --limit 20
wippy search auth --json
| Флаг | Описание |
|---|---|
--json |
Вывод в формате JSON |
--limit |
Максимальное количество результатов |
--registry |
URL реестра |
wippy auth
Управление аутентификацией в реестре.
wippy auth login
wippy auth login
wippy auth login --token YOUR_TOKEN
| Флаг | Описание |
|---|---|
--token |
API-токен |
--registry |
URL реестра |
--local |
Сохранить учётные данные локально |
wippy auth logout
wippy auth logout
| Флаг | Описание |
|---|---|
--registry |
URL реестра |
--local |
Удалить локальные учётные данные |
wippy auth status
wippy auth status
wippy auth status --json
wippy registry
Запрос и просмотр записей реестра.
wippy registry list
wippy registry list
wippy registry list --kind function.lua
wippy registry list --ns app --json
| Флаг | Сокр. | Описание |
|---|---|---|
--kind |
-k |
Фильтр по типу |
--ns |
-n |
Фильтр по пространству имён |
--name |
Фильтр по имени | |
--meta |
Фильтр по метаданным | |
--json |
Вывод в формате JSON | |
--yaml |
Вывод в формате YAML | |
--lock-file |
-l |
Путь к lock-файлу |
wippy registry show
wippy registry show app:http:handler
wippy registry show app:config --yaml
| Флаг | Сокр. | Описание |
|---|---|---|
--field |
-f |
Показать конкретное поле |
--json |
Вывод в формате JSON | |
--yaml |
Вывод в формате YAML | |
--raw |
Сырой вывод | |
--lock-file |
-l |
Путь к lock-файлу |
wippy version
Вывести информацию о версии.
wippy version
wippy version --short
Пользовательские команды
Любая запись process.lua или process.wasm может быть зарегистрирована как именованная команда с помощью метаданных command:
entries:
- name: test_runner
kind: process.lua
meta:
command:
name: test
short: Run application tests
source: file://runner.lua
method: main
modules:
- io
- registry
- funcs
Запуск:
wippy run test
Список всех доступных команд:
wippy run list
Поля метаданных команды
| Поле | Обязательное | Описание |
|---|---|---|
name |
Да | Имя команды для использования с wippy run <name> |
short |
Нет | Краткое описание, отображаемое в wippy run list |
Подходит любой тип записи процесса (process.lua, process.wasm). Имя команды должно быть уникальным среди всех загруженных записей. Аргументы после имени команды передаются процессу.
Примеры
Рабочий процесс разработки
# Инициализация проекта
wippy init
wippy add wippy/http wippy/sql
wippy install
# Проверка на ошибки
wippy lint
# Запуск с отладочным выводом
wippy run -c -v
# Переопределение конфигурации для локальной разработки
wippy run -o app:db:host=localhost -o app:db:port=5432
Развёртывание в продакшен
# Создание релизного пакета с байткодом
wippy pack release.wapp --bytecode ** --exclude-ns test.**
# Запуск из пакета с лимитом памяти
wippy run release.wapp -m 2G
Отладка
# Выполнение одного процесса
wippy run --exec app:processes/app:worker
# С включённым профилировщиком
wippy run -p -v
# Затем: go tool pprof http://localhost:6060/debug/pprof/heap
Управление зависимостями
# Добавить новую зависимость
wippy add acme/http@latest
# Принудительно перескачать
wippy install --force
# Обновить конкретный модуль
wippy update acme/http
Публикация
# Вход в хаб
wippy auth login
# Проверка модуля
wippy publish --dry-run
# Публикация
wippy publish --version 1.0.0 --release-notes "Initial release"
Файл конфигурации
Создайте .wippy.yaml для постоянных настроек:
logger:
mode: development
level: debug
encoding: console
logmanager:
min_level: -1 # debug
profiler:
enabled: true
address: localhost:6060
override:
app:gateway:addr: ":9090"
app:db:host: "localhost"
Смотрите также
- Конфигурация - Справочник по файлу конфигурации
- Наблюдаемость - Мониторинг и логирование