Skip to content

Commit

Permalink
fix: Реализован пропуск версий, не содержащих дистрибутив (например, …
Browse files Browse the repository at this point in the history
…отозванные релизы).
  • Loading branch information
arkuznetsov committed Apr 16, 2022
1 parent 9208b4b commit 4cc9e87
Showing 1 changed file with 17 additions and 12 deletions.
29 changes: 17 additions & 12 deletions src/Классы/ЗагрузчикРелизов1С.os
Original file line number Diff line number Diff line change
Expand Up @@ -476,7 +476,9 @@
Лог.Информация("[%1]: Загрузка версии %2 из %3", ТипЗнч(ЭтотОбъект), ОбработаноВерсий + 1, ОграничениеКоличества);
КонецЕсли;

ОбработатьВерсиюПриложения(ТекВерсия, Обозреватель);
Если НЕ ОбработатьВерсиюПриложения(ТекВерсия, Обозреватель) Тогда
Продолжить;
КонецЕсли;

ОбработаноВерсий = ОбработаноВерсий + 1;

Expand Down Expand Up @@ -796,17 +798,20 @@
// Процедура - выполняет загрузку и распаковку версии приложения
//
// Параметры:
// ОписаниеВерсии - Структура - описание версии приложения
// ОписаниеВерсии - Структура - описание версии приложения
// *Идентификатор - Строка - идентификатор приложения
// *Имя - Строка - имя приложения
// *Версия - Строка - номер версии приложения
// *Дата - Дата - дата версии приложения
// *ПолныйДистрибутив - Булево - версия содержит полный дистрибутив
// *ДистрибутивОбновления - Булево - версия содержит дистрибутив обновления
// *ВерсииДляОбновления - Массив(Строка) - массив номеров версий, для которых преднозначено обновление
// Обозреватель - Объект - экземпляр класса "Обозреватель1С"
// Обозреватель - Объект - экземпляр класса "Обозреватель1С"
//
// Возвращаемое значение:
// Булево - Истина - версия приложения успешно обработана
//
Процедура ОбработатьВерсиюПриложения(ОписаниеВерсии, Обозреватель = Неопределено)
Функция ОбработатьВерсиюПриложения(ОписаниеВерсии, Обозреватель = Неопределено)

Если Обозреватель = Неопределено Тогда
Обозреватель = Новый ОбозревательСайта1С(ИмяПользователя, ПарольПользователя);
Expand All @@ -819,7 +824,11 @@
ИначеЕсли ОписаниеВерсии.ДистрибутивОбновления Тогда
ШаблонСсылки = "Дистрибутив обновления$";
Иначе
Возврат;
Лог.Информация("[%1]: Не найдена ссылка на дистрибутив ""%2"" версии %3.",
СокрЛП(ЭтотОбъект),
ОписаниеВерсии.Имя,
ОписаниеВерсии.Версия);
Возврат Ложь;
КонецЕсли;

СписокСсылок = Обозреватель.ПолучитьСсылкиДляЗагрузки(ОписаниеВерсии.Путь, ШаблонСсылки);
Expand All @@ -833,12 +842,6 @@

ФайлАрхива = Новый Файл(ИмяФайлаАрхива);

ФайлОписания = Новый Файл(ОбъединитьПути(ФайлАрхива.Путь, "description.json"));
СуществующееОписание = Новый Структура("Имя, Версия, Дата");
Если ФайлОписания.Существует() Тогда
СуществующееОписание = Служебный.ОписаниеРелиза(ФайлОписания.ПолноеИмя);
КонецЕсли;

Распаковщик.ОбеспечитьКаталог(ИмяФайлаАрхива, Истина);

Лог.Информация("[%1]: Начало загрузки ""%2"", версия ""%3"": %4 (%5) в файл %6.",
Expand Down Expand Up @@ -907,7 +910,9 @@
КонецЕсли;
КонецЦикла;

КонецПроцедуры // ОбработатьВерсиюПриложения()
Возврат Истина;

КонецФункции // ОбработатьВерсиюПриложения()

// Процедура - записывает описание версии в файл JSON
//
Expand Down

0 comments on commit 4cc9e87

Please sign in to comment.