Skip to content

Commit 7db9a9d

Browse files
committed
Merge branch 'develop' of https://github.com/oscript-library/packman into develop
2 parents 526ce63 + 31a7b90 commit 7db9a9d

File tree

2 files changed

+54
-41
lines changed

2 files changed

+54
-41
lines changed

src/Классы/КомандаСобратьИзИсходныхфайлов.os

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99

1010
ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды, "Сборка cf из исходников");
1111
Парсер.ДобавитьПозиционныйПараметрКоманды(ОписаниеКоманды, "src", "Каталог исходников");
12-
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-v8version", "Версия платформы для загрузки исходников");
13-
Парсер.ДобавитьКоманду(ОписаниеКоманды);
12+
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-v8version", "Версия платформы для загрузки исходников");
13+
Парсер.ДобавитьКоманду(ОписаниеКоманды);
1414

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

@@ -22,17 +22,17 @@
2222
Функция ВыполнитьКоманду(Знач ПараметрыКоманды) Экспорт
2323

2424
Каталог = ПараметрыКоманды["src"];
25-
Версия = ПараметрыКоманды["-v8version"];
25+
Версия = ПараметрыКоманды["-v8version"];
2626

27-
СобратьИзИсходниковТекущуюКонфигурацию(Каталог, Версия);
27+
СобратьИзИсходниковТекущуюКонфигурацию(Каталог, Версия);
2828

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

3131
Процедура СобратьИзИсходниковТекущуюКонфигурацию(Знач ВходнойКаталог, Знач ВерсияПлатформы = "")
3232

3333
КаталогВыгрузки = Новый Файл(ВходнойКаталог);
34-
Если КаталогВыгрузки.Существует() = Ложь Тогда
35-
ВызватьИсключение СтроковыеФункции.ПодставитьПараметрыВСтроку("Каталог исходников %1 не найден", КаталогВыгрузки.ПолноеИмя);
34+
Если КаталогВыгрузки.Существует() = Ложь ИЛИ КаталогВыгрузки.ЭтоФайл() Тогда
35+
ВызватьИсключение СтрШаблон("Каталог исходников %1 не найден или является файлом", КаталогВыгрузки.ПолноеИмя);
3636
КонецЕсли;
3737

3838
Конфигуратор = ОкружениеСборки.ПолучитьКонфигуратор();
@@ -43,13 +43,13 @@
4343

4444
ПараметрыЗапуска = Конфигуратор.ПолучитьПараметрыЗапуска();
4545
ПараметрыЗапуска.Добавить("/Visible");
46-
ПараметрыЗапуска.Добавить("/LoadConfigFromFiles """ + ВходнойКаталог + """");
47-
Конфигуратор.ВыполнитьКоманду(ПараметрыЗапуска);
48-
Лог.Информация("Загрузка исходников выполнена." + Конфигуратор.ВыводКоманды());
46+
ПараметрыЗапуска.Добавить(СтрШаблон("/LoadConfigFromFiles ""%1""", ВходнойКаталог));
47+
Конфигуратор.ВыполнитьКоманду(ПараметрыЗапуска);
48+
Лог.Информация("Загрузка исходников выполнена. %1", Конфигуратор.ВыводКоманды());
4949
Конфигуратор.ОбновитьКонфигурациюБазыДанных();
5050
Лог.Информация(Конфигуратор.ВыводКоманды() + "
5151
|Конфигурация базы данных обновлена");
5252

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

55-
Лог = Логирование.ПолучитьЛог(ПараметрыСистемы.ИмяЛогаСистемы());
55+
Лог = Логирование.ПолучитьЛог(ПараметрыСистемы.ИмяЛогаСистемы());

src/Классы/КомандаСоздатьФайлыПоставки.os

Lines changed: 44 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,13 @@
55
// Прикладной интерфейс
66

77
Процедура ЗарегистрироватьКоманду(Знач ИмяКоманды, Знач Парсер) Экспорт
8+
89
ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды, "Создание файлов поставки (cf и cfu)");
910
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-cfu-basedir", "Каталог предыдущих версий для создания CFU (опционально)");
10-
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-update-from", "Перечень версий, через запятую, включаемых в обновление (опционально)");
11+
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-update-from", "Перечень версий, через запятую, включаемых в обновление (опционально)");
1112

1213
Парсер.ДобавитьКоманду(ОписаниеКоманды);
14+
1315
КонецПроцедуры
1416

1517
// Выполняет логику команды
@@ -18,86 +20,97 @@
1820
// ПараметрыКоманды - Соответствие ключей командной строки и их значений
1921
//
2022
Функция ВыполнитьКоманду(Знач ПараметрыКоманды) Экспорт
21-
22-
СоздатьФайлыКонфигурацииПоставщика(ОкружениеСборки.ПолучитьКонфигуратор(), ПараметрыКоманды["-cfu-basedir"], ПараметрыКоманды["-update-from"]);
23+
24+
РазобранныеПараметры = РазобратьПараметры(ПараметрыКоманды);
25+
СоздатьФайлыКонфигурацииПоставщика(ОкружениеСборки.ПолучитьКонфигуратор(), РазобранныеПараметры.КаталогВерсий, РазобранныеПараметры.ПредыдущиеВерсии);
2326

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

2629
Функция СоздатьФайлыКонфигурацииПоставщика(Знач УправлениеКонфигуратором, Знач КаталогВерсий, Знач ПредыдущиеВерсии) Экспорт
27-
ИмяФайлаПоставки = УправлениеКонфигуратором.КаталогСборки() + "\1cv8.cf";
30+
31+
ИмяФайлаПоставки = ОбъединитьПути(УправлениеКонфигуратором.КаталогСборки(), "1cv8.cf");
2832
Параметры = УправлениеКонфигуратором.ПолучитьПараметрыЗапуска();
2933
Параметры.Добавить("/CreateDistributionFiles");
30-
Параметры.Добавить("-cffile """+ИмяФайлаПоставки+"""");
34+
Параметры.Добавить(СтрШаблон("-cffile ""%1""", ИмяФайлаПоставки));
3135

