Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
0d5f2a6
Небольшой рефакторинг
khorevaa Jan 16, 2018
217286d
Только переименования
khorevaa Jan 17, 2018
d3c92de
Правильный рефакторинг
khorevaa Jan 17, 2018
35760b0
Мелкие правки и оптимизация
khorevaa Jan 17, 2018
e570a01
Урощена логика работы с зеркалами. Работа происходит через класс Мене…
khorevaa Jan 17, 2018
94ca3bb
Переименование. Исключена логика работы с файлом настройки. Добавлена…
khorevaa Jan 17, 2018
fae2265
Корректировка под менеджерПолученияПакетов
khorevaa Jan 17, 2018
d128af4
Перенаправление на нужный модуль Настроек opm
khorevaa Jan 17, 2018
06ab240
Добавлен импорт библиотеки в корень
khorevaa Jan 17, 2018
89f39dd
Отделена логика настройки приложения и библиотеки
khorevaa Jan 17, 2018
e91131d
Исправление ошибки и логи
khorevaa Jan 17, 2018
f367edc
Исправления зациклирования. И чистка модуля
khorevaa Jan 17, 2018
03e0571
Поправил тесты
khorevaa Jan 17, 2018
1c77107
Починил команду list
khorevaa Jan 17, 2018
5af5241
Исправление ошибки. И преобразование к числу.
khorevaa Jan 17, 2018
d3a5f30
Убрал вывод логов
khorevaa Jan 17, 2018
1530047
Merge remote-tracking branch 'github/develop' into feature/ref
khorevaa Jan 17, 2018
09f07ae
Починил смену текущего каталога
khorevaa Jan 17, 2018
cb65e74
Опечатка `ы`
khorevaa Jan 17, 2018
3916c9d
Сделал параметр целевой каталог - необязательным
khorevaa Jan 18, 2018
ac07b97
Убрал, неопределено, параметр теберь необязательный, перенаправил на …
khorevaa Jan 18, 2018
a056a38
Лишняя скобочка
khorevaa Jan 18, 2018
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
2 changes: 1 addition & 1 deletion packagedef
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@

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

ПутьКСценариюКонстант = ОбъединитьПути(ТекущийСценарий().Каталог, "src", "Модули", "КонстантыOpm.os");
ПутьКСценариюКонстант = ОбъединитьПути(ТекущийСценарий().Каталог, "src/core", "Модули", "КонстантыOpm.os");
Константы_ЛокальнаяВерсия = ЗагрузитьСценарий(ПутьКСценариюКонстант);

Описание.Имя("opm")
Expand Down
1 change: 1 addition & 0 deletions src/opm.os → src/cmd/opm.os
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
///////////////////////////////////////////////////////////////////////

#Использовать cmdline
#Использовать "../core"
#Использовать "."

Перем Лог;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#Использовать logos
#Использовать "../../core"

Перем Лог;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@
// ПараметрыКоманды - Соответствие ключей командной строки и их значений
//
Функция ВыполнитьКоманду(Знач ПараметрыКоманды) Экспорт
НастройкиПриложенияOpm.СохранитьНастройки(ПараметрыКоманды);

ПараметрыПриложенияOpm.ЗаполнитьНастройкиИзПараметров(ПараметрыКоманды);
ПараметрыПриложенияOpm.СохранитьТекущиеНастройки();

Возврат 0;

КонецФункции
Original file line number Diff line number Diff line change
Expand Up @@ -25,31 +25,32 @@

Процедура УстановитьПакет(Знач ЗначенияПараметров) Экспорт

Установщик = Новый УстановкаПакета;
РежимУстановки = РежимУстановкиПакетов.Глобально;

Если ЗначенияПараметров["-l"] = Истина Тогда
РежимУстановки = РежимУстановкиПакетов.Локально;
КонецЕсли;

Если ЗначенияПараметров["-l"] Тогда
Если ЗначениеЗаполнено(ЗначенияПараметров["-dest"]) Тогда
Лог = Логирование.ПолучитьЛог(ПараметрыСистемыOpm.ИмяЛогаСистемы());
Лог.Предупреждение("При локальной установке параметр -dest игнорируется");
КонецЕсли;
Установщик.УстановитьРежимУстановкиПакетов(РежимУстановкиПакетов.Локально);
Иначе
Установщик.УстановитьРежимУстановкиПакетов(РежимУстановкиПакетов.Глобально);
ЦелевойКаталог = Неопределено;

Если ЗначениеЗаполнено(ЗначенияПараметров["-dest"]) Тогда
Установщик.УстановитьЦелевойКаталог(ЗначенияПараметров["-dest"]);
КонецЕсли;
Если ЗначениеЗаполнено(ЗначенияПараметров["-dest"]) Тогда
ЦелевойКаталог = ЗначенияПараметров["-dest"];
КонецЕсли;

Если РежимУстановки = РежимУстановкиПакетов.Локально Тогда
Лог = Логирование.ПолучитьЛог(ПараметрыСистемыOpm.ИмяЛогаСистемы());
Лог.Предупреждение("При локальной установке параметр -dest игнорируется");
ЦелевойКаталог = Неопределено;
КонецЕсли;

