Перейти к содержимому
Загрузка статьи…

Трек Вынос фронтовых библиотек в монорепу и автопубликация в npm через release-please · Модуль №2

← Обзор трека

Первоначальная настройка ​

Новые имена сначала надо зарегистрировать. Разовый bootstrap и следующий автоматический релиз — два отдельных шага плана CDD.

Разовый bootstrap ​

  1. Создаём npm-организацию cdd-team, проверяем права участников на первичную публичную публикацию и доступность имён @cdd-team/react, @cdd-team/zustand, @cdd-team/openapi. Меняем имена, внутренние ссылки и repository.url на git+https://github.com/Cringe-Driven-Development-Team/frontend-packages.git; repository.directory указывает каталог соответствующего пакета.

  2. Сохраняем стартовые версии из таблицы ниже. Bun устанавливает зависимости, запускает проверки и собирает пакеты; проверяем архивы и локальную интеграцию.

  3. Участник с npm-правами один раз вручную публикует подготовленные пакеты публично через npm publish --access public из каталога каждого пакета после интерактивной авторизации npm и требуемой проверки 2FA. React публикуется раньше Zustand. Это регистрация новых имён; здесь не заявляется, что bootstrap уже выполнен.

  4. Создаём исходные GitHub Releases с тегами на том коммите, из которого собраны опубликованные архивы. Для предложенных компонентов react, zustand, openapi и include-component-in-tag: true используем следующие точки отсчёта:

    Путь в manifest/configВерсияИсходный тег GitHub Release
    packages/react1.2.0react-v1.2.0
    packages/zustand1.0.0zustand-v1.0.0
    packages/openapi0.2.0openapi-v0.2.0

    Эти же версии записываем в .release-please-manifest.json; пути, component и формат тегов согласуем с release-please-config.json. Одной ручной публикации в npm недостаточно для корректной точки отсчёта release-please.

Настройка автоматического выпуска ​

  1. На странице каждого зарегистрированного пакета задаём Trusted Publisher: owner Cringe-Driven-Development-Team, repository frontend-packages, workflow filename release.yml, environment только при использовании, Allow npm publish. Подтверждаем новое доверие успешным workflow-выпуском в срок первичной проверки доверия; если срок прошёл, настройку пересоздаём.
  2. Следующий fix идёт через feature PR → release PR → workflow. Например, исправление React выпускает 1.2.1 и зависимый Zustand 1.0.1; это проверка автоматического OIDC-релиза после ручного bootstrap. OpenAPI остаётся 0.2.0.

Bun остаётся инструментом установки, тулинга, тестов и сборки. Для OIDC-публикации используем npm CLI от 11.5.1 и Node.js от 22.14.0 на GitHub-hosted runner; постоянный npm-секрет для обычного выпуска не добавляем. Настройка npm-организации и публикация пакетов — будущая реализация трека, а не действие этой документации.