Дата последнего изменения: 04.05.2022
Предлагаемый вашему вниманию скрипт является больше примером для оптимизации разработки и экономии времени, чем готовым решением. Скрипт разработан сотрудниками ТП "1С-Битрикс" для облегчения рутинных операций по сборке обновлений модулей.
Предположим, что вы уже создали свой модуль и выложили в Marketplace. Теперь у вас стоит задача совершенствовать его и выкладывать обновления.
Возможно для кого-то это покажется простой и интересной задачей, но для других она кажется рутинной и постоянно бегать по директориям в поисках нужного файла и так пофайлово собирать обновления довольно утомительно.
Код модуля:
$arSettings["MODULE_ID"] = 'mail';
Директория относительно корня сайта куда будут складываться обновления:
$arSettings["U_PATH"] = '/iupdate/';
Массив директорий содержимое которого будет прочитано, но глубже чтение не будет проводиться:
$arSettings["DIR_READ_NOFOLLOW"] = array(
$arSettings["MODULE_PATH"].'lang/',
);
Массив директорий, имя которых будет добавлено, но не будет произведено чтение их содержимого:
$arSettings["DIR_NOFOLLOW"] = array(
$arSettings["MODULE_PATH"].'install/db/',
$arSettings["MODULE_PATH"].'install/images/',
$arSettings["MODULE_PATH"].'install/themes/',
);
Массив директорий, которые будут пропущены при чтении (построении списка):
$arSettings["DIR_SKIP"] = array();
Массив игнорируемых имен:
$arSettings["FILE_NAME_SKIP"] = array(
'.',
'..',
'.hg',
'.hgignore',
'.svn',
'.csv',
);
Массив игнорируемых файлов:
$arSettings["FILE_SKIP"] = array(
$arSettings["MODULE_PATH"].'install/version.php',
$arSettings["MODULE_PATH"].'version_control.txt',
);
Массив для updater.php, при наличии необходимых директорий на основании этих данных будет построен файл обновления:
$arSettings["UPDATER_COPY"] = array(
"install/js" => "js/main/core",
"install/components" => "components",
);