3236
ФайлыПредыдущихВерсий = НайтиФайлыПредыдущихВерсий(КаталогВерсий, ПредыдущиеВерсии);
3337
Если ФайлыПредыдущихВерсий <> Неопределено Тогда
34-
ИмяФайлаОбновления = УправлениеКонфигуратором.КаталогСборки() + "\1cv8.cfu";
35-
Параметры.Добавить("-cfufile """+ИмяФайлаОбновления+"""");
38+
ИмяФайлаОбновления = ОбъединитьПути(УправлениеКонфигуратором.КаталогСборки(), "1cv8.cfu");
39+
Параметры.Добавить(СтрШаблон("-cfufile ""%1""", ИмяФайлаОбновления));
3640

3741
Для Каждого ФайлПредыдущейВерсии Из ФайлыПредыдущихВерсий Цикл
38-
Лог.Информация("Добавляю обновление из файла: " + ФайлПредыдущейВерсии.ПолноеИмя);
39-
Параметры.Добавить("-f """ + ФайлПредыдущейВерсии.ПолноеИмя + """");
42+
43+
Лог.Информация("Добавляю обновление из файла: %1", ФайлПредыдущейВерсии.ПолноеИмя);
44+
Параметры.Добавить(СтрШаблон("-f ""%1""", ФайлПредыдущейВерсии.ПолноеИмя));
45+
4046
КонецЦикла;
4147

4248
КонецЕсли;
4349

4450
УправлениеКонфигуратором.ВыполнитьКоманду(Параметры);
4551
Сообщить(УправлениеКонфигуратором.ВыводКоманды());
46-
47-
Возврат Новый Структура("ИмяФайлаПоставки,ИмяФайлаОбновления", ИмяФайлаПоставки, ИмяФайлаОбновления);
48-
52+
53+
Возврат Новый Структура("ИмяФайлаПоставки, ИмяФайлаОбновления", ИмяФайлаПоставки, ИмяФайлаОбновления);
54+
4955
КонецФункции // СоздатьФайлыКонфигурацииПоставщика()
5056

5157
Функция НайтиФайлыПредыдущихВерсий(Знач КаталогПредыдущихВерсий, Знач ВерсииОбновления)
5258

5359
Если КаталогПредыдущихВерсий = Неопределено Тогда
60+
5461
Возврат Неопределено;
62+
5563
КонецЕсли;
5664

5765
Каталог = Новый Файл(КаталогПредыдущихВерсий);
58-
Если Не Каталог.Существует() Тогда
66+
Если Не Каталог.Существует() ИЛИ Каталог.ЭтоФайл() Тогда
67+
5968
Возврат Неопределено;
69+
6070
КонецЕсли;
6171

6272
ФайлыКонфигураций = Новый Массив;
6373

6474
Для Каждого Версия Из ВерсииОбновления Цикл
75+
6576
КаталогВерсии = Новый Файл(ОбъединитьПути(КаталогПредыдущихВерсий, Версия));
6677
Если Не КаталогВерсии.Существует() Тогда
78+
6779
Текст = СтрШаблон("Каталог версии %1 не найден", КаталогВерсии.ПолноеИмя);
6880
Лог.Ошибка(Текст);
6981
ВызватьИсключение Текст;
82+
7083
КонецЕсли;
7184

72-
ФайлыКонфигурацийВерсии = НайтиФайлы(КаталогВерсии, "*.cf", Истина);
85+
ФайлыКонфигурацийВерсии = НайтиФайлы(КаталогВерсии.ПолноеИмя, "*.cf", Истина);
7386
Для Каждого ФайлВерсии Из ФайлыКонфигурацийВерсии Цикл
87+
7488
ФайлыКонфигураций.Добавить(ФайлВерсии);
89+
7590
КонецЦикла;
91+
7692
КонецЦикла;
7793

7894
Если ФайлыКонфигураций.Количество() Тогда
95+
7996
Возврат ФайлыКонфигураций;
80-
Иначе
81-
Возврат Неопределено;
97+
8298
КонецЕсли;
99+
100+
Возврат Неопределено;
101+
83102
КонецФункции
84103

85104
Функция РазобратьПараметры(Знач ПараметрыКоманды) Экспорт
86-
87-
Результат = Новый Структура;
88-
Результат.Вставить("КаталогВерсий", ПараметрыКоманды["-cfu-basedir"]);
89-
90-
МассивВерсий = СтроковыеФункции.РазложитьСтрокуВМассивПодстрок(
91-
Строка(ПараметрыКоманды["-update-from"]),
92-
",",
93-
Ложь,
94-
Истина);
95-
96-
Результат.Вставить("ПредыдущиеВерсии", МассивВерсий);
97-
98-
99-
Возврат Результат;
100-
105+
106+
МассивВерсий = СтрРазделить(Строка(ПараметрыКоманды["-update-from"]), ",", Истина);
107+
108+
Результат = Новый Структура;
109+
Результат.Вставить("КаталогВерсий", ПараметрыКоманды["-cfu-basedir"]);
110+
Результат.Вставить("ПредыдущиеВерсии", МассивВерсий);
111+
112+
Возврат Результат;
113+
101114
КонецФункции
102115

103116
//////////////////////////////////////////////////////////////////////////

0 commit comments

Comments
 (0)