Перейти к содержанию

exordos init

Обзор#

exordos init платформенизирует существующий проект — он подготавливает всё, что нужно платформе Exordos Core для сборки, публикации и развёртывания его как элемента.

Выполнение команды выполняет следующие шаги:

  1. Определение типа проекта — идентифицирует runtime и фреймворк (Python, Node.js, generic и т.д.) или просит вас выбрать один.
  2. Настройка манифеста — собирает метаданные и требования к инфраструктуре (базы данных, сервисы и т.д.) для создания файла манифеста.
  3. Настройка CI/CD — генерирует конфигурацию конвейера для вашей CI/CD системы, чтобы сборки и развёртывания были автоматизированы с первого дня.
  4. Вывод резюме — сообщает обо всём, что было создано или изменено, чтобы вы точно знали, что изменилось.
exordos init [OPTIONS]

Ключевые опции:

Опция Описание
--project-dir PATH Целевая директория (по умолчанию: текущая директория)
--force Перезаписать ранее сгенерированные файлы

Все остальные параметры собираются интерактивно через мастер.


Интерактивный режим#

exordos init работает как интерактивный мастер — он проводит вас через серию вопросов и принимает решения на основе ваших ответов. Вам не нужно знать опции заранее; мастер адаптирует свои вопросы в зависимости от выбранного типа проекта.

Подробнее о мастере →


Начало работы#

Поддерживаемые типы проектов#

Когда мастер спрашивает "Выберите тип проекта", выберите тот, который соответствует вашему стеку:

Тип Описание
Python Python-приложение. Поддерживает менеджеры пакетов pip и uv. Опционально устанавливает PostgreSQL, Redis и сервисы systemd.
Node.js Node.js-приложение. Опционально устанавливает Nginx, PM2 и Redis.
Generic Любой другой runtime или язык. Используйте это, когда ни один из вышеперечисленных не подходит — вы настроите шаги сборки и развёртывания вручную.

Если вы не уверены, выберите Generic и уточните конфигурацию позже.


Манифест#

Во время инициализации мастер генерирует манифест — YAML-файл, который сообщает платформе, что нужно вашему элементу: его зависимости, ресурсы инфраструктуры (базы данных, очереди и т.д.) и конфигурацию runtime.

Вас попросят предоставить:

  • Краткое описание элемента (--manifest-description).
  • Тип конструктора манифеста — шаблон, используемый для генерации манифеста (--manifest-constructor).
  • Настройки PostgreSQL, если ваш проект использует базу данных (--enable-pgsql, --pgsql-*).

Сгенерированный манифест — это отправная точка. Вы можете отредактировать его вручную в любое время.

Полный справочник по манифестам →


CI/CD#

exordos init может генерировать готовую конфигурацию конвейера CI/CD (--ci-cd). В настоящее время поддерживаются:

  • GitLab CI — создаёт .gitlab-ci.yml, который запускает exordos build, exordos push и exordos deploy на каждом релевантном событии.
  • GitHub Actions — создаёт директорию .github/workflows/ с workflow для сборки, публикации и развёртывания.

Резюме#

После завершения работы мастера exordos init выводит резюме всего, что было создано или изменено — файлы манифеста, конфигурацию CI/CD и любые другие сгенерированные артефакты. Просмотрите его, чтобы убедиться, что настройка соответствует вашим ожиданиям, прежде чем переходить к exordos build.


Устранение неполадок#

Если вы столкнулись с проблемами во время инициализации — такими как ошибки определения типа проекта, ошибки генерации манифеста или проблемы конфигурации CI/CD — обратитесь к Руководству по устранению неполадок для подробных решений и типичных исправлений.