Helgring XF Release Builder — портативная Windows-утилита для автоматизации штатной сборки релизов дополнений XenForo.
Программа подключается к серверу по SSH, проверяет окружение и структуру add-on, запускает официальные CLI-команды XenForo, скачивает созданный ZIP через SFTP и после этого самостоятельно проверяет целостность полученного релиза.
Главная задача проекта — не заменять механизм сборки XenForo, а сделать его удобнее, безопаснее и добавить дополнительный контроль готового архива перед публикацией или установкой.
Подключение к серверу по SSH
Поддерживается авторизация по паролю и по отдельному SSH-ключу с passphrase.
Подтверждение перед запуском
После успешного SSH-подключения программа не начинает сборку автоматически и предлагает выбрать: продолжить работу или закрыть приложение.
Проверка окружения
Проверяются корень XenForo,cmd.php,src/config.php, каталог add-on, PHP CLI и обязательное расширениеmbstring.
Проверка addon.json
Перед сборкой выполняется штатная команда XenForoxf-addon:validate-json.
Официальная сборка XenForo
Релиз создаётся средствами самого XenForo черезxf-addon:build-release.
Поддержка sync-json
При необходимости можно включить выполнениеxf-addon:sync-jsonперед сборкой.
Поддержка build.json
Утилита читаетadditional_filesи учитывает внешние файлы релиза:js,stylesи другие ресурсы.
Поиск внешних ресурсов
В исходниках дополнения автоматически ищутся явные ссылки на внешние JS, CSS, изображения, шрифты, аудио и другие ресурсы.
Контроль чистоты исходника
Сборка блокируется при обнаружении резервных и временных файлов:.bak,.old,.tmp,.swpи других подобных файлов.
Автоматическое скачивание ZIP
После успешной сборки готовый релиз автоматически скачивается с сервера через SFTP.
Независимая проверка готового релиза
После скачивания программа открывает ZIP и проверяет его содержимое независимо от результата команды сборки XenForo.
Проверка hashes.json
Каждый зарегистрированный файл сверяется сhashes.jsonпо алгоритму, совместимому с XenForo.
Контроль состава ZIP
Проверяются отсутствующие и незарегистрированные файлы,additional_files, временные материалы и общая структура релиза.
- Загружает выбранный профиль из
config.json. - Подключается к серверу по SSH.
- Ожидает подтверждения пользователя перед началом работы.
- Проверяет XenForo, PHP CLI и каталог выбранного add-on.
- Анализирует
build.jsonи внешние ресурсы. - Проверяет исходник на резервные и временные файлы.
- Запускает
xf-addon:validate-json. - Запускает штатную сборку
xf-addon:build-release. - Находит созданный ZIP в
_releases. - Скачивает архив на компьютер.
- Проверяет ZIP,
hashes.json, файлы и структуру релиза. - Только после успешной проверки сообщает, что релиз прошёл контроль целостности.
Если add-on использует ресурсы вне своего каталога
src/addons/Vendor/AddOn, они должны быть явно объявлены в build.json.Пример:
{
"additional_files": [
"styles/HelgringMessageNoticePro"
]
}
hashes.json.Helgring XF Release Builder дополнительно проверяет, что найденные внешние ресурсы действительно покрыты правилами
additional_files.Рекомендуемый вариант подключения — отдельный SSH-пользователь и отдельный SSH-ключ с passphrase.
Приватный ключ не входит в распространяемый архив и не должен храниться внутри Portable-папки.
В
config.json сохраняется только путь к ключу:"auth": {
"method": "key",
"key_filename": "~/.ssh/id_ed25519"
}
- Windows x64
- Доступ к серверу XenForo по SSH
- Рабочий PHP CLI, совместимый с установленной версией XenForo
- Доступ пользователя к корню форума и
src/addons - Корректно подготовленный XenForo add-on
- Распакуйте архив в отдельную папку.
- Откройте
config.json. - Укажите SSH-хост, пользователя, корень XenForo, PHP CLI,
addon_idиrelease_dir. - Настройте пароль или SSH-ключ.
- Запустите
Helgring XF Release Builder.exe. - После подключения выберите [1] Продолжить.
- После успешной сборки проверенный ZIP появится в каталоге
downloads.
- Helgring XF Release Builder.exe — готовое приложение
- config.json — публичный шаблон конфигурации
- downloads/ — каталог для скачанных релизов
- docs/ — подробная документация
- screenshots/ — постер, иконка ресурса и скриншоты проекта
- README / CHANGELOG / VERSION / ABOUT_HELGRING — информация о проекте и версии
- Читаемость ZIP-архива
- Наличие и корректность
hashes.json - Совпадение контрольных сумм зарегистрированных файлов
- Наличие всех файлов из
hashes.json - Отсутствие незарегистрированных файлов в
upload - Отсутствие backup/temp-файлов
- Наличие путей из
build.json/additional_files
Финальная логика версии 1.2.3 была проверена на реальной сборке Helgring Message Notice Pro 1.2.1.
Контроль готового архива подтвердил:
- 43/43 зарегистрированных файла успешно подтверждены
- 40 файлов совпали напрямую
- 3 файла корректно подтверждены по правилам хэширования XenForo
- Отсутствующие файлы — 0
- Незарегистрированные файлы — 0
- Backup/temp-файлы — 0
В архив уже включены отдельные инструкции по:
• установке и запуску;
• настройке
config.json;• созданию и использованию SSH-ключа;
• работе с
build.json;• проверке готового релиза;
• конфиденциальности и учётным данным;
• диагностике возможных ошибок.
Полная техническая документация хранится непосредственно в Portable-комплекте проекта.
Helgring XF Release Builder 1.2.3 распространяется как публичный Portable-релиз.
Публичный комплект содержит готовый EXE, шаблон конфигурации и документацию. Реальные серверные данные, пароли, приватные SSH-ключи и личные конфигурации в архив не включаются.
Связанная тема форума предназначена для вопросов, предложений, сообщений об ошибках и обсуждения дальнейшего развития проекта.
Если при работе обнаружена проблема, желательно приложить текст ошибки и указать этап, на котором она возникла: SSH-подключение, проверка окружения, сборка, скачивание или финальный контроль ZIP.