Сайт ↗
Разделы документации
CLI интерфейс · 0.8.1

CLI: создать проект и открыть редактор

Параметры init, запуск Generator UI и действия генератора с Git.

На этой странице

init создаёт описание нового проекта в выбранном каталоге. Приложение при этом не запускается, серверы для production не настраиваются. После init можно описывать модель в UI или CLI, а исходники получить позже через Generate.

Создание проекта без диалога

admingen-cli --path ./docs-demo init \
  --name docs-demo --title "База знаний" \
  --module example.com/docs-demo --generator-version 0.8.1 \
  --deployment --ci-provider gitlab --media-storage local

В примере включены deployment и GitLab CI: соответствующие файлы появятся после Generate. Для простого локального проекта эти параметры можно опустить. Выбор s3 вместо local задаёт тип медиахранилища; секреты доступа на этом этапе не передаются.

В интерактивном режиме init предлагает значения и запрашивает подтверждение. В скрипте передавайте необходимые параметры явно и останавливайте дальнейшие действия при ошибке. Без TTY команда не должна ждать бесконечного ответа.

Не путайте два вида модуля: example.com/docs-demo — путь Go-модуля всего приложения, а content — группа сущностей в меню, которую вы создадите отдельно.

Открытие проекта в браузере

admingen-cli --path ./docs-demo doctor
admingen --path ./docs-demo start --addr 127.0.0.1:8080 --open=false

doctor помогает проверить, что выбран правильный каталог. С --open=false браузер нужно открыть самостоятельно по адресу из команды или вывода. Для локального API без встроенной страницы используйте admingen-cli ... serve.

Если порт занят, остановите прежний процесс или укажите другой порт. Это порт генератора, а не backend созданного приложения.

Изменения Project settings и Deployment сохраняют настройки в манифесте. Выбор CI-провайдера не создаёт удалённый репозиторий. Файлы обновляются только при Generate. Старый контракт проекта отклоняется до изменений; замена одного номера версии не обновляет проект.

Доступные команды

Команда Вызов
doctor admingen-cli doctor [flags]
init admingen-cli init [flags]
serve admingen-cli serve [flags]
start admingen start [flags]
ui admingen ui [flags]

Общие --path, --output и --help описаны в основах CLI. Аргументы в угловых скобках заменяйте своими значениями.

Параметры init и запуска

Параметр Где применяется По умолчанию Смысл
--ci-provider VALUE init пустая строка Выбор CI: none, gitlab или github. None оставляет ручной выпуск через deploy/control.
--deployment init false Включить файлы серверного развёртывания; CI-файлы создаются только для выбранного GitLab/GitHub.
--generator-version VALUE init версия сборки бинарника (dev в сборке без заданной версии) Значение generatorVersion в manifest. В примере задаётся 0.8.1; это не команда обновления старого контракта.
--media-storage VALUE init "local" Место хранения изображений: local — файловая система приложения, s3 — объектное хранилище. Ключи доступа настраиваются при запуске приложения.
--module VALUE init пустая строка Для init — путь Go-модуля; для сущности/проекции — существующий модуль навигации. В update означает перенос.
--name VALUE init пустая строка Техническое имя нового проекта.
--title VALUE init пустая строка Читаемое название проекта или поля.
--addr VALUE serve, start, ui "127.0.0.1:8080" Адрес и порт локального HTTP-сервера.
--open start, ui true Открыть браузер после готовности сервера.

Для новых команд используйте start: ui оставлен как устаревший совместимый alias. start принимает loopback-адрес. Чтобы запуск не запрашивал уточнений, явно передайте --path, --addr и --open, как в примере.

Что init делает с Git

После успешного создания модели генератор проверяет, находится ли каталог в Git-репозитории. Если да, вложенный репозиторий не создаётся. Если нет, выполняется git init.

Ошибка Git выводится предупреждением и не отменяет созданный манифест. Генератор не добавляет файлы в staging, не создаёт commit и не настраивает remote.

Текущий контракт проекта и lock — 0.8.1. --generator-version записывает версию в модель и не переносит старый контракт. Последующие настройки меняйте в Project settings или в манифесте с проверкой через plan.

Deployment без обязательного CI и registry

Для ручной сборки на одном VPS можно создать проект так:

admingen-cli --path ./example-project init   --name example_project --module example.com/example-project   --deployment --ci-provider none --server-layout single   --delivery source --backup local --media-storage local
Параметр init Значения
--server-layout single, split
--delivery source, archive, registry
--backup none, local, s3
--registry-provider custom, gitlab, ghcr, dockerhub
--backend-repository, --admin-repository, --ops-repository Полные репозитории трёх образов на одном registry-хосте

Source допускается для single и CI provider none. Archive/registry поддерживают single/split и ручной выпуск либо CI. Пароли, SSH-ключи и параметры доступа к S3 через init не передаются. После init откройте Deployment → Deployment environments, создайте профиль с доменами и путями, сохраните и выполните Generate. Примеры JSON остаются альтернативой для ручного управления конфигурацией. Наличие файлов ещё не означает, что приложение развёрнуто.