Если ЗначенияПараметров["-all"] Тогда
Установщик.УстановитьВсеПакетыИзОблака();
РаботаСПакетами.УстановитьВсеПакетыИзОблака(РежимУстановки, ЦелевойКаталог);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Можешь обрисовать разницу между новым модулем и классом, который вызывается из этого модуля? Когда какой нужно использовать и чем они "глобально" отличаются?

Copy link
Member Author

@khorevaa khorevaa Jan 18, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

УстановкаПакета - отвечает только за установку (без зависимостей)
МенеджерУстановкиПакетов - обвязка над классом УстановкаПакета и установка зависимостей, здесь предполагается определение куда и как ставить пакет и его зависимости.
РаботаСПакетами - соединение классов МенеджерПолученияПакетов и МенеджерУстановкиПакетов, реализация предопределенных функций установки пакетов для вызова из приложения и реализация части общих функций, для классов, обеспечивает кеш класса МенеджерУстановкиПакетов при установки множества пакетов из Хаба
МенеджерПолученияПакетов - обеспечивает кеш и получение пакетов с СервераПакетов, при чем кеш храниться для каждого сервера отдельно (например, есть сервер dev - пакетов, для этого можно просто его добавить в конфиг.
Использование по вкусу - Можно через РаботаСПакетами, если не требуется тонкой настройки куда и что ставить. Класс МенеджерУстановкиПакетов - для тонкой настройки установки.
@artbear @nixel2007

ИначеЕсли ЗначенияПараметров["-f"] = Неопределено И ЗначенияПараметров["ИмяПакета"] = Неопределено Тогда
Установщик.УстановитьПакетыПоОписаниюПакета();
РаботаСПакетами.УстановитьПакетыПоОписаниюПакета(РежимУстановки, ЦелевойКаталог);
ИначеЕсли ЗначенияПараметров["-f"] <> Неопределено Тогда
Установщик.УстановитьПакетИзАрхива(ЗначенияПараметров["-f"]);
РаботаСПакетами.УстановитьПакетИзФайла(ЗначенияПараметров["-f"], РежимУстановки, ЦелевойКаталог);
Иначе
Установщик.УстановитьПакетИзОблака(ЗначенияПараметров["ИмяПакета"]);
РаботаСПакетами.УстановитьПакетИзОблака(ЗначенияПараметров["ИмяПакета"], РежимУстановки, ЦелевойКаталог);
КонецЕсли;

КонецПроцедуры
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@

Если ЗначенияПараметров["-remote"] Тогда
ТекстСообщения = СтрШаблон("Пакеты в хабе:");
КэшПакетовВХабе = Новый КэшПакетовХаба();
УстановленныеПакеты = КэшПакетовВХабе.ПолучитьПакетыХаба();
МенеджерПолучения = Новый МенеджерПолученияПакетов();
УстановленныеПакеты = МенеджерПолучения.ПолучитьДоступныеПакеты();
Иначе

ПутьККаталогуПакетов = ПолучитьЗначениеСистемнойНастройки("lib.system");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
Парсер.ДобавитьПараметрФлагКоманды(ОписаниеКоманды, "-all", "Обновить все установленные пакеты");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-f", "Указать файл из которого нужно установить пакет");
Парсер.ДобавитьПозиционныйПараметрКоманды(ОписаниеКоманды, "ИмяПакета", "Имя пакета в хабе. Чтобы установить конкретную версию, используйте ИмяПакета@ВерсияПакета");
Парсер.ДобавитьПараметрФлагКоманды(ОписаниеКоманды, "-l", "Обновление пакета в локальном каталоге oscript_modules");
Парсер.ДобавитьКоманду(ОписаниеКоманды);

КонецПроцедуры
Expand All @@ -25,13 +26,18 @@

Процедура ОбновитьПакет(Знач ЗначенияПараметров) Экспорт

Установщик = Новый УстановкаПакета;
РежимУстановки = РежимУстановкиПакетов.Глобально;

Если ЗначенияПараметров["-l"] = Истина Тогда
РежимУстановки = РежимУстановкиПакетов.Локально;
КонецЕсли;

Если ЗначенияПараметров["-all"] Тогда
Установщик.ОбновитьУстановленныеПакеты();
РаботаСПакетами.ОбновитьУстановленныеПакеты(РежимУстановки);
ИначеЕсли ЗначенияПараметров["-f"] <> Неопределено Тогда
Установщик.УстановитьПакетИзАрхива(ЗначенияПараметров["-f"]);
РаботаСПакетами.УстановитьПакетИзФайла(ЗначенияПараметров["-f"], РежимУстановки);
Иначе
Установщик.ОбновитьПакетИзОблака(ЗначенияПараметров["ИмяПакета"]);
РаботаСПакетами.ОбновитьПакетИзОблака(ЗначенияПараметров["ИмяПакета"], РежимУстановки);
КонецЕсли;

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