diff --git a/src/Классы/КомандаИнсталл.os b/src/Классы/КомандаИнсталл.os index 9979145..b08d85c 100644 --- a/src/Классы/КомандаИнсталл.os +++ b/src/Классы/КомандаИнсталл.os @@ -18,6 +18,9 @@ Парсер.ДобавитьИменованныйПараметрКоманды(Команда, "-source-dir", "Каталог расположения исходных файлов относительно корня репозитория. По умолчанию "); Парсер.ДобавитьПараметрФлагКоманды(Команда, "-from-path", "Установить с учетом того, что скрипт прописан в path"); Парсер.ДобавитьПараметрФлагКоманды(Команда, "-r", "Устанавливает во вложенные каталоги. Если вложенный каталог не является репозиторием, то он пропускается."); + Парсер.ДобавитьИменованныйПараметрКоманды(Команда, "-ibconnection", "Расположение БД для выполнения операций"); + Парсер.ДобавитьИменованныйПараметрКоманды(Команда, "-u", "Имя пользователя для соединения с базой"); + Парсер.ДобавитьИменованныйПараметрКоманды(Команда, "-p", "Пароль пользователя"); КонецПроцедуры // НастроитьКоманду @@ -55,6 +58,32 @@ КаталогИсходныхФайлов = "src"; КонецЕсли; + + ПараметрыСоединенияСИБ = ""; + + РасположениеИБ = ПараметрыКоманды["-ibconnection"]; + Если ЗначениеЗаполнено(РасположениеИБ) Тогда + + ПараметрыСоединенияСИБИмяПользователя = ""; + ПараметрыСоединенияСИБПарольПользователя = ""; + + ИмяПользователя = ПараметрыКоманды["-u"]; + + Если Не ПустаяСтрока(ИмяПользователя) Тогда + + ПараметрыСоединенияСИБИмяПользователя = СтрШаблон(" -u ""%1""", ИмяПользователя); + + ПарольПользователя = ПараметрыКоманды["-p"]; + + Если Не ПустаяСтрока(ПарольПользователя) Тогда + ПараметрыСоединенияСИБПарольПользователя = СтрШаблон(" -p ""%1""", ПарольПользователя); + КонецЕсли; + + КонецЕсли; + + ПараметрыСоединенияСИБ = СтрШаблон(" -ibconnection ""%1""%2%3", РасположениеИБ, ПараметрыСоединенияСИБИмяПользователя, ПараметрыСоединенияСИБПарольПользователя); + + КонецЕсли; КомандаЗапускаПриложения = Приложение.ИмяПродукта(); Если НЕ ПараметрыКоманды["-from-path"] Тогда @@ -62,7 +91,7 @@ КонецЕсли; КомандаPrecommtHook = СтрШаблон("#!/bin/sh - |%1 precommit ./ -source-dir ""%2""", КомандаЗапускаПриложения, КаталогИсходныхФайлов); + |%1 precommit ./ -source-dir ""%2""%3", КомандаЗапускаПриложения, КаталогИсходныхФайлов, ПараметрыСоединенияСИБ); Лог.Отладка("Команда pre-commit hook %2`%1`", КомандаPrecommtHook, Символы.ПС); Если ПараметрыКоманды["-r"] Тогда