Дата последнего изменения: 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", );