Сборка обновлений
Обязательно ознакомиться с документацией по обновлениям в курсе для разработчиков.
Последовательность действий
- Меняем в
install/version.phpдату на текущую, номер версии на следующую - Коммитим изменения с сообщением «Номер версии»
- Отмечаем последний коммит с измененным номером версии тегом с номером версии (вида
0.0.1) - Пушим изменения на сервер.
- На портале в группе решения, вкладка
Marketplaceскачиваем архив обновления
Архив содержит измененные файлы, сгенерированныйupdater.php, миграцию таблиц БД - Проверяем всё ли правильно сгенерилось в
updater.php, при необходимости дополняем его- если в репозитории есть код в папке
/.updates/.next/, включаем его в обновление и переносим (обязательно с помощьюgit mv) содержимое/.updates/.next/в/.updates/<номер_версии>/
- если в репозитории есть код в папке
- Заливаем архив обновления в личном кабинете Marketplace (как
alphaилиbetaчтобы его не могли поставить клиенты) - Тестируем установку обновления на своей копии старой версии решения (для
alpha— сNFR-ключом) - При необходимости исправляем обновление одним из следующих способов:
- новыми коммитами в гит и последующим исправлением обновления (см. #Исправления)
- внесением правоки в файлы сгенерированного архива обновления (дублируем их коммитами для будущей версии)
- выпускаем еще одну версию с исправлениями
- После финальной проверки публикуем стабильную версию обновления:
- меняем статус обновления на стабильное
- скачиваем с портала архив
.last_versionи загружаем его на форме редактирования решения в личном кабинете Marketplace
Исправления
Когда необходимо добавить новые коммиты с исправлениями в версию или по другой причине переставить тег с номером версии на другой коммит, мы вносим исправления в существующую версию.
Важно! Нельзя вносить изменения в версию, которую кто-то уже успел установить.
В таких случаях исправления нужно вносить только в виде новой версии.Проверить кто устанавливал обновление можно в личном кабинете Marketplace пункт Лог обновлений в контекстном меню решения.
- Удаляем версию локально
git tag -d <номер_версии> - Удаляем версию на сервере (если уже сделали
push)git push origin master :<номер_версии> - На вкладке
Marketplaceна портале нажимаем кнопку Обновить список версий - Повторяем обычную последовательность выпуска обновления