Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
ФайлПакета = ИмяПакета + ".ospx";
КонецЕсли;

Лог.Информация("Скачиваю файл: " + ФайлПакета);
ОбщегоНазначенияOpm.СообщениеПользователю(Лог, "Скачиваю файл: " + ФайлПакета);

Если ПустаяСтрока(ПутьКФайлуПакета) Тогда
ПутьКФайлуПакета = ВременныеФайлы.НовоеИмяФайла("ospx");
Expand Down Expand Up @@ -287,4 +287,4 @@

КонецПроцедуры

Лог = Логирование.ПолучитьЛог("oscript.app.opm");
Лог = Логирование.ПолучитьЛог("oscript.app.opm.receive");
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@
#Использовать logos
#Использовать tempfiles

// BSLLS:MissingVariablesDescription-off

Перем Лог;
Перем мВременныйКаталогУстановки;

Перем ТекущийРежимУстановкиПакетов;
Перем КэшУстановленныхПакетов;
Expand All @@ -18,12 +19,16 @@
Перем УстанавливатьЗависимостиРазработчика;
Перем СоздаватьФайлыЗапуска;

Процедура ПриСозданииОбъекта(Знач ВходящийРежимУстановкиПакетов = Неопределено, Знач ВходящийКаталогУстановки = Неопределено, Знач ВходящийКаталогУстановкиЗависимостей = Неопределено, Знач ВходящийИмяСервера = "")
// BSLLS:NumberOfOptionalParams-off
Процедура ПриСозданииОбъекта(Знач ВходящийРежимУстановкиПакетов = Неопределено,
Знач ВходящийКаталогУстановки = Неопределено,
Знач ВходящийКаталогУстановкиЗависимостей = Неопределено,
Знач ВходящийИмяСервера = "")

ПутьККаталогуЛокальнойУстановки = ОбъединитьПути(
ТекущийКаталог(),
КонстантыOpm.ЛокальныйКаталогУстановкиПакетов
);
ТекущийКаталог(),
КонстантыOpm.ЛокальныйКаталогУстановкиПакетов
);

Если Не ВходящийРежимУстановкиПакетов = Неопределено Тогда
УстановитьРежимУстановкиПакетов(ВходящийРежимУстановкиПакетов);
Expand Down Expand Up @@ -110,9 +115,9 @@

