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

Публикация блюпринта

Где блюпринт может жить публично и что для этого нужно. Коротко: единственный реальный канал — Blueprint Exchange на форуме, остальные пути закрыты не нами.

HACS — невозможно

HACS не поддерживает блюпринты как класс. В списке его категорий (custom_components/hacs/enums.py) есть integration, theme, template, plugin, python_script, appdaemon — блюпринтов там нет, и в каталоге hacs/default нет соответствующего файла, куда можно было бы подать заявку.

Добавить репозиторий вручную как custom repository тоже не выйдет: при добавлении требуется выбрать категорию, а подходящей не существует. По этой же причине из репозитория убран hacs.json — он создавал ложное впечатление, что установка через HACS возможна.

Каталог в ядре Home Assistant — практически закрыт

Отдельного каталога сторонних блюпринтов в home-assistant/core нет. Внутри компонентов лежит курируемый минимум — два блюпринта автоматизации (motion_light, notify_leaving_zone) и один сценарий. Это не каталог, а часть поставки, и PR со сторонним блюпринтом туда не принимают.

Blueprint Exchange — рабочий путь

Раздел Blueprints Exchange на форуме. Правила — в закреплённой теме About Blueprints.

Что нужно для поста:

  • понятный заголовок и описание: что делает блюпринт и какие сущности нужны;
  • кнопка импорта в начале поста — она уже есть, см. ниже;
  • полный YAML блюпринта в блоке кода;
  • теги;
  • проверенный импорт: пройти по собственной кнопке до конца.

Кнопка генерируется на my.home-assistant.io/create-link, формат ссылки:

https://my.home-assistant.io/redirect/blueprint_import/?blueprint_url=<URL-кодированная ссылка на файл>

Английский

Формального требования писать по-английски нет ни в правилах раздела, ни в стандартах документации Home Assistant. Но и форум, и все встроенные блюпринты — англоязычные, так что русские name и description внутри YAML резко сузят аудиторию. Перед публикацией на форуме имеет смысл завести английские названия входов — но это отдельная работа, и делать её нужно вместе с решением о том, как поддерживать два языка.

Совместимость — жёстче, чем кажется

Правило раздела: не переименовывать входы и не менять селекторы у уже опубликованного блюпринта. Каждый новый вход обязан иметь default, иначе у всех, кто уже настроил автоматизацию, она сломается при обновлении.

Это то же требование, что записано в «Как внести изменения» — но после публикации на форуме цена его нарушения перестаёт быть гипотетической.