Files
OpenIntegrations/ci/os/internal/Classes/ChangelogGenerator.os
T

54 lines
1.7 KiB
Plaintext

#Использовать "./internal"
Процедура ПриСозданииОбъекта(Знач ДанныеПроекта_ = Неопределено)
Если ДанныеПроекта_ = Неопределено Тогда
ДанныеПроекта = Новый ProjectData;
Иначе
ДанныеПроекта = ДанныеПроекта_;
КонецЕсли;
CommonTools.СообщитьПроцесс("Generating changelog");
ШаблонФайла = "# Changelog
|
|%1";
ШаблонРелиза = "## %1
|
|**%2**
|**%3**
|
|%4
|
|";
ШаблонИзменения = "RU: %1
|EN: %2";
ДанныеИзменений = CommonTools.ПрочитатьФайлJSON("./service/releases.json");
МассивРелизов = Новый Массив;
Для Каждого Релиз Из ДанныеИзменений Цикл
МассивПунктов = Новый Массив;
Пункты = Релиз["changes"];
Для Каждого Пункт Из Пункты Цикл
МассивПунктов.Добавить(СтрШаблон(ШаблонИзменения, Пункт["description_ru"], Пункт["description_en"]));
КонецЦикла;
МассивРелизов.Добавить(СтрШаблон(ШаблонРелиза
, Релиз["title"]
, Релиз["summary_ru"]
, Релиз["summary_en"]
, СтрСоединить(МассивПунктов, Символы.ПС + Символы.ПС)));
КонецЦикла;
CommonTools.ЗаписатьТекст(СтрШаблон(ШаблонФайла, СтрСоединить(МассивРелизов, Символы.ПС)), "./CHANGELOG.md");
КонецПроцедуры