Внимание! Начиная с версии ПО 0.2.18 все кастомизации встроенного портала необходимо производить в исходных кодах. После проведения кастомизаций необходимо выполнить сборку и минимизацию исходного кода портала. После сборки и минимизации файлы портала можно поместить в корневую файловую системы для последующей сборки образа внутреннего ПО. Исходный код портала (portal-dev-*.tgz находится в каталоге с текущим релизом на http://soft.infomir.com.ua)

Описание модуля автоматического обновления для версии 0.2.18

Модуль автоматического обновления предназначен для организации автоматического и ручного обновления версий внутреннего ПО по протоколу HTTP с указанного URL.

По умолчанию, если в переменных окружения не указано значение переменной autoupdateURL - модуль автоматического обновления работает по URL производителя!!!

Пример переменной:

autoupdateURL=http://example.com/update_list.txt

autoupdateURL - по этому URL должен находится файл update_list.txt

Этапы процедуры обновления

Выполняется проверка переменной среды autoupdate_cond, состояние «0» - отвечает опции автоматическое обновление, «1» - обновление с подтверждением, «2» - авто-обновление выключено. Если эта переменная установлена в «0» или «1» то инициируется проверка необходимости обновления.

Считывание файла содержащего список всех доступных для обновления версий, сортированных по дате от старшей к новейшей (последняя/новая запись в конце).

Сравнивание даты из самой новой (последней) записи, с датой сборки текущего образа, которая определяется посредством функции stb.RDir(«ImageDate») которая возвращает значение переменной среды Image_Date, в случае если дата сборки текущего образа новее, авто-обновление не инициируется.

Если дата указанная в файле списка обновлений новее чем дата сборки образа прошитого в приставку, выполняется дополнительная проверка даты создания образа лежащего по адресу указанному в текстовом файле обновлений.

Если дополнительная проверка показывает что дата обновления новее чем дата текущего образа, то выполняется проверка типа образа для обновления. Автоматическое обновление на альфа-версии не запускается. Автоматическое обновление на бета-версии запускается только в том случае если опция в настройка внутреннего портала «Обновление на бета-версии» установлена в значение «обновляться», эта опция устанавливает переменную среды «betaupdate_cond». Состояние «1» соответствует значению «обновляться», «0» - «не обновляться». По умолчанию установлено значение «не обновляться».

Если версия типа «release» или «beta» и установлена опция «обновление на бета-версии» и её дата новее чем дата создания текущего образа, то инициируется автоматическое обновление.

Синтаксис файла update_list.txt , пример:

[
{"name":"0.2.14-r3", "url":"http://example.com/250/imageupdate214r3", "type":"release", "date":"26 Nov 2012 23:22:19 GMT+0200", "descr":"Release"},
{"name":"0.2.14-r7", "url":"http://example.com/250/imageupdate214r7", "type":"release", "date":"30 Nov 2012 14:43:29 GMT+0200", "descr":"Release"}
]

где:

name - отображаемое имя (название версии), может содержать любой текст (20 символов);

url - url образа ПО;

type - отображаемый тип релиза (release, beta или alpha);

date - содержит дату создания образа, она должна быть установлена из поля Date из заголовка образа, в следующем формате dd Mon yyyy hh:mm:ss GMT+nnnn, например 10 Nov 2011 20:05:35 GMT+0200;

descr - отображаемый description - краткое описание версии (40 символов);