Skip to content

Примеры, инфо метаданных, файл версии, пробелы #41

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 27, 2022
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
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,3 +35,4 @@

Есть бесплатный вебинар [Открытый инструментарий счастливого 1С-ника](https://youtu.be/RuFXBLzch2o)

Посмотрите пример команд в [examples/pacman_make_CF.bat](./examples/pacman_make_CF.bat)
30 changes: 30 additions & 0 deletions examples/HRM.edf
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{1,
{
{1,2,
{"en","Фирма ""1С"""},
{"ru","Фирма ""1С"""}
},
{1,2,
{"en","ЗарплатаИУправлениеПерсоналом"},
{"ru","ЗарплатаИУправлениеПерсоналом"}
},
{#base64:}
},
{1,
{1,0,"ЗарплатаИУправлениеПерсоналомКОРП","Фирма ""1С""","%ВерсияМетаданных%","1c\HRM\%НомерСборки%",
{
{"/",
{1,
{a81674e9-32f0-4ea6-aeae-799e6ab4a48b,"1Cv8.cf - Файл конфигурации",1,00000000-0000-0000-0000-000000000000,"1c\HRM","",124fa494-1559-4495-b896-3f2415d3474c,"1Cv8.cf",1,0,0,1}
},
{0},
{0}
}
}
}
},
{1,124fa494-1559-4495-b896-3f2415d3474c,"CheckoutDir",0,"V8BuildRoot"},
{1,"Полный",0,
{0},00000000-0000-0000-0000-000000000000,"",00000000-0000-0000-0000-000000000000,""},
{0}
}
74 changes: 74 additions & 0 deletions examples/pacman_make_CF.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
:: %1 - Номер версии в хранилище
:: %2 - Наименование направления БД в репозитории (bp, zup)
:: %3 - Название компании, чей репозиторий, если он не общий (someone, anyone)

@echo off
@chcp 65001>nul

:: Установка имен для: каталога хранилища, файла манифеста и каталога создания дистрибутива
@set db_name=%3_%2
@if [%3] == [] (@set db_name=%2)


:: Адрес БД
@set DataBase=/SApp1C\container_%2
:: Авторизация в БД (эти же данные использую для доступа в хранилище)
@set User=AdminUser
@set Pass=AdminPass

@echo.
@echo 1. Установка настроек доступа к БД
@call packman set-database %DataBase% -db-user %User% -db-pwd %Pass%


:: Версия 1С для запуска
@set v8Ver="-v8version 8.3.21.1302"
:: Адрес хранилища
@set RepoUrl=tcp://localhost/%db_name%
:: Файл для записи доп. информации (версия хранилища, коммит)
@set versionfile=.\%db_name%.vers

@echo.
@echo 2. Загрузка конфигурации из хранилища
@call packman load-storage %RepoUrl% -storage-user %User% -storage-pwd %Pass% %v8Ver% -storage-v %1 -details %versionfile%


@echo.
@echo 3. Снятие с поддержки конфигурации в БД
@call packman drop-support %v8Ver%


@echo.
@echo 4. Создание файла поставки
@call packman make-cf %v8Ver%


:: Файл ранее созданного манифеста с помощью обработки из каталога библиотеки ./tools/ПомощникСозданияМанифестаПоставки.epf
@set FileEdf=./%db_name%.edf
:: Каталог для сохранения файлов поставки дистрибутива
@set DistFile=./file_%db_name%
:: Использование файла с версией хранилища (-prop-files) может быть заменено установкой переменной
::@set VPACKMAN_BUILDVARS=НомерВерсииХранилища=%1

@echo.
@echo 5. Создание дистрибутива в виде файлов
@call packman make-dist %FileEdf% -out %DistFile% -files %v8Ver% -prop-files %versionfile%

:: Подсчет hash-суммы файла
@FORFILES /P %DistFile% /S /M *.cf /C "cmd /c CertUtil -hashfile @file MD5 > @file.md5"


:: Каталог для сохранения файлов setup дистрибутива
::@set DistSetup=./setup_%db_name%

::@echo.
::@echo Создание дистрибутива в виде установочного файла
::@call packman make-dist %FileEdf% -out %DistSetup% -setup %v8Ver%


:: Каталог для сохранения архива с файлами поставки дистрибутива
@set DistZip=./zip_%db_name%

@echo.
@echo 6. Создание архива дистрибутива
@call packman zip-dist -in %DistFile% -out %DistZip%
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@
// Прикладной интерфейс

Процедура ЗарегистрироватьКоманду(Знач ИмяКоманды, Знач Парсер) Экспорт

ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды, "Создание архива для удобного тиражирования");

Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-in", "Путь к каталогу дистрибутива");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-name-prefix", "Префикс имени архива, например erp20");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-mdinfo", "Каталог с файлом v8-metadata.info, генерируемым командой make-dist");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "-out", "Выходной каталог с архивом");

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

КонецПроцедуры
Expand All @@ -26,7 +26,7 @@
// ПараметрыКоманды - Соответствие ключей командной строки и их значений
//
Функция ВыполнитьКоманду(Знач ПараметрыКоманды) Экспорт

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

УправлениеКонфигуратором = ОкружениеСборки.ПолучитьКонфигуратор();
Expand Down Expand Up @@ -64,12 +64,12 @@
КонецФункции

Функция СформироватьИмяАрхива(Знач Префикс, Знач ОписаниеМетаданных)

Если Не ЗначениеЗаполнено(Префикс) Тогда
Префикс = ОкружениеСборки.ИмяКаталогаФормированияДистрибутива();
КонецЕсли;

Имя = ?(ПустаяСтрока(Префикс),"", Префикс + "-");
Имя = ?(ПустаяСтрока(Префикс),"", Префикс + "-");
Если ЗначениеЗаполнено(ОписаниеМетаданных) Тогда
Имя = Имя + ОкружениеСборки.ОпределитьСтандартноеИмяКаталогаШаблона(ОписаниеМетаданных);
КонецЕсли;
Expand All @@ -79,7 +79,7 @@
КонецФункции // СформироватьИмяАрхива(Знач Префикс, Знач Версия = "")

Процедура АрхивироватьДистрибутив(Знач ВыходнойКаталог, Знач ИмяАрхива, Знач КаталогДляАрхивации)

Лог.Отладка("ВыходнойКаталог = " + ВыходнойКаталог);
Лог.Отладка("ИмяАрхива = " + ИмяАрхива);
Лог.Отладка("КаталогДляАрхивации = " + КаталогДляАрхивации);
Expand Down
12 changes: 6 additions & 6 deletions src/Классы/КомандаВерсия.os
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@
// Прикладной интерфейс

Процедура ЗарегистрироватьКоманду(Знач ИмяКоманды, Знач Парсер) Экспорт
ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды, "Вывод версии приложения");
Парсер.ДобавитьКоманду(ОписаниеКоманды);
ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды, "Вывод версии приложения");
Парсер.ДобавитьКоманду(ОписаниеКоманды);
КонецПроцедуры

Функция ВыполнитьКоманду(Знач ПараметрыКоманды) Экспорт

Сообщить(ПараметрыСистемы.ВерсияПродукта());

Возврат 0;
Сообщить(ПараметрыСистемы.ВерсияПродукта());

Возврат 0;

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

Процедура ПоказатьСправкуПоКоманде(Знач Парсер, Знач ИмяКоманды)

Парсер.ВывестиСправкуПоКоманде(ИмяКоманды);
Парсер.ВывестиСправкуПоКоманде(ИмяКоманды);

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