Если ЗависимостьПакета.ДляРазработки Тогда
Если УстанавливатьЗависимостиРазработчика Тогда
Лог.Информация("<%1> отмечена как зависимость для разработчика. Устанавливаем.", ЗависимостьПакета.ИмяПакета);
Лог.Отладка("<%1> отмечена как зависимость для разработчика. Устанавливаем.", ЗависимостьПакета.ИмяПакета);
Иначе
Лог.Информация("<%1> отмечена как зависимость для разработчика, " +
Лог.Отладка("<%1> отмечена как зависимость для разработчика, " +
"но установка зависимостей для разработчика не активирована. Пропускаем.", ЗависимостьПакета.ИмяПакета);
Возврат;
КонецЕсли;
Expand Down Expand Up @@ -140,10 +145,12 @@
Исключение
ВызватьИсключение ОписаниеОшибки();
КонецПопытки;

МанифестПакета = УстановкаПакета.ПолучитьМанифестПакета();
ИмяПакета = МанифестПакета.Свойства().Имя;

ОбщегоНазначенияOpm.СообщениеПользователю(Лог, "Пакет установлен: %1", ИмяПакета);

ПолныйПутьККаталогуУстановки = Новый Файл(КаталогУстановки).ПолноеИмя;
ИмяКаталогаЛокальныхЗависимостей = КонстантыOpm.ЛокальныйКаталогУстановкиПакетов;

Expand Down Expand Up @@ -181,15 +188,20 @@
УстановленныеПакеты = ПолучитьУстановленныеПакеты();

Для Каждого Зависимость Из Зависимости Цикл
Лог.Информация("Устанавливаю зависимость: " + Зависимость.ИмяПакета);

Лог.Отладка("Требуется зависимость: " + Зависимость.ИмяПакета);

Если Не УстановленныеПакеты.ПакетУстановлен(Зависимость, КаталогУстановкиЗависимостей) Тогда

Лог.Отладка("Устанавливаю зависимость: %1", Зависимость.ИмяПакета);

// скачать
// определить зависимости и так по кругу
УстановитьПакетПоОписанию(Зависимость);
УстановленныеПакеты.Обновить();

Иначе
Лог.Информация("" + Зависимость.ИмяПакета + " уже установлен. Пропускаем.");
Лог.Отладка("" + Зависимость.ИмяПакета + " уже установлен. Пропускаем.");
// считаем, что версия всегда подходит
КонецЕсли;

Expand All @@ -207,10 +219,11 @@
УстановленныеПакеты = ПолучитьУстановленныеПакеты();

Для Каждого Зависимость Из Зависимости Цикл
Лог.Информация("Устанавливаю зависимость: <%1> из каталога локальных зависимостей", Зависимость.ИмяПакета);

Лог.Отладка("Устанавливаю зависимость: <%1> из каталога локальных зависимостей", Зависимость.ИмяПакета);

Если УстановленныеПакеты.ПакетУстановлен(Зависимость, КаталогУстановкиЗависимостей) Тогда
Лог.Информация("<%1> уже установлен. Пропускаем.", Зависимость.ИмяПакета);
Лог.Отладка("<%1> уже установлен. Пропускаем.", Зависимость.ИмяПакета);
Продолжить;
КонецЕсли;

Expand Down Expand Up @@ -258,5 +271,4 @@

КонецФункции

Лог = Логирование.ПолучитьЛог("oscript.app.opm");
//Лог.УстановитьУровень(УровниЛога.Отладка);
Лог = Логирование.ПолучитьЛог("oscript.app.opm.install");
6 changes: 3 additions & 3 deletions src/core/Классы/УстановкаПакета.os
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@

ПутьУстановки = ОбъектКаталогУстановки.ПолноеИмя;

Лог.Информация("Устанавливаю пакет " + ИмяПакета);
ОбщегоНазначенияOpm.СообщениеПользователю(Лог, "Устанавливаю пакет " + ИмяПакета);
РаботаСОписаниемПакета.ПроверитьВерсиюМанифеста(Метаданные);
РаботаСОписаниемПакета.ПроверитьВерсиюСреды(Метаданные);
Если мЗависимостиВРаботе[ИмяПакета] = "ВРаботе" Тогда
Expand Down Expand Up @@ -85,7 +85,7 @@
ВызватьИсключение;
КонецПопытки;

Лог.Информация("Установка завершена");
ОбщегоНазначенияOpm.СообщениеПользователю(Лог, "Установка завершена");

КонецПроцедуры

Expand Down Expand Up @@ -250,7 +250,7 @@
Для Каждого ФайлПриложения Из ОписаниеПакета.ИсполняемыеФайлы() Цикл

ИмяСкриптаЗапуска = ?(ПустаяСтрока(ФайлПриложения.ИмяПриложения), ИмяПакета, ФайлПриложения.ИмяПриложения);
Лог.Информация("Регистрация приложения: " + ИмяСкриптаЗапуска);
ОбщегоНазначенияOpm.СообщениеПользователю(Лог, "Регистрация приложения: " + ИмяСкриптаЗапуска);

ОбъектФайл = Новый Файл(ОбъединитьПути(КаталогУстановки, ФайлПриложения.Путь));

Expand Down
6 changes: 6 additions & 0 deletions src/core/Модули/ОбщегоНазначенияOpm.os
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,12 @@
Возврат ПрименитьПеременныеСредыШаг(Значение, ПеременныеСреды, 0);
КонецФункции

Процедура СообщениеПользователю(Знач Лог, Знач СтрокаСообщения, Знач ПараметрШаблона1 = Неопределено) Экспорт
Сообщить(СтрШаблон(СтрокаСообщения, ПараметрШаблона1));
Лог.Отладка(СтрокаСообщения, ПараметрШаблона1);
КонецПроцедуры


Функция ПрименитьПеременныеСредыШаг(Знач Значение, Знач ПеременныеСреды, Знач Индекс)

ПеременнаяИмя = СтрШаблон("${%1}", ПеременныеСреды[Индекс].Ключ);
Expand Down
Loading