1
0
mirror of https://github.com/Untru/gitmanager.git synced 2025-08-09 21:37:16 +02:00

Merge pull request #53 from Untru/develop

Develop
This commit is contained in:
Pavel
2025-08-01 00:19:09 +03:00
committed by GitHub
49 changed files with 5140 additions and 738 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
**/.DS_Store

View File

@@ -18,4 +18,26 @@
У службы под которой запужена 1с должны быть права на шару папки
![alt text](images/image-5.png)
Необходимо запустить RAC как службу
``` bat
@echo off
rem %1 - полный номер версии 1С:Предприятия
set SrvUserName=.\USR1CV8
set SrvUserPwd="c2o3"
set CtrlPort=1540
set AgentName=localhost
set RASPort=1545
set SrvcName="1C:Enterprise 8.3 Remote Server 26"
set BinPath="\"C:\Program Files\1cv8\8.3.26.1540\bin\ras.exe\" cluster --service --port=%RASPort% %AgentName%:%CtrlPort%"
set Desctiption="1C:Enterprise 8.3 Remote Server 26"
sc stop %SrvcName%
sc delete %SrvcName%
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption%
```
Для вывода логов
set LOGOS_CONFIG=logger.oscript.lib.commands=DEBUG;
ОГРАНИЧЕНИЯ !!! Некоторый функционал не работает в WEB Клиенте

View File

@@ -51,7 +51,8 @@
| Базы.ПутьКХранилищу КАК ПутьКХранилищу,
| Базы.ПользовательХранилища КАК ПользовательХранилища,
| ЕСТЬNULL(Кластеры.СерверПубликации, """") КАК СерверПубликации,
| Базы.БазаПубликации КАК БазаПубликации
| Базы.БазаПубликации КАК БазаПубликации,
| ЕСТЬNULL(Кластеры.ПутьКСерверуRAS, """") КАК ПутьКСерверуRAS
|ИЗ
| Справочник.Базы КАК Базы
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Проекты КАК Проекты

View File

@@ -1057,10 +1057,19 @@
<id>272</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Aelita</name>
@@ -1085,10 +1094,19 @@
<id>275</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
@@ -2571,6 +2589,7 @@
<fileDragMode>AsFileRef</fileDragMode>
<rowFilter xsi:type="core:UndefinedValue"/>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
@@ -4354,7 +4373,7 @@
</userVisible>
<title>
<key>ru</key>
<value>Группа18</value>
<value>Дополнительные реквизиты</value>
</title>
<extendedTooltip>
<name>ГруппаДополнительныеРеквизитыРасширеннаяПодсказка</name>

View File

@@ -71,10 +71,11 @@
&НаКлиенте
Процедура ПодборОбработок(Команда)
ТипыОбъектовРазработки = Новый Массив;
//TODO Разные команды сделать
ТипыОбъектовРазработки = Новый Массив; //Массив Из ПеречислениеСсылка.ТипыОбъектовРазработки
ТипыОбъектовРазработки.Добавить(ПредопределенноеЗначение("Перечисление.ТипыОбъектовРазработки.Обработка"));
ТипыОбъектовРазработки.Добавить(ПредопределенноеЗначение("Перечисление.ТипыОбъектовРазработки.Отчет"));
ТипыОбъектовРазработки.Добавить(ПредопределенноеЗначение("Перечисление.ТипыОбъектовРазработки.Расширение"));
ПараметрыОтбора = Новый Структура;
ПараметрыОтбора.Вставить("Владелец", Объект.Владелец);

View File

@@ -99,6 +99,10 @@
<createOnInput>Use</createOnInput>
<dataLockControlMode>Managed</dataLockControlMode>
<fullTextSearch>Use</fullTextSearch>
<objectPresentation>
<key>ru</key>
<value>Кластер</value>
</objectPresentation>
<levelCount>2</levelCount>
<foldersOnTop>true</foldersOnTop>
<codeLength>9</codeLength>
@@ -269,6 +273,24 @@
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="627d7be4-06e2-4a9a-94f5-addb4ff96b07">
<name>ПутьКСерверуRAS</name>
<synonym>
<key>ru</key>
<value>Путь к серверу RAS</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>1000</length>
</stringQualifiers>
</type>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<commands uuid="223c1d9e-2a01-43a7-b644-c685ca85e8cc">
<name>ПодключитьсяКRDP</name>
<synonym>

View File

@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Catalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="b5fed10d-b212-44b9-b2a9-3cbb3fe00e34">
<producedTypes>
<objectType typeId="2bf6dea1-f4f8-484b-b473-c29c6dff4cca" valueTypeId="0234993b-ea1d-4b00-b5a0-ec37631bb464"/>
<refType typeId="3a443142-410a-4da8-aa31-3dcc6a319875" valueTypeId="7b5857cf-a7c2-4cc5-add2-18bd7f42b898"/>
<selectionType typeId="71be60f4-89ad-4973-993d-0b925b790007" valueTypeId="08667ec6-2d70-4313-80dc-b8227efeb0d6"/>
<listType typeId="55666a33-bdcc-4cd4-b4bd-adef2a21c3e2" valueTypeId="91187af7-d506-4d31-a0c3-c2bc79844fa2"/>
<managerType typeId="a67cf862-9ab2-4baa-a109-276d6dcc9592" valueTypeId="34777145-3b86-4a10-ac7a-562878c1aebb"/>
</producedTypes>
<name>Команды</name>
<synonym>
<key>ru</key>
<value>Команды</value>
</synonym>
<useStandardCommands>true</useStandardCommands>
<inputByString>Catalog.Команды.StandardAttribute.Code</inputByString>
<inputByString>Catalog.Команды.StandardAttribute.Description</inputByString>
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
<createOnInput>Use</createOnInput>
<dataLockControlMode>Managed</dataLockControlMode>
<fullTextSearch>Use</fullTextSearch>
<levelCount>2</levelCount>
<foldersOnTop>true</foldersOnTop>
<codeLength>9</codeLength>
<descriptionLength>25</descriptionLength>
<codeType>String</codeType>
<codeAllowedLength>Variable</codeAllowedLength>
<checkUnique>true</checkUnique>
<autonumbering>true</autonumbering>
<defaultPresentation>AsDescription</defaultPresentation>
<editType>InDialog</editType>
<choiceMode>BothWays</choiceMode>
<attributes uuid="c44a6f5e-7d23-417b-a6cf-2d2e07669865">
<name>ПередЗапускомОсновнойКоманды</name>
<synonym>
<key>ru</key>
<value>Перед запуском основной команды</value>
</synonym>
<type>
<types>Boolean</types>
</type>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<tabularSections uuid="6261cf52-837f-4ce8-af3e-d387609dfe9a">
<producedTypes>
<objectType typeId="f0d24438-42ff-4d90-a584-32b990410f8d" valueTypeId="8b743f21-109d-4295-96ee-25eaa04240c5"/>
<rowType typeId="8c92e1d5-7e21-4ae4-8c89-7b6c3fb23433" valueTypeId="96ae8fbf-b2b3-4ba0-9286-f62a47c624d7"/>
</producedTypes>
<name>Команды</name>
<synonym>
<key>ru</key>
<value>Команды</value>
</synonym>
<attributes uuid="1fadf618-c869-4cc8-9889-5b826e7ae202">
<name>Команда</name>
<synonym>
<key>ru</key>
<value>Команда</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers/>
</type>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<dataHistory>Use</dataHistory>
<fullTextSearch>Use</fullTextSearch>
</attributes>
</tabularSections>
</mdclass:Catalog>

View File

@@ -56,7 +56,7 @@
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.IDПользователяGitLab</segments>
<segments>Список.IDПользователяGit</segments>
</dataPath>
<extendedTooltip>
<name>IDПользователяGitLabРасширеннаяПодсказка</name>
@@ -233,7 +233,7 @@
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ИмяПользователяGitLab</name>
<name>ИмяПользователяGit</name>
<id>25</id>
<visible>true</visible>
<enabled>true</enabled>
@@ -241,10 +241,10 @@
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.ИмяПользователяGitLab</segments>
<segments>Список.ИмяПользователяGit</segments>
</dataPath>
<extendedTooltip>
<name>ИмяПользователяGitLabРасширеннаяПодсказка</name>
<name>ИмяПользователяGitРасширеннаяПодсказка</name>
<id>27</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
@@ -254,7 +254,7 @@
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ИмяПользователяGitLabКонтекстноеМеню</name>
<name>ИмяПользователяGitКонтекстноеМеню</name>
<id>26</id>
<autoFill>true</autoFill>
</contextMenu>
@@ -313,7 +313,7 @@
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.ПочтаПользователяGitLab</segments>
<segments>Список.ПочтаПользователяGit</segments>
</dataPath>
<extendedTooltip>
<name>ПочтаПользователяGitLabРасширеннаяПодсказка</name>

View File

@@ -184,7 +184,7 @@
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>TokenGitLab</name>
<name>TokenGit</name>
<id>7</id>
<title>
<key>ru</key>
@@ -199,7 +199,7 @@
<segments>Объект.ТокенGit</segments>
</dataPath>
<extendedTooltip>
<name>TokenGitLabРасширеннаяПодсказка</name>
<name>TokenGitРасширеннаяПодсказка</name>
<id>9</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
@@ -209,7 +209,7 @@
</extInfo>
</extendedTooltip>
<contextMenu>
<name>TokenGitLabКонтекстноеМеню</name>
<name>TokenGitКонтекстноеМеню</name>
<id>8</id>
<autoFill>true</autoFill>
</contextMenu>
@@ -228,7 +228,7 @@
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ПочтаПользователяGitLab</name>
<name>ПочтаПользователяGit</name>
<id>32</id>
<title>
<key>ru</key>
@@ -243,7 +243,7 @@
<segments>Объект.ПочтаПользователяGit</segments>
</dataPath>
<extendedTooltip>
<name>ПочтаПользователяGitLabРасширеннаяПодсказка</name>
<name>ПочтаПользователяGitРасширеннаяПодсказка</name>
<id>34</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
@@ -253,7 +253,7 @@
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПочтаПользователяGitLabКонтекстноеМеню</name>
<name>ПочтаПользователяGitКонтекстноеМеню</name>
<id>33</id>
<autoFill>true</autoFill>
</contextMenu>
@@ -319,7 +319,7 @@
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ИмяПользователяGitLab</name>
<name>ИмяПользователяGit</name>
<id>29</id>
<title>
<key>ru</key>
@@ -331,10 +331,10 @@
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.ИмяПользователяGitLab</segments>
<segments>Объект.ИмяПользователяGit</segments>
</dataPath>
<extendedTooltip>
<name>ИмяПользователяGitLabРасширеннаяПодсказка</name>
<name>ИмяПользователяGitРасширеннаяПодсказка</name>
<id>31</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
@@ -344,7 +344,7 @@
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ИмяПользователяGitLabКонтекстноеМеню</name>
<name>ИмяПользователяGitКонтекстноеМеню</name>
<id>30</id>
<autoFill>true</autoFill>
</contextMenu>
@@ -404,7 +404,7 @@
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>IDПользователяGitLab</name>
<name>IDПользователяGit</name>
<id>38</id>
<visible>true</visible>
<enabled>true</enabled>
@@ -412,10 +412,10 @@
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.IDПользователяGitLab</segments>
<segments>Объект.IDПользователяGit</segments>
</dataPath>
<extendedTooltip>
<name>IDПользователяGitLabРасширеннаяПодсказка</name>
<name>IDПользователяGitРасширеннаяПодсказка</name>
<id>40</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
@@ -425,7 +425,7 @@
</extInfo>
</extendedTooltip>
<contextMenu>
<name>IDПользователяGitLabКонтекстноеМеню</name>
<name>IDПользователяGitКонтекстноеМеню</name>
<id>39</id>
<autoFill>true</autoFill>
</contextMenu>

View File

@@ -43,6 +43,46 @@
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ТаскТрекер</name>
<id>61</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.ТаскТрекер</segments>
</dataPath>
<extendedTooltip>
<name>ТаскТрекерРасширеннаяПодсказка</name>
<id>63</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ТаскТрекерКонтекстноеМеню</name>
<id>62</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ТипРепозитория</name>
<id>52</id>

View File

@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Catalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="fad5b54e-e82d-4f25-92b8-1752645a6607">
<producedTypes>
<objectType typeId="a489340f-35e4-4624-a9dd-81ce07f47470" valueTypeId="3d4ccc9d-eba0-4352-92f9-2185e1eb87d7"/>
<refType typeId="4dba8113-bc8d-435b-a43b-9248be58e025" valueTypeId="92c96b0e-0364-4ea2-b1c9-f0d74958b19b"/>
<selectionType typeId="e1660184-34c7-4f88-9b6d-4cb566c90182" valueTypeId="6246223b-ea77-4006-abf7-30c12321e9c1"/>
<listType typeId="cb077850-e24a-4d22-9a97-a6e23a44b39a" valueTypeId="adfa1d0c-d62e-4007-aa4a-b971ce76333f"/>
<managerType typeId="be400d65-5232-40a5-ac87-4ecbec328a22" valueTypeId="137186f3-8d3b-4401-a7b9-dfbfd29456ee"/>
</producedTypes>
<name>УчетныеДанные</name>
<synonym>
<key>ru</key>
<value>Учетные данные</value>
</synonym>
<useStandardCommands>true</useStandardCommands>
<inputByString>Catalog.УчетныеДанные.StandardAttribute.Code</inputByString>
<inputByString>Catalog.УчетныеДанные.StandardAttribute.Description</inputByString>
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
<createOnInput>Use</createOnInput>
<dataLockControlMode>Managed</dataLockControlMode>
<fullTextSearch>Use</fullTextSearch>
<levelCount>2</levelCount>
<foldersOnTop>true</foldersOnTop>
<codeLength>9</codeLength>
<descriptionLength>25</descriptionLength>
<codeType>String</codeType>
<codeAllowedLength>Variable</codeAllowedLength>
<checkUnique>true</checkUnique>
<autonumbering>true</autonumbering>
<defaultPresentation>AsDescription</defaultPresentation>
<editType>InDialog</editType>
<choiceMode>BothWays</choiceMode>
<attributes uuid="4b1cc476-5526-45bb-b6d2-3e64da4ca1f5">
<name>ТипУчетныхДанных</name>
<synonym>
<key>ru</key>
<value>Тип учетных данных</value>
</synonym>
<type>
<types>EnumRef.ТипыУчетныхДанных</types>
</type>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
</mdclass:Catalog>

View File

@@ -0,0 +1,10 @@
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
УстановитьОскрипт();
КонецПроцедуры
&НаСервере
Процедура УстановитьОскрипт()
РаботаСGit.УстановитьОскрипт();
КонецПроцедуры

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonCommand xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="0d6bf1f5-2acf-4c62-a6e8-271bacf2971e">
<name>УстановитьОскрипт</name>
<synonym>
<key>ru</key>
<value>Установить оскрипт</value>
</synonym>
<group>ActionsPanelTools</group>
<representation>Auto</representation>
</mdclass:CommonCommand>

View File

@@ -0,0 +1,311 @@
<?xml version="1.0" encoding="UTF-8"?>
<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form">
<items xsi:type="form:FormField">
<name>ОтладкаЛогов</name>
<id>121</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>НаборКонстант.ОтладкаЛогов</segments>
</dataPath>
<extendedTooltip>
<name>ОтладкаЛоговРасширеннаяПодсказка</name>
<id>123</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ОтладкаЛоговКонтекстноеМеню</name>
<id>122</id>
<autoFill>true</autoFill>
</contextMenu>
<type>CheckBoxField</type>
<editMode>EnterOnInput</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:CheckBoxFieldExtInfo"/>
</items>
<items xsi:type="form:FormField">
<name>СтратегияЗапускаСкрипта</name>
<id>193</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>НаборКонстант.СтратегияЗапускаСкрипта</segments>
</dataPath>
<extendedTooltip>
<name>СтратегияЗапускаСкриптаРасширеннаяПодсказка</name>
<id>195</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>СтратегияЗапускаСкриптаКонтекстноеМеню</name>
<id>194</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>EnterOnInput</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<extendedEditMultipleValues>true</extendedEditMultipleValues>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>ГруппаАрхив</name>
<id>211</id>
<items xsi:type="form:FormField">
<name>ТаскТрекер</name>
<id>196</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>НаборКонстант.УдалитьТаскТрекер</segments>
</dataPath>
<extendedTooltip>
<name>ТаскТрекерРасширеннаяПодсказка</name>
<id>198</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ТаскТрекерКонтекстноеМеню</name>
<id>197</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>EnterOnInput</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<extendedEditMultipleValues>true</extendedEditMultipleValues>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ТокенBitrix</name>
<id>199</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>НаборКонстант.ТокенBitrix</segments>
</dataPath>
<extendedTooltip>
<name>ТокенBitrixРасширеннаяПодсказка</name>
<id>201</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ТокенBitrixКонтекстноеМеню</name>
<id>200</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>EnterOnInput</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<extendedEditMultipleValues>true</extendedEditMultipleValues>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ПутьКПапкеДевопсСервера</name>
<id>151</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>НаборКонстант.ПутьКПапкеДевопсСервера</segments>
</dataPath>
<extendedTooltip>
<name>ПутьКПапкеДевопсСервераРасширеннаяПодсказка</name>
<id>153</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПутьКПапкеДевопсСервераКонтекстноеМеню</name>
<id>152</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>EnterOnInput</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<extendedEditMultipleValues>true</extendedEditMultipleValues>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ПутьКРепозиториюDevCLI</name>
<id>154</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>НаборКонстант.ПутьКРепозиториюDevCLI</segments>
</dataPath>
<extendedTooltip>
<name>ПутьКРепозиториюDevCLIРасширеннаяПодсказка</name>
<id>156</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПутьКРепозиториюDevCLIКонтекстноеМеню</name>
<id>155</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>EnterOnInput</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<extendedEditMultipleValues>true</extendedEditMultipleValues>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Устарело</value>
</title>
<extendedTooltip>
<name>ГруппаАрхивРасширеннаяПодсказка</name>
<id>212</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<group>HorizontalIfPossible</group>
<behavior>Auto</behavior>
<representation>WeakSeparation</representation>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<showTitle>true</showTitle>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<autoCommandBar>
<name>ФормаКоманднаяПанель</name>
<id>-1</id>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<windowOpeningMode>LockOwnerWindow</windowOpeningMode>
<saveWindowSettings>true</saveWindowSettings>
<autoTitle>true</autoTitle>
<autoUrl>true</autoUrl>
<group>Vertical</group>
<autoFillCheck>true</autoFillCheck>
<allowFormCustomize>true</allowFormCustomize>
<enabled>true</enabled>
<showTitle>true</showTitle>
<showCloseButton>true</showCloseButton>
<attributes>
<name>НаборКонстант</name>
<id>1</id>
<valueType>
<types>ConstantsSet</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
<main>true</main>
<savedData>true</savedData>
</attributes>
<commandInterface>
<navigationPanel/>
<commandBar/>
</commandInterface>
<extInfo xsi:type="form:ConstantsFormExtInfo"/>
</form:Form>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonForm xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="1cac5e33-927d-4ce8-8496-a7ab9dc2c299">
<name>ФормаНастроекКонфигурации</name>
<synonym>
<key>ru</key>
<value>Форма настроек конфигурации</value>
</synonym>
<usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes>
</mdclass:CommonForm>

View File

@@ -19,7 +19,7 @@
НастройкиПользователя = Справочники.НастройкиПользователей.НастройкиТекущегоПользователя();
Если Не ЗначениеЗаполнено(НастройкиПользователя.ТокенGitLab) Тогда
Если Не ЗначениеЗаполнено(НастройкиПользователя.ТокенGit) Тогда
Возврат;
КонецЕсли;
@@ -46,13 +46,13 @@
СписокКоммитов = РаботаСGitLab.СписокКоммитовПоМерджРеквесту(НастройкиПроекта.URLGitLab,
НастройкиПроекта.ИДПроектаGitLab,
НомерМерджРеквеста,
НастройкиПользователя.ТокенGitLab
НастройкиПользователя.ТокенGit
);
ТаблицаИзмененныхОбъектов = РаботаСGitLab.ИзмененияПоКоммиту(НастройкиПроекта.URLGitLab,
НастройкиПроекта.ИДПроектаGitLab,
НомерМерджРеквеста,
НастройкиПользователя.ТокенGitLab,
НастройкиПользователя.ТокенGit,
СписокКоммитов
);

View File

@@ -277,7 +277,7 @@
ПараметрыЗапроса = Новый Структура;
ПараметрыЗапроса.Вставить("token", "");
ПараметрыЗапроса.Вставить("BRANCHE_NAME", "");
ПараметрыЗапроса.Вставить("BRANCH_NAME", "");
ПараметрыЗапроса.Вставить("CATALOG_TEST", "");
ПараметрыЗапроса.Вставить("NAMES_DATA_PROCESSORS", "");
ПараметрыЗапроса.Вставить("RUN_STAGE", Ложь);
@@ -305,7 +305,7 @@
ВнешниеФайлы = ПараметрыЗадачи.ВнешниеФайлы;
ПараметрыЗапроса.token = ПараметрыПроекта.ТокенJenkins;
ПараметрыЗапроса.BRANCHE_NAME = ВеткаЗадачи;
ПараметрыЗапроса.BRANCH_NAME = ВеткаЗадачи;
ПараметрыЗапроса.NAMES_DATA_PROCESSORS = ВнешниеФайлы;
ПараметрыЗапроса.EXTENSION_NAME = Справочники.Задачи.РасширенияЧерезЗапятую(Задача);
ПараметрыЗапроса.NEED_UPDATE_IB = Задача.ДорабатыватьКонфигурацию;

View File

@@ -8,57 +8,73 @@
Функция НовыйКомандаПолученияВеток() Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("branch");
КомандаЗапуска.Добавить("--no-color");
КомандаЗапуска.Добавить("-a");
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
Функция НовыйКомандаПерейтиНаНовуюВетку(НоваяВетка) Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("switch");
ДобавитьОпцию(КомандаЗапуска, "-c", НоваяВетка);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
Функция НовыйКомандаПерейтиНаВеткуЛокально(ИмяВетки) Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("checkout");
КомандаЗапуска.Добавить(ИмяВетки);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
Функция НовыйКомандаОтправить() Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("push");
КомандаЗапуска.Добавить("--all");
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
//@skip-check export-procedure-missing-comment
Функция НовыйКомандаТекущаяВетка() Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("symbolic-ref");
КомандаЗапуска.Добавить("--short");
КомандаЗапуска.Добавить("HEAD");
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
@@ -67,10 +83,13 @@
//
Функция НовыйКомандаИндексироватьВсе() Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("add");
КомандаЗапуска.Добавить(".");
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
@@ -81,12 +100,15 @@
//
Функция НовыйКомандаКоммит(Комментарий) Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("commit");
КомандаЗапуска.Добавить("-m");
КомандаЗапуска.Добавить(Комментарий);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
@@ -96,13 +118,16 @@
//
Функция НовыйКомандаНастройкаSSLVerify() Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("config");
КомандаЗапуска.Добавить("--global");
КомандаЗапуска.Добавить("http.sslVerify");
КомандаЗапуска.Добавить("false");
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
@@ -112,10 +137,13 @@
//
Функция НовыйКомандаОбновитьРепозиторийИзУдаленного() Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("pull");
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
@@ -125,10 +153,13 @@
//
Функция НовыйКомандаСтатусГит() Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("status");
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
@@ -138,11 +169,14 @@
//
Функция НовыйКомандаКлонироватьРепозиторий(URLРепозитория) Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("clone");
КомандаЗапуска.Добавить(URLРепозитория);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
КонецФункции
@@ -152,10 +186,13 @@
//
Функция НовыйКомандаИзвлечениеИзменений() Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("git");
КомандаЗапуска.Добавить("fetch");
КомандаЗапуска.Добавить("--all");
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска;
@@ -167,11 +204,12 @@
// Функция - Формирование строки запуска
// PathRepository - Путь репозитория
// NewBranche - Новая ветка
// NewBranch - Новая ветка
// NameDB - Имя информационной базы
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1с - Путь к серверу 1с
// PathServerRAS - Путь к серверу RAS
// NumberPlatform - Номер версии платформы 1с
// TypeDB - Тип СУБД
// UsrLoginDB - Имя пользователя СУБД
@@ -188,10 +226,9 @@
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("branche");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("branch");
ДобавитьОпцию(КомандаЗапуска, "--PathRepository", ПараметрыБазы.КаталогБазы);
//ПараметрыБазы
@@ -200,6 +237,7 @@
ДобавитьОпцию(КомандаЗапуска, "--UsrLogin1c", ПараметрыБазы.ИмяПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswd1c", ПараметрыБазы.ПарольПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--PathServer1с", ПараметрыБазы.КластерСерверов);
ДобавитьОпцию(КомандаЗапуска, "--PathServerRAS", ПараметрыБазы.ПутьКСерверуRAS);
ДобавитьОпцию(КомандаЗапуска, "--NumberPlatform", ПараметрыБазы.НомерВерсииПлатформы);
ДобавитьОпцию(КомандаЗапуска, "--TypeDB", ПараметрыБазы.ТипSQL);
ДобавитьОпцию(КомандаЗапуска, "--UsrLoginDB", ПараметрыБазы.ЛогинSQL);
@@ -211,15 +249,19 @@
ДобавитьОпцию(КомандаЗапуска, "--NameDBWeb", ПараметрыБазы.БазаПубликации);
ДобавитьОпцию(КомандаЗапуска, "--ServerDBWeb", ПараметрыБазы.СерверПубликации);
//ПараметрыЗадачи
ДобавитьОпцию(КомандаЗапуска, "--NewBranche", ПараметрыЗадачи.ИмяВетки);
ДобавитьОпцию(КомандаЗапуска, "--NewBranch", ПараметрыЗадачи.ИмяВетки);
ДобавитьОпцию(КомандаЗапуска, "--LoadDB", Формат(ПараметрыЗадачи.ДорабатыватьКонфигурацию, "БЛ=false; БИ=true"));
ДобавитьОпцию(КомандаЗапуска, "--NamesDataProcessors", ПараметрыЗадачи.ВнешниеФайлы);
ДобавитьОпцию(КомандаЗапуска, "--Extensions", ПараметрыЗадачи.Расширения);
ЗаписатьКомандуВЖурналРегистрации(КомандаЗапуска);
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
@@ -228,10 +270,9 @@
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("brancheToDevelop");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("branchtodevelop");
ДобавитьОпцию(КомандаЗапуска, "--PathRepository", ПараметрыБазы.КаталогБазы);
//ПараметрыБазы
@@ -240,6 +281,7 @@
ДобавитьОпцию(КомандаЗапуска, "--UsrLogin1c", ПараметрыБазы.ИмяПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswd1c", ПараметрыБазы.ПарольПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--PathServer1с", ПараметрыБазы.КластерСерверов);
ДобавитьОпцию(КомандаЗапуска, "--PathServerRAS", ПараметрыБазы.ПутьКСерверуRAS);
ДобавитьОпцию(КомандаЗапуска, "--NumberPlatform", ПараметрыБазы.НомерВерсииПлатформы);
ДобавитьОпцию(КомандаЗапуска, "--TypeDB", ПараметрыБазы.ТипSQL);
ДобавитьОпцию(КомандаЗапуска, "--UsrLoginDB", ПараметрыБазы.ЛогинSQL);
@@ -255,7 +297,7 @@
ДобавитьОпцию(КомандаЗапуска, "--ServerDBWeb", ПараметрыБазы.СерверПубликации);
//ПараметрыЗадачи
ДобавитьОпцию(КомандаЗапуска, "--NewBranche", ПараметрыЗадачи.ИмяВетки);
ДобавитьОпцию(КомандаЗапуска, "--NewBranch", ПараметрыЗадачи.ИмяВетки);
ДобавитьОпцию(КомандаЗапуска, "--UpdateDB", ПараметрыЗадачи.ОбновитьКонфИзХранилища);
ДобавитьОпцию(КомандаЗапуска, "--LoadDB", ПараметрыЗадачи.ДорабатыватьКонфигурацию);
@@ -264,49 +306,62 @@
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
Функция НовыйКомандаПереходаНаВеткуDevelop(ПараметрыБазы) Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("BrancheDevelop");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("branchdevelop");
КомандаЗапуска.Добавить("--PathRepository");
КомандаЗапуска.Добавить(ПараметрыБазы.КаталогБазы);
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
// Функция - Формирование строки запуска
//PathRepository - Путь репозитория
//NameDB - Имя информационной базы
//UsrLogin1c - Имя пользователя 1с
//UsrPswd1c - Пароль пользователя
//PathServer1c - Путь к серверу
//NumberPlatform - Номер версии платформы 1с
//TypeDB - Тип СУБД
//UsrLoginDB - Имя пользователя СУБД
//UsrPswdDB - Пароль пользователя СУБД
//PathServerDB - Путь к серверу СУБД
//TextCommit - Текст коммита
//Репозиторий - Ссылка на Гит лаб
//TokenConnectionGitLab - Токен подключения к гитлаб
//IdProject - ИД проекта Гит лаб (отдельно ВМС, отдельно ЕРП, отдельно ТМС)// Возвращаемое значение:
// -
// Новый команда фиксация изменений.
//
// Параметры:
// ПараметрыБазы - Структура - См. Справочники.Базы.НастройкиБазы()
// НастройкиПользователя - Структура - См. Справочники.НастройкиПользователей.НастройкиТекущегоПользователя()
// ПараметрыЗадачи - Структура - См. Справочники.Задачи.РеквизитыЗадачи
// ДополнительныеПараметры - Структура - См. Дополнительные параметры
// Описание параметров
// PathRepository - Путь репозитория
// NameDB - Имя информационной базы
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1c - Путь к серверу
// PathServerRAS - Путь к серверу RAS
// NumberPlatform - Номер версии платформы 1с
// TypeDB - Тип СУБД
// UsrLoginDB - Имя пользователя СУБД
// UsrPswdDB - Пароль пользователя СУБД
// PathServerDB - Путь к серверу СУБД
// TextCommit - Текст коммита
// Репозиторий - Ссылка на Гит лаб
// TokenConnectionGitLab - Токен подключения к гитлаб
// IdProject - ИД проекта Гит лаб (отдельно ВМС, отдельно ЕРП, отдельно ТМС)// Возвращаемое значение:
//
// Возвращаемое значение:
// Строка - Новый команда фиксация изменений
Функция НовыйКомандаФиксацияИзменений(ПараметрыБазы, НастройкиПользователя, ПараметрыЗадачи, ДополнительныеПараметры) Экспорт
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("commit");
ДобавитьОпцию(КомандаЗапуска, "--PathRepository", ПараметрыБазы.КаталогБазы);
@@ -316,11 +371,8 @@
ДобавитьОпцию(КомандаЗапуска, "--UsrLogin1c", ПараметрыБазы.ИмяПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswd1c", ПараметрыБазы.ПарольПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--PathServer1с", ПараметрыБазы.КластерСерверов);
ДобавитьОпцию(КомандаЗапуска, "--PathServerRAS", ПараметрыБазы.ПутьКСерверуRAS);
ДобавитьОпцию(КомандаЗапуска, "--NumberPlatform", ПараметрыБазы.НомерВерсииПлатформы);
ДобавитьОпцию(КомандаЗапуска, "--ServerDB", ПараметрыБазы.ИмяSQL);
ДобавитьОпцию(КомандаЗапуска, "--TypeDB", ПараметрыБазы.ТипSQL);
ДобавитьОпцию(КомандаЗапуска, "--UsrLoginDB", ПараметрыБазы.ЛогинSQL);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswdDB", ПараметрыБазы.ПарольSQL);
ДобавитьОпцию(КомандаЗапуска, "--PathServerDB", ПараметрыБазы.КластерСерверов);
ДобавитьОпцию(КомандаЗапуска, "--UrlRemoteRepository", ПараметрыБазы.Репозиторий);
ДобавитьОпцию(КомандаЗапуска, "--TokenConnectionGitLab", НастройкиПользователя.ТокенGit);
@@ -328,6 +380,13 @@
ДобавитьОпцию(КомандаЗапуска, "--RunRas", "false");
ДобавитьОпцию(КомандаЗапуска, "--MethodLoadDB", Строка(ПараметрыБазы.РежимРаботыКонфигурации));
Если ПараметрыБазы.РежимРаботыКонфигурации = Перечисления.РежимыРаботыКонфигурации.ibcmd Тогда
ДобавитьОпцию(КомандаЗапуска, "--ServerDB", ПараметрыБазы.ИмяSQL);
ДобавитьОпцию(КомандаЗапуска, "--TypeDB", ПараметрыБазы.ТипSQL);
ДобавитьОпцию(КомандаЗапуска, "--UsrLoginDB", ПараметрыБазы.ЛогинSQL);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswdDB", ПараметрыБазы.ПарольSQL);
КонецЕсли;
ДобавитьОпцию(КомандаЗапуска, "--CommitAuthor", РаботаСGit.АвторКоммита(НастройкиПользователя));
Если ЗначениеЗаполнено(ПараметрыЗадачи.ДорабатыватьКонфигурацию) Тогда
@@ -335,9 +394,9 @@
КонецЕсли;
ДобавитьОпцию(КомандаЗапуска, "--Extensions", ПараметрыЗадачи.Расширения);
//ПараметрыЗадачи
ДобавитьОпцию(КомандаЗапуска, "--TextCommit", ДополнительныеПараметры.ТекстКоммита);
ЗаписатьКомандуВЖурналРегистрации(КомандаЗапуска);
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
@@ -350,22 +409,21 @@
// Функция - Формирование строки запуска
//PathRepository - Путь репозитория
//NewBranche - Новая ветка
//NewBranch - Новая ветка
// -
//
Функция НовыйКомандаСозданияВетки(ПараметрыБазы, ПараметрыЗадачи) Экспорт
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("CreateBranche");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("createbranch");
ДобавитьОпцию(КомандаЗапуска, "--PathRepository", ПараметрыБазы.КаталогБазы);
//ПараметрыБазы
ДобавитьОпцию(КомандаЗапуска, "--NewBranche", ПараметрыЗадачи.ИмяВетки);
ДобавитьОпцию(КомандаЗапуска, "--NewBranch", ПараметрыЗадачи.ИмяВетки);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
@@ -374,7 +432,7 @@
КонецФункции
// Функция - Формирование строки запуска
//Функция - Формирование строки запуска
//PathRepository - Путь репозитория
//PathRemoteRepository - Путь удаленного репозитория
//UserName - Имя пользователя
@@ -385,17 +443,17 @@
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("init");
ДобавитьОпцию(КомандаЗапуска, "--PathRepository", ПараметрыБазы.КаталогБазы);
ДобавитьОпцию(КомандаЗапуска, "--PathRemoteRepository", ПараметрыБазы.PathGitClone);
ДобавитьОпцию(КомандаЗапуска, "--UserName", НастройкиПользователя.ИмяПользователяGitLab);
ДобавитьОпцию(КомандаЗапуска, "--UserEmail", НастройкиПользователя.ПочтаПользователяGitLab);
ДобавитьОпцию(КомандаЗапуска, "--UserName", НастройкиПользователя.ИмяПользователяGit);
ДобавитьОпцию(КомандаЗапуска, "--UserEmail", НастройкиПользователя.ПочтаПользователяGit);
ЗаписатьКомандуВЖурналРегистрации(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
@@ -405,11 +463,12 @@
// Функция - Формирование строки запуска
// PathRepository - Путь репозитория
// ReleaseBranche - Ветка релиза
// ReleaseBranch - Ветка релиза
// NameDB - Имя информационной базы
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1с - Путь к серверу 1с
// PathServerRAS - Путь к серверу RAS
// NumberPlatform - Номер версии платформы 1с
// TypeDB - Тип СУБД
// UsrLoginDB - Имя пользователя СУБД
@@ -424,10 +483,9 @@
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("BuildRelease");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("buildrelease");
ДобавитьОпцию(КомандаЗапуска, "--PathRepository", ПараметрыБазы.КаталогБазы);
@@ -436,6 +494,7 @@
ДобавитьОпцию(КомандаЗапуска, "--UsrLogin1c", ПараметрыБазы.ИмяПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswd1c", ПараметрыБазы.ПарольПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--PathServer1с", ПараметрыБазы.КластерСерверов);
ДобавитьОпцию(КомандаЗапуска, "--PathServerRAS", ПараметрыБазы.ПутьКСерверуRAS);
ДобавитьОпцию(КомандаЗапуска, "--NumberPlatform", ПараметрыБазы.НомерВерсииПлатформы);
ДобавитьОпцию(КомандаЗапуска, "--TypeDB", ПараметрыБазы.ТипSQL);
ДобавитьОпцию(КомандаЗапуска, "--UsrLoginDB", ПараметрыБазы.ЛогинSQL);
@@ -461,17 +520,21 @@
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
// Функция - Формирование строки запуска
// PathRepository - Путь репозитория
// ReleaseBranche - Ветка релиза
// ReleaseBranch - Ветка релиза
// NameDB - Имя информационной базы
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1с - Путь к серверу 1с
// PathServerRAS - Путь к серверу RAS
// NumberPlatform - Номер версии платформы 1с
// TypeDB - Тип СУБД
// UsrLoginDB - Имя пользователя СУБД
@@ -486,10 +549,9 @@
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("CompileDataProcessors");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("compiledataprocessors");
ДобавитьОпцию(КомандаЗапуска, "--PathRepository", ПараметрыБазы.КаталогБазы);
//ПараметрыБазы
@@ -497,6 +559,7 @@
ДобавитьОпцию(КомандаЗапуска, "--UsrLogin1c", ПараметрыБазы.ИмяПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswd1c", ПараметрыБазы.ПарольПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--PathServer1с", ПараметрыБазы.КластерСерверов);
ДобавитьОпцию(КомандаЗапуска, "--PathServerRAS", ПараметрыБазы.ПутьКСерверуRAS);
ДобавитьОпцию(КомандаЗапуска, "--NumberPlatform", ПараметрыБазы.НомерВерсииПлатформы);
ДобавитьОпцию(КомандаЗапуска, "--TypeDB", ПараметрыБазы.ТипSQL);
ДобавитьОпцию(КомандаЗапуска, "--UsrLoginDB", ПараметрыБазы.ЛогинSQL);
@@ -508,10 +571,13 @@
ДобавитьОпцию(КомандаЗапуска, "--MethodLoadDB", Строка(ПараметрыБазы.РежимРаботыКонфигурации));
ДобавитьОпцию(КомандаЗапуска, "--LoadDB", ПараметрыБазы.СобиратьКонфигурациюВРелиз);
ДобавитьОпцию(КомандаЗапуска, "--PathRelease", НастройкиПроекта.ПапкаАктуальныхОбработок);
ДобавитьОпцию(КомандаЗапуска, "--NameBranche", НомерЗадачи);
ДобавитьОпцию(КомандаЗапуска, "--NameBranch", НомерЗадачи);
ДобавитьОпцию(КомандаЗапуска, "--NamesDataProcessors", СписокОбновляемыхОбработок);
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
@@ -519,11 +585,12 @@
// Функция - Формирование строки запуска
// PathRepository - Путь репозитория
// ReleaseBranche - Ветка релиза
// ReleaseBranch - Ветка релиза
// NameDB - Имя информационной базы
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1с - Путь к серверу 1с
// PathServerRAS - Путь к серверу RAS
// NumberPlatform - Номер версии платформы 1с
// TypeDB - Тип СУБД
// UsrLoginDB - Имя пользователя СУБД
@@ -536,10 +603,9 @@
//
Функция НовыйКомандаПлановоеОбновлениеБазы(ПараметрыБазы, Релиз) Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("UpdateDB");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("updatedb");
КомандаЗапуска.Добавить("--PathRepository");
КомандаЗапуска.Добавить(ПараметрыБазы.КаталогБазы);
@@ -552,6 +618,8 @@
КомандаЗапуска.Добавить(ПараметрыБазы.ПарольПользователяИнформационнойБазы);
КомандаЗапуска.Добавить("--PathServer1с");
КомандаЗапуска.Добавить(ПараметрыБазы.КластерСерверов);
КомандаЗапуска.Добавить("--PathServerRAS");
КомандаЗапуска.Добавить(ПараметрыБазы.ПутьКСерверуRAS);
КомандаЗапуска.Добавить("--NumberPlatform");
КомандаЗапуска.Добавить(ПараметрыБазы.НомерВерсииПлатформы);
КомандаЗапуска.Добавить("--TypeDB");
@@ -594,6 +662,9 @@
КомандаЗапуска.Добавить(ПараметрыБазы.ПользовательХранилищаToolsworld);
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
@@ -601,11 +672,12 @@
// Функция - Формирование строки запуска
// PathRepository - Путь репозитория
// ReleaseBranche - Ветка релиза
// ReleaseBranch - Ветка релиза
// NameDB - Имя информационной базы
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1с - Путь к серверу 1с
// PathServerRAS - Путь к серверу RAS
// NumberPlatform - Номер версии платформы 1с
// TypeDB - Тип СУБД
// UsrLoginDB - Имя пользователя СУБД
@@ -620,10 +692,9 @@
//ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("UpdateDBDataProcessors");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("updatedbdataprocessors");
КомандаЗапуска.Добавить("--PathRepository");
КомандаЗапуска.Добавить(ПараметрыБазы.КаталогБазы);
@@ -636,6 +707,8 @@
КомандаЗапуска.Добавить(ПараметрыБазы.ПарольПользователяИнформационнойБазы);
КомандаЗапуска.Добавить("--PathServer1с");
КомандаЗапуска.Добавить(ПараметрыБазы.КластерСерверов);
КомандаЗапуска.Добавить("--PathServerRAS");
КомандаЗапуска.Добавить(ПараметрыБазы.ПутьКСерверуRAS);
КомандаЗапуска.Добавить("--RunRas");
КомандаЗапуска.Добавить("false");
КомандаЗапуска.Добавить("--NumberPlatform");
@@ -653,17 +726,21 @@
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
// Функция - Формирование строки запуска
// PathRepository - Путь репозитория
// ReleaseBranche - Ветка релиза
// ReleaseBranch - Ветка релиза
// NameDB - Имя информационной базы
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1с - Путь к серверу 1с
// PathServerRAS - Путь к серверу RAS
// NumberPlatform - Номер версии платформы 1с
// TypeDB - Тип СУБД
// UsrLoginDB - Имя пользователя СУБД
@@ -678,10 +755,9 @@
//
Функция НовыйКомандаОбновлениеОбработкиИзПапки(ПараметрыБазы, ПутьКПапкеВнешнихОбработок) Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("UpdateDataProcessorsFromFolder");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("updatedataprocessorsfromfolder");
КомандаЗапуска.Добавить("--PathRepository");
КомандаЗапуска.Добавить(ПараметрыБазы.КаталогБазы);
@@ -694,6 +770,8 @@
КомандаЗапуска.Добавить(ПараметрыБазы.ПарольПользователяИнформационнойБазы);
КомандаЗапуска.Добавить("--PathServer1с");
КомандаЗапуска.Добавить(ПараметрыБазы.КластерСерверов);
КомандаЗапуска.Добавить("--PathServerRAS");
КомандаЗапуска.Добавить(ПараметрыБазы.ПутьКСерверуRAS);
КомандаЗапуска.Добавить("--RunRas");
КомандаЗапуска.Добавить("false");
КомандаЗапуска.Добавить("--NumberPlatform");
@@ -707,6 +785,9 @@
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
@@ -732,10 +813,9 @@
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("CreateMergeRequest");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("createmergerequest");
ДобавитьОпцию(КомандаЗапуска, "--PathRepository", ПараметрыБазы.КаталогБазы);
@@ -750,8 +830,13 @@
ДобавитьОпцию(КомандаЗапуска, "--TextMR", ДополнительныеПараметры.ТекстМерджРеквеста);
ЗаписатьКомандуВЖурналРегистрации(КомандаЗапуска);
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
@@ -777,7 +862,7 @@
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("gh");
КомандаЗапуска.Добавить("pr");
КомандаЗапуска.Добавить("create");
@@ -789,13 +874,16 @@
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
// Функция - Формирование строки запуска MakeDataProcessors
// PathRepository - Путь репозитория
// NewBranche - Новая ветка
// NewBranch - Новая ветка
// NameDB - Имя информационной базы
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
@@ -816,10 +904,10 @@
ПараметрыКомандЗапуска = ПараметрыСеанса.ПараметрыКомандЗапуска;
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ПараметрыКомандЗапуска.oscript);
КомандаЗапуска.Добавить("MakeDataProcessors");
КомандаЗапуска.Добавить("makedataprocessors");
СписокАргументов = Новый Массив;
СписокАргументов.Добавить("PathRepository");
@@ -831,17 +919,21 @@
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
// Функция - Формирование строки запуска
// PathRepository - Путь репозитория
// NewBranche - Новая ветка
// NewBranch - Новая ветка
// NameDB - Имя информационной базы
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1с - Путь к серверу 1с
// PathServerRAS - Путь к серверу RAS
// NumberPlatform - Номер версии платформы 1с
// TypeDB - Тип СУБД
// UsrLoginDB - Имя пользователя СУБД
@@ -858,10 +950,9 @@
ОбщегоНазначенияКлиентСервер.Проверить(Не ПараметрыБазы.ЭтоРабочаяБаза, "Недопустимо использование скрипта в Рабочей базе!");
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска.Добавить("UpdateDataProcessors");
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("updatedataprocessors");
ДобавитьОпцию(КомандаЗапуска, "--PathRepository", ПараметрыБазы.КаталогБазы);
@@ -870,6 +961,7 @@
ДобавитьОпцию(КомандаЗапуска, "--UsrLogin1c", ПараметрыБазы.ИмяПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswd1c", ПараметрыБазы.ПарольПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--PathServer1с", ПараметрыБазы.КластерСерверов);
ДобавитьОпцию(КомандаЗапуска, "--PathServerRAS", ПараметрыБазы.ПутьКСерверуRAS);
ДобавитьОпцию(КомандаЗапуска, "--NumberPlatform", ПараметрыБазы.НомерВерсииПлатформы);
ДобавитьОпцию(КомандаЗапуска, "--TypeDB", ПараметрыБазы.ТипSQL);
ДобавитьОпцию(КомандаЗапуска, "--UsrLoginDB", ПараметрыБазы.ЛогинSQL);
@@ -882,6 +974,9 @@
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
@@ -891,6 +986,7 @@
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1с - Путь к серверу 1с
// PathServerRAS - Путь к серверу RAS
// Auth - Признак аутентификации
//
// Возвращаемое значение:
@@ -898,17 +994,20 @@
//
Функция НовыйКомандаЗаблокироватьБазу(ПараметрыБазы, Релиз) Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("block");
ДобавитьОпцию(КомандаЗапуска, "--NameDB", ПараметрыБазы.ИмяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrLogin1c", ПараметрыБазы.ИмяПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswd1c", ПараметрыБазы.ПарольПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--PathServer1с", ПараметрыБазы.КластерСерверов);
ДобавитьОпцию(КомандаЗапуска, "--PathServerRAS", ПараметрыБазы.ПутьКСерверуRAS);
ДобавитьОпцию(КомандаЗапуска, "--AccessCode", "Обновление");
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
Возврат КомандаЗапуска
@@ -920,6 +1019,7 @@
// UsrLogin1c - Имя пользователя 1с
// UsrPswd1c - Пароль пользователя 1с
// PathServer1с - Путь к серверу 1с
// PathServerRAS - Путь к серверу RAS
// Auth - Признак аутентификации
//
// Возвращаемое значение:
@@ -927,18 +1027,21 @@
//
Функция НовыйКомандаПингБазы(ПараметрыБазы) Экспорт
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("oscript");
КомандаЗапуска.Добавить(ФайлЗапускаOscript(ПараметрыБазы));
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ФайлЗапускаOscript());
КомандаЗапуска.Добавить("scorpion");
ДобавитьОпцию(КомандаЗапуска, "--NameDB", ПараметрыБазы.ИмяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrLogin1c", ПараметрыБазы.ИмяПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--UsrPswd1c", ПараметрыБазы.ПарольПользователяИнформационнойБазы);
ДобавитьОпцию(КомандаЗапуска, "--PathServer1с", ПараметрыБазы.КластерСерверов);
ДобавитьОпцию(КомандаЗапуска, "--PathServerRAS", ПараметрыБазы.ПутьКСерверуRAS);
ОбернутьОпцииКомандыВЗнакРавно(КомандаЗапуска);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
@@ -955,9 +1058,12 @@
ПараметрыБазы.ИмяJobJenkins
);
КомандаЗапуска = Новый Массив;
КомандаЗапуска = Новый Массив; //Массив Из Строка
КомандаЗапуска.Добавить(ЮрлЗапускаJob);
КомандаЗапуска = СтрСоединить(КомандаЗапуска, " ");
КомандаЗапуска = ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возврат КомандаЗапуска
КонецФункции
@@ -1000,6 +1106,12 @@
КонецФункции
// Добавить опцию.
//
// Параметры:
// КомандаЗапуска - Массив Из Строка
// Опция - Строка
// Значение - Строка
Процедура ДобавитьОпцию(КомандаЗапуска, Опция, Значение)
Если ЗначениеЗаполнено(Значение) Тогда
@@ -1009,9 +1121,9 @@
КонецПроцедуры
Функция ФайлЗапускаOscript(ПараметрыБазы) Экспорт
Функция ФайлЗапускаOscript() Экспорт
Возврат СтрШаблон("%1\main.os", ПараметрыБазы.КаталогDevops);
Возврат "pivo-cli";
КонецФункции
@@ -1032,4 +1144,20 @@
КонецФункции
// Записать команду в журнал регистрации.
//
// Параметры:
// КомандаЗапуска - Массив Из Строка
Процедура ЗаписатьКомандуВЖурналРегистрации(КомандаЗапуска)
Комментарий = Новый Массив; //Массив Из Строка
Для Каждого Элемент Из КомандаЗапуска Цикл
Комментарий.Добавить(?(СтрНайти(Элемент, """")> 0 , Элемент, """" + Элемент + """"));
КонецЦикла;
ЗаписьЖурналаРегистрации("GIT.АргументыКоманды",
УровеньЖурналаРегистрации.Информация, , , СтрСоединить(Комментарий, ","));
КонецПроцедуры
#КонецОбласти

View File

@@ -0,0 +1,21 @@
Функция КомандыЗапускаПеред() Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КомандыКоманды.Команда
|ИЗ
| Справочник.Команды.Команды КАК КомандыКоманды
|ГДЕ
| КомандыКоманды.Ссылка.ПередЗапускомОсновнойКоманды
| И НЕ КомандыКоманды.Ссылка.ПометкаУдаления";
Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Команда");
КонецФункции
Функция КомандыЗапускаПосле() Экспорт
Возврат "";
КонецФункции

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="54a6b6a4-9cbc-4839-a837-cbd74c7fe102">
<name>КомандыЗапускаПриложенияПовтИсп</name>
<synonym>
<key>ru</key>
<value>Команды запуска приложения повт исп</value>
</synonym>
<server>true</server>
<externalConnection>true</externalConnection>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
<returnValuesReuse>DuringSession</returnValuesReuse>
</mdclass:CommonModule>

View File

@@ -78,7 +78,7 @@
Обработчик.ОбщиеДанные = Истина;
Обработчик = Обработчики.Добавить();
Обработчик.Версия = "*";
Обработчик.Версия = "1.0.0.3";
Обработчик.РежимВыполнения = "Оперативно";
Обработчик.Процедура = "ОбновлениеИнформационнойБазыУР.ПервыйЗапуск";
Обработчик.Идентификатор = Новый УникальныйИдентификатор("1c641d92-690b-4ccc-8e31-ac3dcbcc271e");
@@ -283,10 +283,9 @@
Попытка
Константы.ТаскТрекер.Установить(Перечисления.ТаскТрекеры.Предприятие1С);
Константы.УдалитьТаскТрекер.Установить(Перечисления.ТаскТрекеры.Предприятие1С);
Константы.СтратегияЗапускаСкрипта.Установить(Перечисления.СтратегияЗапускаСкрипта.CMD);
//TODO Создание пользователя
//Создание настроек к нему
УправлениеСвойствамиСлужебный.СоздатьПредопределенныеНаборыСвойств();
ЗафиксироватьТранзакцию();

View File

@@ -129,7 +129,7 @@
Результат.Вставить("UserStorageAelita", "");
Результат.Вставить("PathStorageToolsWorld", "");
Результат.Вставить("UserStorageToolsWorld", "");
Результат.Вставить("NewBranche", "");
Результат.Вставить("NewBranch", "");
Результат.Вставить("PathRepository", "");
Результат.Вставить("PathRepositoryMain", "");
@@ -167,14 +167,14 @@
ПараметрыКомандЗапуска.PathRelease = ПараметрыБазы.КаталогСборкиРелиза;
ПараметрыКомандЗапуска.PathStorage = ПараметрыБазы.ПутьКХранилищу;
ПараметрыКомандЗапуска.UserStorage = ПараметрыБазы.ПользовательХранилища;
ПараметрыКомандЗапуска.oscript = КомандыЗапускаПриложения.ФайлЗапускаOscript(ПараметрыБазы);
ПараметрыКомандЗапуска.oscript = КомандыЗапускаПриложения.ФайлЗапускаOscript();
КонецЕсли;
Если ЗначениеЗаполнено(Задача) Тогда
ПараметрыЗадачи = Справочники.Задачи.РеквизитыЗадачи(Задача);
ПараметрыКомандЗапуска.NewBranche = ПараметрыЗадачи.ИмяВетки;
ПараметрыКомандЗапуска.NewBranch = ПараметрыЗадачи.ИмяВетки;
ПараметрыКомандЗапуска.LoadDB = Формат(ПараметрыЗадачи.ДорабатыватьКонфигурацию, "БЛ=false; БИ=true");
ПараметрыКомандЗапуска.NamesDataProcessors = ПараметрыЗадачи.ВнешниеФайлы;
ПараметрыКомандЗапуска.Extensions = ПараметрыЗадачи.Расширения;
@@ -190,6 +190,7 @@
ПараметрыСеанса.ПараметрыКомандЗапуска = Новый ФиксированнаяСтруктура(ПараметрыКомандЗапуска);
КонецПроцедуры
Процедура ИзменитьЗначенияКлючей(НовыеЗначения) Экспорт

View File

@@ -0,0 +1,29 @@
// @strict-types
#Область ПрограммныйИнтерфейс
Процедура ОбновитьДанныеЗадач() Экспорт
ТаблицаЗадач = Справочники.Задачи.НеЗакрытыеЗадачи();
ОбновитьДанныеЗадачПоТаблице(ТаблицаЗадач);
КонецПроцедуры
Процедура ОбновитьДанныеЗадачПоТаблице(ТаблицаЗадач) Экспорт
КонецПроцедуры
Функция СтруктурированныеДанныеПоЗадаче(НомерЗадачи, ТаскТрекер = Неопределено) Экспорт
ДанныеЗаполнения = Справочники.Задачи.НовыйДанныеЗадачи();
ДанныеЗаполнения.Наименование = НомерЗадачи;
ДанныеЗаполнения.Владелец = Справочники.Проекты.НайтиПоНаименованию("CBL");
ДанныеЗаполнения.НомерЗадачи = НомерЗадачи;
ДанныеЗаполнения.ИмяВетки = НомерЗадачи;
Возврат ДанныеЗаполнения;
КонецФункции
#КонецОбласти

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="a594fbd7-f7ac-41cd-afc1-371b94c3db74">
<name>РаботаБезТаскТрекера</name>
<synonym>
<key>ru</key>
<value>Работа без таск трекера</value>
</synonym>
<server>true</server>
</mdclass:CommonModule>

View File

@@ -44,7 +44,7 @@
ДанныеЗаполнения = Новый Структура();
Если Константы.ТаскТрекер.Получить() <> Перечисления.ТаскТрекеры.Bitrix Тогда
Если Константы.УдалитьТаскТрекер.Получить() <> Перечисления.ТаскТрекеры.Bitrix Тогда
Возврат ДанныеЗаполнения;
КонецЕсли;
ИнформацияОЗадаче = ДанныеЗадачиБитрикс(НомерЗадачи);

View File

@@ -244,11 +244,16 @@
Продолжить;
КонецЕсли;
Если Не ПоказыватьЗавершенныеЗадачи И Задача.СтатусЗадачи = Перечисления.СтатусыЗадач.Завершена Тогда
РеквизитыЗадачи = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Задача,
"Наименование, ПодробноеОписание, СтатусЗадачи, ПрефиксВетки");
ЭтоСлужебнаяВетка = Не ЗначениеЗаполнено(РеквизитыЗадачи.ПрефиксВетки);
Если Не ЭтоСлужебнаяВетка И Не ПоказыватьЗавершенныеЗадачи И Задача.СтатусЗадачи = Перечисления.СтатусыЗадач.Завершена Тогда
Продолжить;
КонецЕсли;
Если Не ПоказыватьЧужиеЗадачи И Задача.Ответственный <> Пользователи.АвторизованныйПользователь() Тогда
Если Не ЭтоСлужебнаяВетка И Не ПоказыватьЧужиеЗадачи И Задача.Ответственный <> Пользователи.АвторизованныйПользователь() Тогда
Продолжить;
КонецЕсли;
@@ -256,9 +261,6 @@
Если СтрокаВеток = Неопределено Тогда
СтрокаВеток = ТаблицаВеток.Добавить();
КонецЕсли;
РеквизитыЗадачи = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Задача,
"Наименование, ПодробноеОписание, СтатусЗадачи, ПрефиксВетки");
СтрокаВеток.Номер = ИмяВетки;
СтрокаВеток.Задача = Задача;
@@ -372,6 +374,7 @@
Ветка = СтрЗаменить(Ветка, "remotes/origin/", "");
ДанныеИзНазванияВетки = СтрРазделить(Ветка, "/");
Если ДанныеИзНазванияВетки.Количество() = 1 Тогда
РазобраннаяВетка.НомерЗадачиРазработки = ДанныеИзНазванияВетки[0];
Возврат РазобраннаяВетка;
КонецЕсли;
@@ -453,7 +456,9 @@
КомандаЗапуска = КомандыЗапускаПриложения.НовыйКомандаСозданияРепозитория(ПараметрыБазы, НастройкиПользователя, ПараметрыЗадачи);
ПараметрыЗапуска = СтратегияЗапускаСкриптов.ПодготовкаПараметровИЗапускПриложения(База, КомандаЗапуска);
ДанныеЛогов = СтратегияЗапускаСкриптов.ДанныеЛоговСОжиданием(ПараметрыЗапуска);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ДанныеЛогов.ПодробныйЛогСтрокой);
КонецПроцедуры
Процедура ОбновитьРепозиторийИзУдаленного(База, ТекущийКаталог) Экспорт
@@ -614,6 +619,8 @@
КонецФункции
Функция АвторКоммита(НастройкиПользователя) Экспорт
Возврат СтрШаблон("%1 <%2>", НастройкиПользователя.ИмяПользователяGit, НастройкиПользователя.ПочтаПользователяGit);
@@ -626,6 +633,29 @@
КонецФункции
Процедура УстановитьОскрипт() Экспорт
//Скачать ОВМ
//Путь прибит гвоздями в лучших традициях)
ИмяФайла = ПолучитьИмяВременногоФайла("exe");
АдресФайла = "https://github.com/oscript-library/ovm/releases/latest/download/ovm.exe";
Ответ = КоннекторHTTP.Get(АдресФайла);
Данные = КоннекторHTTP.КакДвоичныеДанные(Ответ);
Данные.Записать(ИмяФайла);
КомандыЗапуска = Новый Массив; // Массив из Строка
КомандыЗапуска.Добавить(СтрШаблон("%1 install dev", ИмяФайла));
КомандыЗапуска.Добавить(СтрШаблон("%1 use --install dev", ИмяФайла));
КомандыЗапуска.Добавить("opm install pivo-cli");
База = Справочники.Базы.БазаТекущегоПользователя();
ПараметрыЗапуска = СтратегияЗапускаСкриптов.ПодготовкаПараметровИЗапускПриложения(База, КомандыЗапуска);
ДанныеЛогов = СтратегияЗапускаСкриптов.ДанныеЛоговСОжиданием(ПараметрыЗапуска);
УдалитьФайлы(ИмяФайла);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции

View File

@@ -324,7 +324,7 @@
СтраницаМерджРеквестов = СтраницаМерджРеквестов + 1;
МерджРеквесты = МерджРеквесты(НастройкиПроекта.URLGitLab,
НастройкиПользователя.ТокенGitLab,
НастройкиПользователя.ТокенGit,
"merged",
XMLСтрока(ДатаНачала),
XMLСтрока(ДатаОкончания),

View File

@@ -61,7 +61,7 @@
КонецПроцедуры
Функция ПодготовкаПараметровИЗапускПриложения(База, Команда, ТекущийКаталог = Неопределено, ДополнительнаяКоманда = "") Экспорт
Функция ПодготовкаПараметровИЗапускПриложения(База, Команда, ТекущийКаталог = Неопределено) Экспорт
СтрокаКоманды = СобраннаяСтрокаКоманды(Команда);
@@ -186,14 +186,31 @@
КонецФункции
// Собранная строка команды.
//
// Параметры:
// Команда Команда
//
// Возвращаемое значение:
// Строка - Собранная строка команды
Функция СобраннаяСтрокаКоманды(Команда)
КомандыДоОсновной = КомандыЗапускаПриложенияПовтИсп.КомандыЗапускаПеред();
Если ТипЗнч(Команда) = Тип("Массив") Тогда
Команда = СтрСоединить(Команда, " && ");
КомандаСтрокой = СтрСоединить(Команда, " && ");
Иначе
КомандаСтрокой = Команда;
КонецЕсли;
Возврат Команда;
Если КомандыДоОсновной.Количество() Тогда
КомандаСтрокой = СтрШаблон("%1 && %2", СтрСоединить(КомандыДоОсновной, " && "), КомандаСтрокой);
КонецЕсли;
Возврат КомандаСтрокой;
КонецФункции
#КонецОбласти

View File

@@ -28,7 +28,11 @@
// * ЭтоГруппа - Булево - Истина, если набор свойств является группой.
//
Процедура ПриПолученииПредопределенныхНаборовСвойств(Наборы) Экспорт
//Управление разработкой
Набор = Наборы.Строки.Добавить();
Набор.Имя = "Справочник_Задачи";
Набор.Идентификатор = Новый УникальныйИдентификатор("3bf06771-775a-406a-a5dc-45a10e98914f");
КонецПроцедуры

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="988526b3-55af-43db-98ce-891aeef841f6">
<name>OVM</name>
<synonym>
<key>ru</key>
<value>OVM</value>
</synonym>
<templateType>BinaryData</templateType>
</mdclass:CommonTemplate>

Binary file not shown.

View File

@@ -682,6 +682,7 @@
<roles>Role.ЧтениеРассылокОтчетов</roles>
<roles>Role.ЧтениеУчетныхЗаписейЭлектроннойПочты</roles>
<roles>Role.ЧтениеШаблоновСообщений</roles>
<commonTemplates>CommonTemplate.OVM</commonTemplates>
<commonTemplates>CommonTemplate.RDPClient_Макет</commonTemplates>
<commonTemplates>CommonTemplate.ДанныеПечатиОбщиеРеквизиты</commonTemplates>
<commonTemplates>CommonTemplate.ДанныеПечатиРегистрСимволов</commonTemplates>
@@ -792,6 +793,7 @@
<commonModules>CommonModule.КалендарныеГрафикиПереопределяемый</commonModules>
<commonModules>CommonModule.КалендарныеГрафикиСлужебный</commonModules>
<commonModules>CommonModule.КомандыЗапускаПриложения</commonModules>
<commonModules>CommonModule.КомандыЗапускаПриложенияПовтИсп</commonModules>
<commonModules>CommonModule.КоннекторHTTP</commonModules>
<commonModules>CommonModule.КонструкторФормул</commonModules>
<commonModules>CommonModule.КонструкторФормулВызовСервера</commonModules>
@@ -880,6 +882,7 @@
<commonModules>CommonModule.ПользователиСлужебныйКлиент</commonModules>
<commonModules>CommonModule.ПользователиСлужебныйКлиентСервер</commonModules>
<commonModules>CommonModule.ПользователиСлужебныйПовтИсп</commonModules>
<commonModules>CommonModule.РаботаБезТаскТрекера</commonModules>
<commonModules>CommonModule.РаботаСBitrix</commonModules>
<commonModules>CommonModule.РаботаСGit</commonModules>
<commonModules>CommonModule.РаботаСGitAPI</commonModules>
@@ -1018,7 +1021,6 @@
<commonModules>CommonModule.ШаблоныСообщенийСервер</commonModules>
<commonModules>CommonModule.ШаблоныСообщенийСлужебный</commonModules>
<commonModules>CommonModule.ШаблоныСообщенийСлужебныйПовтИсп</commonModules>
<commonModules>CommonModule.РаботаБезТаскТрекера</commonModules>
<exchangePlans>ExchangePlan.ОбновлениеИнформационнойБазы</exchangePlans>
<xDTOPackages>XDTOPackage.ApdexExport</xDTOPackages>
<xDTOPackages>XDTOPackage.ApdexExport_1_0_0_2</xDTOPackages>
@@ -1215,6 +1217,7 @@
<commonCommands>CommonCommand.СнимкиОтчетовДляАвтономногоРежима</commonCommands>
<commonCommands>CommonCommand.СозданиеНачальногоОбразаСФайлами</commonCommands>
<commonCommands>CommonCommand.СозданиеСвязанныхОбъектов</commonCommands>
<commonCommands>CommonCommand.УстановитьОскрипт</commonCommands>
<commonCommands>CommonCommand.УстановитьРасширениеДляРаботыС1СПредприятием</commonCommands>
<commonCommands>CommonCommand.ФайлыВТоме</commonCommands>
<commandGroups>CommandGroup.Взаимодействия</commandGroups>
@@ -1296,9 +1299,9 @@
<constants>Constant.СпособХраненияФайлов</constants>
<constants>Constant.СтандартныеПодсистемыВАвтономномРежиме</constants>
<constants>Constant.СтратегияЗапускаСкрипта</constants>
<constants>Constant.ТаскТрекер</constants>
<constants>Constant.ТокенBitrix</constants>
<constants>Constant.УдалитьНастройкиВходаПользователей</constants>
<constants>Constant.УдалитьТаскТрекер</constants>
<constants>Constant.УчетнаяЗаписьДляВосстановленияПароля</constants>
<constants>Constant.ФайлЗапускаOscript</constants>
<constants>Constant.ХранитьИсториюРассылкиОтчетов</constants>
@@ -1369,6 +1372,7 @@
<commonForms>CommonForm.ФормаВариантаОтчета</commonForms>
<commonForms>CommonForm.ФормаВыбораЦвета</commonForms>
<commonForms>CommonForm.ФормаВыбораШрифта</commonForms>
<commonForms>CommonForm.ФормаНастроекКонфигурации</commonForms>
<commonForms>CommonForm.ФормаНастроекОтчета</commonForms>
<commonForms>CommonForm.ФормаОтчета</commonForms>
<commonForms>CommonForm.ФормаПоиска</commonForms>
@@ -1395,6 +1399,7 @@
<catalogs>Catalog.Кластеры</catalogs>
<catalogs>Catalog.КлючевыеОперации</catalogs>
<catalogs>Catalog.КлючиДоступа</catalogs>
<catalogs>Catalog.Команды</catalogs>
<catalogs>Catalog.МакетыПечатныхФорм</catalogs>
<catalogs>Catalog.НаборыГруппДоступа</catalogs>
<catalogs>Catalog.НаборыДополнительныхРеквизитовИСведений</catalogs>
@@ -1420,8 +1425,10 @@
<catalogs>Catalog.СтадииКанбан</catalogs>
<catalogs>Catalog.СтраныМира</catalogs>
<catalogs>Catalog.СтроковыеКонтактыВзаимодействий</catalogs>
<catalogs>Catalog.ТаскТрекеры</catalogs>
<catalogs>Catalog.ТелефонныйЗвонокПрисоединенныеФайлы</catalogs>
<catalogs>Catalog.ТомаХраненияФайлов</catalogs>
<catalogs>Catalog.УчетныеДанные</catalogs>
<catalogs>Catalog.УчетныеДанныеRDP</catalogs>
<catalogs>Catalog.УчетныеЗаписиСинхронизацииФайлов</catalogs>
<catalogs>Catalog.УчетныеЗаписиЭлектроннойПочты</catalogs>
@@ -1430,7 +1437,6 @@
<catalogs>Catalog.ШаблоныСообщенийПрисоединенныеФайлы</catalogs>
<catalogs>Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы</catalogs>
<catalogs>Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы</catalogs>
<catalogs>Catalog.ТаскТрекеры</catalogs>
<documents>Document.Встреча</documents>
<documents>Document.ЗапланированноеВзаимодействие</documents>
<documents>Document.Релиз</documents>
@@ -1493,6 +1499,7 @@
<enums>Enum.ТипыОтчетов</enums>
<enums>Enum.ТипыПредопределенныхПапокПисем</enums>
<enums>Enum.ТипыТекстовЭлектронныхПисем</enums>
<enums>Enum.ТипыУчетныхДанных</enums>
<enums>Enum.ТипыФайловДляВстроенногоРедактора</enums>
<enums>Enum.ТипыХраненияФайлов</enums>
<enums>Enum.УровниПроизводительности</enums>
@@ -1528,6 +1535,7 @@
<dataProcessors>DataProcessor.ЗаменаИОбъединениеЭлементов</dataProcessors>
<dataProcessors>DataProcessor.ЗаполнениеГрафиковРаботы</dataProcessors>
<dataProcessors>DataProcessor.ЗаполнениеКалендарныхГрафиков</dataProcessors>
<dataProcessors>DataProcessor.Запуск</dataProcessors>
<dataProcessors>DataProcessor.КомандыПроцессов</dataProcessors>
<dataProcessors>DataProcessor.КонструкторФормул</dataProcessors>
<dataProcessors>DataProcessor.МенеджерРелизов</dataProcessors>
@@ -1548,6 +1556,7 @@
<dataProcessors>DataProcessor.РезультатыОбновленияПрограммы</dataProcessors>
<dataProcessors>DataProcessor.РекомендацияПоПовышениюСкоростиРаботы</dataProcessors>
<dataProcessors>DataProcessor.Сканирование</dataProcessors>
<dataProcessors>DataProcessor.Терминал</dataProcessors>
<dataProcessors>DataProcessor.УдалениеПомеченныхОбъектов</dataProcessors>
<dataProcessors>DataProcessor.УправлениеЗадачами</dataProcessors>
<informationRegisters>InformationRegister.БезопасноеХранилищеДанных</informationRegisters>

File diff suppressed because one or more lines are too long

View File

@@ -5,15 +5,16 @@
<valueManagerType typeId="63db6607-e70c-485a-bb6a-bb656fe05a34" valueTypeId="d6e87819-7d10-4f5e-b9b0-96c56ad18da2"/>
<valueKeyType typeId="179daaab-5bfe-4ff5-af87-f5b75e4cd968" valueTypeId="abec02e3-d081-43f1-a730-7cafd45f57ef"/>
</producedTypes>
<name>ТаскТрекер</name>
<name>УдалитьТаскТрекер</name>
<synonym>
<key>ru</key>
<value>Таск трекер</value>
<value>Удалить таск трекер</value>
</synonym>
<type>
<types>EnumRef.ТаскТрекеры</types>
</type>
<useStandardCommands>true</useStandardCommands>
<defaultForm>CommonForm.ФормаНастроекКонфигурации</defaultForm>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<dataLockControlMode>Managed</dataLockControlMode>

View File

@@ -425,7 +425,7 @@
Для Каждого НомерМерджРеквеста Из НомераПолученныхМерджРеквестов Цикл
Апрувы = РаботаСGitLab.ДанныеАпруваМерджРеквеста(НастройкиПроекта.URLGitLab,
НастройкиПользователя.ТокенGitLab,
НастройкиПользователя.ТокенGit,
НомерМерджРеквеста,
НастройкиПроекта.ИДПроектаGitLab
);
@@ -735,7 +735,7 @@
НастройкиПроекта = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Проект, "Репозиторий, ИДПроектаРепозитория");
РаботаСGitLab.ОдобритьЗаявкуНаСлияние(НастройкиПроекта.URLGitLab,
НастройкиПользователя.ТокенGitLab,
НастройкиПользователя.ТокенGit,
ВыделенныйНомерМерджРеквеста,
НастройкиПроекта.ИДПроектаGitLab);
@@ -911,7 +911,7 @@
ТаблицаИзмененныхОбъектов = РаботаСGitLab.ИзмененияПоМерджРеквесту(НастройкиПроекта.URLGitLab,
НастройкиПроекта.ИДПроектаGitLab,
НомерМерджРеквеста,
НастройкиПользователя.ТокенGitLab
НастройкиПользователя.ТокенGit
);
Для Каждого СтрокаТаблицыЗначенийИзмененныеОбъекты Из ТаблицаИзмененныхОбъектов Цикл

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,489 @@
&НаКлиенте
Процедура ОсновнаяПапкаНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ДиалогОткрытия = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога);
ДиалогОткрытия.Каталог = ОсновнаяПапка;
ДиалогОткрытия.Заголовок = "Выберите каталог основной папки проекта";
ДиалогОткрытия.Показать(Новый ОписаниеОповещения("ВыборКаталога_Завершение", ЭтотОбъект, "" ));
Модифицированность = Истина;
КонецПроцедуры
&НаКлиенте
Процедура ВыборКаталога_Завершение(Результат, Параметр) Экспорт
Если Результат = Неопределено Тогда
Возврат;
КонецЕсли;
ОсновнаяПапка = Результат[0];
КонецПроцедуры
&НаКлиенте
Процедура СчитатьСписокБаз(Команда)
СписокБазДанных.Очистить();
Если ОбщегоНазначенияКлиент.ИнформационнаяБазаФайловая() Тогда
ВременныйКаталог = КаталогДокументов();
ВременныйКаталог = СтрЗаменить(ВременныйКаталог, "\Documents\", "\AppData\Roaming\1C\1CEStart\");
Иначе
ВременныйКаталог = КаталогВременныхФайлов();
ВременныйКаталог = СтрЗаменить(ВременныйКаталог, "\Local\Temp\", "\Roaming\1C\1CEStart\");
КонецЕсли;
ИмяФайла = "ibases.v8i";
ФайлЗапуска1С = Новый Файл(ВременныйКаталог + ИмяФайла);
Если ФайлЗапуска1С.Существует() Тогда
ТекстовыйДокИзФайла = Новый ТекстовыйДокумент;
ТекстовыйДокИзФайла.Прочитать(ФайлЗапуска1С.ПолноеИмя);
//Текст = ТекстовыйДокИзФайла.ПолучитьТекст();
СлБаза = Ложь;
Для НомерСтроки = 1 По ТекстовыйДокИзФайла.КоличествоСтрок() Цикл
СтрокаТекста = ТекстовыйДокИзФайла.ПолучитьСтроку(НомерСтроки);
Если Лев(СтрокаТекста, 1) = "[" Тогда //Это имя в списке
СтруктураБазы = Новый Структура;
СтруктураБазы.Вставить("ИмяБазы", Сред(СтрокаТекста, 2, СтрДлина(СтрокаТекста) - 2));
ИначеЕсли СтрЧислоВхождений(СтрокаТекста, "Connect=File=") > 0 Тогда
Путь = СтрЗаменить(СтрокаТекста, "Connect=File=", "");
Путь = СтрЗаменить(Путь, ";", "");
Путь = СтрЗаменить(Путь, """", "");
СтруктураБазы.Вставить("ПутьКБазе", Путь);
//Проверяем добавляемую строку
Если СписокБазДанных.НайтиСтроки(Новый Структура("ИмяБазы", СтруктураБазы.ИмяБазы)).Количество() = 0 Тогда
СтрокаБазы = СписокБазДанных.Добавить();
ЗаполнитьЗначенияСвойств(СтрокаБазы, СтруктураБазы);
КонецЕсли;
ИначеЕсли СтрЧислоВхождений(СтрокаТекста, "Connect=Srvr=") > 0 Тогда
Путь = СтрЗаменить(СтрокаТекста, "Connect=Srvr=", "");
Путь = СтрЗаменить(Путь, "Ref=", "");
Путь = СтрЗаменить(Путь, """", "");
Пути = СтрРазделить(Путь, ";", Ложь);
СтруктураБазы.Вставить("Сервер", Пути[0]);
СтруктураБазы.Вставить("ИмяНаСервере", Пути[1]);
Если СписокБазДанных.НайтиСтроки(Новый Структура("ИмяБазы", СтруктураБазы.ИмяБазы)).Количество() = 0 Тогда
СтрокаБазы = СписокБазДанных.Добавить();
ЗаполнитьЗначенияСвойств(СтрокаБазы, СтруктураБазы);
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура СоздатьПользлователяНаСервере()
Пользователи.СоздатьАдминистратора();
НовыйПользователь = Справочники.Пользователи.НайтиПоНаименованию(ИмяПользователя, Истина);
Если НовыйПользователь.Пустая() Тогда
НовыйПользователь = СоздатьАдминистратора();
КонецЕсли;
НастройкиПользователя = НастройкаПоВладельцу(НовыйПользователь);
Если НастройкиПользователя.Пустая() Тогда
НастройкиПользователяОбъект = Справочники.НастройкиПользователей.СоздатьЭлемент();
НастройкиПользователяОбъект.Заполнить(Неопределено); //TODO Реализовать автозаполнение настроек по умолчанию
НастройкиПользователяОбъект.Владелец = НовыйПользователь;
НастройкиПользователяОбъект.ИмяПользователяGit = ИмяПользователяGit;
НастройкиПользователяОбъект.ПочтаПользователяGit = ПочтаПользователяGit;
НастройкиПользователяОбъект.ТокенGit = ТокенGit;
НастройкиПользователяОбъект.Проект = Справочники.Проекты.Неопределен;
НастройкиПользователяОбъект.Записать();
НастройкиПользователя = НастройкиПользователяОбъект.Ссылка;
КонецЕсли;
КонецПроцедуры
Функция НастройкаПоВладельцу(Владелец)
Результат = Справочники.НастройкиПользователей.ПустаяСсылка();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| НастройкиПользователей.Ссылка КАК Ссылка
|ИЗ
| Справочник.НастройкиПользователей КАК НастройкиПользователей
|ГДЕ
| НастройкиПользователей.Владелец = &Владелец";
Запрос.УстановитьПараметр("Владелец", Владелец);
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Результат = Выборка.Ссылка;
КонецЦикла;
Возврат Результат;
КонецФункции
&НаКлиенте
Процедура СоздатьПользлователя(Команда)
СоздатьПользлователяНаСервере();
ПоказатьЗначение(, НастройкиПользователя);
КонецПроцедуры
&НаСервере
Процедура СоздатьПроектНаСервере()
Проект = Справочники.Проекты.НайтиПоНаименованию(НазваниеПроекта);
Если НЕ Проект.Пустая() Тогда
Возврат;
КонецЕсли;
ПроектОбъект = Справочники.Проекты.СоздатьЭлемент();
ПроектОбъект.Заполнить(Неопределено); //TODO Реализовать автозаполнение настроек по умолчанию
ПроектОбъект.Наименование = НазваниеПроекта;
Если ТипРепозитория = Перечисления.ТипРепозитория.GitHub Тогда
Авторизация = СтрШаблон("://%1@%2", ИмяПользователяGit, ТокенGit);//TODO Безопасное хранилище паролей
ИначеЕсли ТипРепозитория = Перечисления.ТипРепозитория.GitLab Тогда
Авторизация = СтрШаблон("://%1@%2", ИмяПользователяGit, ТокенGit);
Иначе
//Не обработанные типы репозиториев
КонецЕсли;
ПроектОбъект.PathGitClone = СтрЗаменить(ПутьКGitCloneHTTP, "://", Авторизация);
ПроектОбъект.КаталогРепозиториевПроекта = ОсновнаяПапка;
ПроектОбъект.КаталогРепозиториевШара = ОсновнаяПапка;
ПроектОбъект.КаталогСборкиРелиза = ОсновнаяПапка + "\release";
ПроектОбъект.ТаскТрекер =ТаскТрекер;
ПроектОбъект.ТипРепозитория = ТипРепозитория;
ПроектОбъект.ИДПроектаРепозитория = ИДПроектаРепозитория;
ПроектОбъект.РежимРаботыКонфигурации = Перечисления.РежимыРаботыКонфигурации.Пакетный;
ПроектОбъект.Записать();
Проект = ПроектОбъект.Ссылка;
НастройкаОбъект = НастройкиПользователя.ПолучитьОбъект();
НастройкаОбъект.Проект = Проект;
НастройкаОбъект.Записать();
СоздатьКаталог(ПроектОбъект.КаталогСборкиРелиза);
КонецПроцедуры
&НаКлиенте
Процедура СоздатьПроект(Команда)
СоздатьПроектНаСервере();
ПоказатьЗначение(, Проект);
КонецПроцедуры
&НаКлиенте
Процедура ДобавитьБазы(Команда)
ВыделенныеСтроки = Элементы.СписокБазДанных.ВыделенныеСтроки;
МассивБаз = Новый Массив;
Для Каждого СтрокаБазы Из ВыделенныеСтроки Цикл
ДанныеСтроки = Элементы.СписокБазДанных.ДанныеСтроки(СтрокаБазы);
Если Не ЗначениеЗаполнено(ДанныеСтроки.Сервер) Тогда
Сообщить("База не серверная созданна не будет" + ДанныеСтроки.ИмяБазы);
Продолжить;
КонецЕсли;
СтруктураСервернойБазы = СтруктураСервернойБазы();
ЗаполнитьЗначенияСвойств(СтруктураСервернойБазы, ДанныеСтроки);
МассивБаз.Добавить(СтруктураСервернойБазы);
КонецЦикла;
ДобавитьБазыНаСервере(МассивБаз);
ПоказатьЗначение(, Кластер);
КонецПроцедуры
&НаКлиенте
Функция СтруктураСервернойБазы()
Возврат Новый Структура("ИмяБазы, Сервер, ИмяНаСервере");
КонецФункции
&НаСервере
Процедура ДобавитьБазыНаСервере(МассивБаз)
Для Каждого Элемент Из МассивБаз Цикл
Кластер = Справочники.Кластеры.НайтиПоНаименованию(Элемент.Сервер, Истина);
Если Кластер.Пустая() Тогда
КластерОбъект = Справочники.Кластеры.СоздатьЭлемент();
КластерОбъект.ИмяАгентаБазы = "GitAgent";
КластерОбъект.КаталогRAS = "GitAgent";
КластерОбъект.НомерВерсииПлатформы = "8.3"; //TODO
КластерОбъект.ПутьКПапкеДевопс = ОсновнаяПапка;
КластерОбъект.ПутьКШаре = ОсновнаяПапка;
КластерОбъект.ФайлЗапускаOscript = "";//
//КластерОбъект.ФайлЗапускаOscript = "";//Добавить путь к rac
КластерОбъект.Наименование = Элемент.Сервер;
КластерОбъект.СерверПубликации = Элемент.Сервер;
КластерОбъект.Записать();
Кластер = КластерОбъект.Ссылка;
КонецЕсли;
База = Справочники.Базы.НайтиПоНаименованию(Элемент.ИмяНаСервере, Истина);
Если База.Пустая() Тогда
БазаОбъект = Справочники.Базы.СоздатьЭлемент();
БазаОбъект.Владелец = Проект;
БазаОбъект.БазаПубликации = Элемент.ИмяНаСервере;
БазаОбъект.КластерСерверов = Кластер;
БазаОбъект.Наименование = Элемент.ИмяНаСервере;
БазаОбъект.ТипБазы = Перечисления.ТипыБаз.ТестоваяБаза;
БазаОбъект.Ответственный = НовыйПользователь;
БазаОбъект.ИмяИнформационнойБазы = Элемент.ИмяНаСервере;
БазаОбъект.ИмяПользователяИнформационнойБазы = "1с";
БазаОбъект.ПарольПользователяИнформационнойБазы = "1с";
БазаОбъект.Записать();
Сообщить("Создана база " + БазаОбъект.Ссылка);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура УстановитьОскриптНаСервере()
ИмяФайла = ПолучитьИмяВременногоФайла("exe");
//TODO Реализация загрузки с интернета
// АдресФайла = "https://github.com/oscript-library/ovm/releases/latest/download/ovm.exe";
// НовыеПараметры = КоннекторHTTP.НовыеПараметры();
// НовыеПараметры.Заголовки.Вставить("User-Agent",
// "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36");
// НовыеПараметры.Таймаут = 90;
// Ответ = КоннекторHTTP.Get(АдресФайла,,НовыеПараметры);
// Данные = КоннекторHTTP.КакДвоичныеДанные(Ответ);
Макет = ПолучитьОбщийМакет("OVM");
Макет.Записать(ИмяФайла);
ПараметрыЗапускаПрограммы = ФайловаяСистема.ПараметрыЗапускаПрограммы();
ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокВывода = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокОшибок = Истина;
Результат = ФайловаяСистема.ЗапуститьПрограмму(СтрШаблон("%1 install dev", ИмяФайла), ПараметрыЗапускаПрограммы);
ОбщегоНазначения.СообщитьПользователю(Результат.ПотокВывода);
Если ЗначениеЗаполнено(Результат.ПотокОшибок) Тогда
ОбщегоНазначения.СообщитьПользователю(Результат.ПотокОшибок);
КонецЕсли;
Результат = ФайловаяСистема.ЗапуститьПрограмму(СтрШаблон("%1 use --install dev", ИмяФайла), ПараметрыЗапускаПрограммы);
ОбщегоНазначения.СообщитьПользователю(Результат.ПотокВывода);
Если ЗначениеЗаполнено(Результат.ПотокОшибок) Тогда
ОбщегоНазначения.СообщитьПользователю(Результат.ПотокОшибок);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьОскрипт(Команда)
УстановитьОскриптНаСервере();
КонецПроцедуры
&НаСервере
Процедура СоздатьРепозиторииКБазамНаСервере()
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Базы.Ссылка КАК Ссылка
|ИЗ
| Справочник.Базы КАК Базы";
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
КаталогРепозиторияБазыШара = РаботаСGit.КаталогРепозиторияБазыШара(Выборка.Ссылка);
КаталогРепозиторияБазы = РаботаСGit.КаталогРепозиторияБазы(Выборка.Ссылка);
Если ПустаяСтрока(КаталогРепозиторияБазыШара) Тогда
Ошибка = "Ошибка: Не указан каталог репозиториев в проекте!";
Сообщить(Ошибка);
Продолжить;
КонецЕсли;
Если Не РаботаСGit.КаталогРепозиторияСуществует(КаталогРепозиторияБазыШара) Тогда
Если Не РаботаСGit.СоздатьКаталогРепозитория(КаталогРепозиторияБазыШара) Тогда
Ошибка = СтрШаблон("Ошибка: Не удалось создать каталог репозитория базы: %1", КаталогРепозиторияБазыШара);
Сообщить(Ошибка);
Продолжить;
КонецЕсли;
КонецЕсли;
Если Не РаботаСGit.ПустойРепозиторий(КаталогРепозиторияБазыШара) Тогда
Ошибка = СтрШаблон("Ошибка! В каталоге есть файлы: %1%2Перед созданием репозитория каталог должен быть пустым.", КаталогРепозиторияБазы, Символы.ПС);
Сообщить(Ошибка);
Продолжить;
КонецЕсли;
РаботаСGit.СоздатьНовыйРепозиторийВГИТ(Выборка.Ссылка, НовыйПользователь);
КонецЦикла;
КонецПроцедуры
&НаКлиенте
Процедура СоздатьРепозиторииКБазам(Команда)
СоздатьРепозиторииКБазамНаСервере();
КонецПроцедуры
&НаСервере
Процедура УстановитьКЛИНаСервере()
ПараметрыЗапускаПрограммы = ФайловаяСистема.ПараметрыЗапускаПрограммы();
ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокВывода = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокОшибок = Истина;
Результат = ФайловаяСистема.ЗапуститьПрограмму("opm install pivo-cli", ПараметрыЗапускаПрограммы);
ОбщегоНазначения.СообщитьПользователю(Результат.ПотокВывода);
Если ЗначениеЗаполнено(Результат.ПотокОшибок) Тогда
ОбщегоНазначения.СообщитьПользователю(Результат.ПотокОшибок);
КонецЕсли;
Результат = ФайловаяСистема.ЗапуститьПрограмму("pivo-cli", ПараметрыЗапускаПрограммы);
ОбщегоНазначения.СообщитьПользователю(Результат.ПотокВывода);
Если ЗначениеЗаполнено(Результат.ПотокОшибок) Тогда
ОбщегоНазначения.СообщитьПользователю(Результат.ПотокОшибок);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьКЛИ(Команда)
УстановитьКЛИНаСервере();
КонецПроцедуры
// Используется при обновлении и начальном заполнении информационной базы.
// 1) Создает первого администратора и сопоставляет его с новым или существующим
// пользователем в справочнике Пользователи.
// 2) Сопоставляет администратора, указанного в параметре ПользовательИБ, с новым или
// существующим пользователем в справочнике Пользователи.
//
// Параметры:
// ПользовательИБ - Неопределено - создать первого администратора, если не существует.
// - ПользовательИнформационнойБазы - используется, когда нужно сопоставить
// существующего администратора с новым или существующим пользователем
// в справочнике Пользователи.
//
// Возвращаемое значение:
// Неопределено - первый администратор уже существует.
// СправочникСсылка.Пользователи - пользователь в справочнике, с которым сопоставлен созданный
// первый администратор или указанный существующий.
//
Функция СоздатьАдминистратора(ПользовательИБ = Неопределено) Экспорт
Если Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
ТекстОшибки = НСтр("ru = 'Справочник Пользователи недоступен в неразделенном режиме.'");
ВызватьИсключение ТекстОшибки;
КонецЕсли;
УстановитьПривилегированныйРежим(Истина);
// Добавление администратора.
Если ПользовательИБ = Неопределено Тогда
ПользовательИБ = ПользователиИнформационнойБазы.СоздатьПользователя();
ПользовательИБ.Имя = ИмяПользователя;
ПользовательИБ.ПолноеИмя = ПользовательИБ.Имя;
ПользовательИБ.Роли.Очистить();
ПользовательИБ.Роли.Добавить(Метаданные.Роли.ПолныеПрава);
РольАдминистратораСистемы = Метаданные.Роли.АдминистраторСистемы;
Если НЕ ПользовательИБ.Роли.Содержит(РольАдминистратораСистемы) Тогда
ПользовательИБ.Роли.Добавить(РольАдминистратораСистемы);
КонецЕсли;
ПользовательИБ.Записать();
Иначе
Если Не ПользователиСлужебный.РолиАдминистратораДоступны(ПользовательИБ) Тогда
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Невозможно создать пользователя в справочнике для пользователя
|информационной базы ""%1"",
|так как у него нет ролей Полные права и Администратор системы.
|
|Вероятно, пользователь был создан в конфигураторе.
|Для автоматического создания пользователя в справочнике требуется
|назначить ему роли Полные права и Администратор системы.'"),
Строка(ПользовательИБ));
ВызватьИсключение ТекстОшибки;
КонецЕсли;
Пользователи.НайтиНеоднозначныхПользователейИБ(Неопределено, ПользовательИБ.УникальныйИдентификатор);
КонецЕсли;
НачатьТранзакцию();
Попытка
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.Пользователи");
ЭлементБлокировки.УстановитьЗначение("ИдентификаторПользователяИБ", ПользовательИБ.УникальныйИдентификатор);
ЭлементБлокировки = Блокировка.Добавить("Справочник.ВнешниеПользователи");
ЭлементБлокировки.УстановитьЗначение("ИдентификаторПользователяИБ", ПользовательИБ.УникальныйИдентификатор);
ЭлементБлокировки = Блокировка.Добавить("Справочник.Пользователи");
ЭлементБлокировки.УстановитьЗначение("Наименование", ПользовательИБ.ПолноеИмя);
Блокировка.Заблокировать();
Пользователь = Неопределено;
ПользователиСлужебный.ПользовательПоИдентификаторуСуществует(ПользовательИБ.УникальныйИдентификатор,, Пользователь);
Если ТипЗнч(Пользователь) = Тип("СправочникСсылка.ВнешниеПользователи") Тогда
ВнешнийПользовательОбъект = Пользователь.ПолучитьОбъект();
ВнешнийПользовательОбъект.ИдентификаторПользователяИБ = Неопределено;
ОбновлениеИнформационнойБазы.ЗаписатьДанные(ВнешнийПользовательОбъект);
Пользователь = Неопределено;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(Пользователь) Тогда
Пользователь = Справочники.Пользователи.НайтиПоНаименованию(ПользовательИБ.ПолноеИмя);
Если ЗначениеЗаполнено(Пользователь)
И ЗначениеЗаполнено(Пользователь.ИдентификаторПользователяИБ)
И Пользователь.ИдентификаторПользователяИБ <> ПользовательИБ.УникальныйИдентификатор
И ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(
Пользователь.ИдентификаторПользователяИБ) <> Неопределено Тогда
Пользователь = Неопределено;
КонецЕсли;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(Пользователь) Тогда
Пользователь = Справочники.Пользователи.СоздатьЭлемент();
ПользовательСоздан = Истина;
Иначе
Пользователь = Пользователь.ПолучитьОбъект();
ПользовательСоздан = Ложь;
КонецЕсли;
Пользователь.Наименование = ПользовательИБ.ПолноеИмя;
ОписаниеПользователяИБ = Новый Структура;
ОписаниеПользователяИБ.Вставить("Действие", "Записать");
ОписаниеПользователяИБ.Вставить("УникальныйИдентификатор", ПользовательИБ.УникальныйИдентификатор);
Пользователь.Записать();
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
Возврат Пользователь.Ссылка;
КонецФункции

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:DataProcessor xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="9c70198e-e182-413c-ac1a-6584b2a37935">
<producedTypes>
<objectType typeId="5ed4878e-d660-45f9-a79b-5aafc2f44533" valueTypeId="44fb20d2-5404-4803-96e4-98279233406f"/>
<managerType typeId="49c74d9e-8ffd-4f77-a987-fc6d0b018b37" valueTypeId="71bbf820-6cea-4335-bcf4-1eda16a89b61"/>
</producedTypes>
<name>Запуск</name>
<synonym>
<key>ru</key>
<value>Запуск</value>
</synonym>
<useStandardCommands>true</useStandardCommands>
<defaultForm>DataProcessor.Запуск.Form.Форма</defaultForm>
<forms uuid="93e87f01-b54d-48d7-9436-55b3f608427e">
<name>Форма</name>
<synonym>
<key>ru</key>
<value>Форма</value>
</synonym>
<usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes>
</forms>
</mdclass:DataProcessor>

View File

@@ -15,7 +15,7 @@
ПараметрыЗапроса.Вставить("per_page", 60);
Заголовки = Новый Соответствие;
Заголовки.Вставить("PRIVATE-TOKEN", НастройкиПользователя.ТокенGitLab);
Заголовки.Вставить("PRIVATE-TOKEN", НастройкиПользователя.ТокенGit);
Заголовки.Вставить("content-type", "application/json");
ДополнительныеПараметры = Новый Структура;
@@ -96,13 +96,13 @@
СписокКоммитов = РаботаСGitLab.СписокКоммитовПоМерджРеквесту(НастройкиПроекта.URLGitLab,
НастройкиПроекта.ИДПроектаGitLab,
НомерМерджРеквеста,
НастройкиПользователя.ТокенGitLab
НастройкиПользователя.ТокенGit
);
ТаблицаИзмененныхОбъектов = РаботаСGitLab.ИзмененияПоКоммиту(НастройкиПроекта.URLGitLab,
НастройкиПроекта.ИДПроектаGitLab,
НомерМерджРеквеста,
НастройкиПользователя.ТокенGitLab,
НастройкиПользователя.ТокенGit,
СписокКоммитов
);

View File

@@ -0,0 +1,538 @@
<?xml version="1.0" encoding="UTF-8"?>
<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form">
<items xsi:type="form:FormGroup">
<name>Группа3</name>
<id>31</id>
<items xsi:type="form:FormGroup">
<name>Группа1</name>
<id>11</id>
<items xsi:type="form:FormField">
<name>Команда</name>
<id>1</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>КомандаЗапуска</segments>
</dataPath>
<extendedTooltip>
<name>КомандаРасширеннаяПодсказка</name>
<id>3</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>КомандаКонтекстноеМеню</name>
<id>2</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>true</horizontalStretch>
<wrap>true</wrap>
<extendedEditMultipleValues>true</extendedEditMultipleValues>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:Button">
<name>ФормаВыполнитьСервер</name>
<id>9</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ФормаВыполнитьСерверРасширеннаяПодсказка</name>
<id>10</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>Hyperlink</type>
<commandName>Form.Command.ВыполнитьСервер</commandName>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<picture xsi:type="core:PictureRef">
<picture>CommonPicture.СтрелкаВправоЗеленая</picture>
</picture>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>ФормаВыполнитьКлиент</name>
<id>7</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ФормаВыполнитьКлиентРасширеннаяПодсказка</name>
<id>8</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>Hyperlink</type>
<commandName>Form.Command.ВыполнитьКлиент</commandName>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>Группа1РасширеннаяПодсказка</name>
<id>12</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<group>AlwaysHorizontal</group>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Вывод</name>
<id>4</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Вывод</segments>
</dataPath>
<extendedTooltip>
<name>ВыводРасширеннаяПодсказка</name>
<id>6</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ВыводКонтекстноеМеню</name>
<id>5</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>true</horizontalStretch>
<wrap>true</wrap>
<multiLine>true</multiLine>
<extendedEditMultipleValues>true</extendedEditMultipleValues>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Группа3</value>
</title>
<width>70</width>
<horizontalStretch>true</horizontalStretch>
<extendedTooltip>
<name>Группа3РасширеннаяПодсказка</name>
<id>32</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<group>Vertical</group>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>Группа2</name>
<id>29</id>
<items xsi:type="form:Table">
<name>Команды</name>
<id>13</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>ИсторияКоманд</segments>
</dataPath>
<titleLocation>None</titleLocation>
<items xsi:type="form:FormField">
<name>КомандыЗначение</name>
<id>26</id>
<title>
<key>ru</key>
<value>Команда</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>ИсторияКоманд.Value</segments>
</dataPath>
<extendedTooltip>
<name>КомандыЗначениеРасширеннаяПодсказка</name>
<id>28</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>КомандыЗначениеКонтекстноеМеню</name>
<id>27</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>EnterOnInput</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<commandBarLocation>None</commandBarLocation>
<autoCommandBar>
<name>КомандыКоманднаяПанель</name>
<id>14</id>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<searchStringAddition>
<name>КомандыСтрокаПоиска</name>
<id>17</id>
<extendedTooltip>
<name>КомандыСтрокаПоискаРасширеннаяПодсказка</name>
<id>19</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>КомандыСтрокаПоискаКонтекстноеМеню</name>
<id>18</id>
<autoFill>true</autoFill>
</contextMenu>
<source>Команды</source>
<extInfo xsi:type="form:SearchStringAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchStringAddition>
<viewStatusAddition>
<name>КомандыСостояниеПросмотра</name>
<id>23</id>
<extendedTooltip>
<name>КомандыСостояниеПросмотраРасширеннаяПодсказка</name>
<id>25</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>КомандыСостояниеПросмотраКонтекстноеМеню</name>
<id>24</id>
<autoFill>true</autoFill>
</contextMenu>
<type>ViewStatusAddition</type>
<source>Команды</source>
<extInfo xsi:type="form:ViewStatusAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</viewStatusAddition>
<searchControlAddition>
<name>КомандыУправлениеПоиском</name>
<id>20</id>
<extendedTooltip>
<name>КомандыУправлениеПоискомРасширеннаяПодсказка</name>
<id>22</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>КомандыУправлениеПоискомКонтекстноеМеню</name>
<id>21</id>
<autoFill>true</autoFill>
</contextMenu>
<type>SearchControlAddition</type>
<source>Команды</source>
<extInfo xsi:type="form:SearchControlAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchControlAddition>
<extendedTooltip>
<name>КомандыРасширеннаяПодсказка</name>
<id>16</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>КомандыКонтекстноеМеню</name>
<id>15</id>
<autoFill>true</autoFill>
</contextMenu>
<changeRowSet>true</changeRowSet>
<changeRowOrder>true</changeRowOrder>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<autoMaxRowsCount>true</autoMaxRowsCount>
<selectionMode>MultiRow</selectionMode>
<header>true</header>
<headerHeight>1</headerHeight>
<footerHeight>1</footerHeight>
<horizontalScrollBar>AutoUse</horizontalScrollBar>
<verticalScrollBar>AutoUse</verticalScrollBar>
<horizontalLines>true</horizontalLines>
<verticalLines>true</verticalLines>
<searchOnInput>Auto</searchOnInput>
<initialListView>Auto</initialListView>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<fileDragMode>AsFileRef</fileDragMode>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Группа2</value>
</title>
<extendedTooltip>
<name>Группа2РасширеннаяПодсказка</name>
<id>30</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<group>HorizontalIfPossible</group>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<autoCommandBar>
<name>ФормаКоманднаяПанель</name>
<id>-1</id>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<saveWindowSettings>true</saveWindowSettings>
<autoTitle>true</autoTitle>
<autoUrl>true</autoUrl>
<group>AlwaysHorizontal</group>
<autoFillCheck>true</autoFillCheck>
<allowFormCustomize>true</allowFormCustomize>
<enabled>true</enabled>
<showTitle>true</showTitle>
<showCloseButton>true</showCloseButton>
<attributes>
<name>Объект</name>
<id>1</id>
<valueType>
<types>DataProcessorObject.Терминал</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
<main>true</main>
</attributes>
<attributes>
<name>КомандаЗапуска</name>
<title>
<key>ru</key>
<value>Команда запуска</value>
</title>
<id>2</id>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<attributes>
<name>Вывод</name>
<title>
<key>ru</key>
<value>Вывод</value>
</title>
<id>3</id>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<attributes>
<name>ИсторияКоманд</name>
<title>
<key>ru</key>
<value>История команд</value>
</title>
<id>4</id>
<valueType>
<types>ValueList</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
<extInfo xsi:type="form:ValueListExtInfo">
<itemValueType/>
</extInfo>
</attributes>
<formCommands>
<name>ВыполнитьКлиент</name>
<title>
<key>ru</key>
<value>Клиент</value>
</title>
<id>1</id>
<toolTip>
<key>ru</key>
<value>Выполнить клиент</value>
</toolTip>
<use>
<common>true</common>
</use>
<picture xsi:type="core:PictureRef">
<picture>CommonPicture.СтрелкаВправоЗеленая</picture>
</picture>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>ВыполнитьКлиент</name>
</handler>
</action>
<currentRowUse>Auto</currentRowUse>
</formCommands>
<formCommands>
<name>ВыполнитьСервер</name>
<title>
<key>ru</key>
<value>Сервер</value>
</title>
<id>2</id>
<toolTip>
<key>ru</key>
<value>Выполнить сервер</value>
</toolTip>
<use>
<common>true</common>
</use>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>ВыполнитьСервер</name>
</handler>
</action>
<currentRowUse>Auto</currentRowUse>
</formCommands>
<commandInterface>
<navigationPanel/>
<commandBar/>
</commandInterface>
<extInfo xsi:type="form:ObjectFormExtInfo"/>
</form:Form>

View File

@@ -0,0 +1,44 @@
&НаКлиенте
Процедура ВыполнитьКлиент(Команда)
ПараметрыЗапускаПрограммы = ФайловаяСистемаКлиент.ПараметрыЗапускаПрограммы();
ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокВывода = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокОшибок = Истина;
ПараметрыЗапускаПрограммы.Оповещение = Новый ОписаниеОповещения("ПриПолученииРезультатаЗапускаПрограммы", ЭтотОбъект);
ФайловаяСистемаКлиент.ЗапуститьПрограмму(КомандаЗапуска, ПараметрыЗапускаПрограммы);
КонецПроцедуры
&НаКлиенте
Процедура ПриПолученииРезультатаЗапускаПрограммы(Результат, ДополнительныеПараметры) Экспорт
КодВозврата = Результат.КодВозврата;
ПотокВывода = Результат.ПотокВывода;
ПотокОшибок = Результат.ПотокОшибок;
Вывод = ПотокВывода + Символы.ПС + ПотокОшибок;
КонецПроцедуры
&НаСервере
Процедура ВыполнитьСерверНаСервере()
ПараметрыЗапускаПрограммы = ФайловаяСистема.ПараметрыЗапускаПрограммы();
ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокВывода = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокОшибок = Истина;
Результат = ФайловаяСистема.ЗапуститьПрограмму(КомандаЗапуска, ПараметрыЗапускаПрограммы);
ПотокВывода = Результат.ПотокВывода;
ПотокОшибок = Результат.ПотокОшибок;
Вывод = ПотокВывода + Символы.ПС + ПотокОшибок;
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьСервер(Команда)
ИсторияКоманд.Вставить(0, КомандаЗапуска, КомандаЗапуска, , );
ВыполнитьСерверНаСервере();
КонецПроцедуры

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:DataProcessor xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="7100a79f-f0ee-40dd-9756-96cfed4a1d89">
<producedTypes>
<objectType typeId="0385b8f9-821b-4823-9d81-7915cc353cd8" valueTypeId="a6302f3c-f75f-45da-a771-031735b5d30a"/>
<managerType typeId="23f9b3a1-54e0-4144-837e-61617cb599c0" valueTypeId="3484919c-e54f-45a6-a8f5-c5473945bbc0"/>
</producedTypes>
<name>Терминал</name>
<synonym>
<key>ru</key>
<value>Терминал</value>
</synonym>
<useStandardCommands>true</useStandardCommands>
<defaultForm>DataProcessor.Терминал.Form.Форма</defaultForm>
<forms uuid="54882814-5b98-4d9d-86ae-db34354afb54">
<name>Форма</name>
<synonym>
<key>ru</key>
<value>Форма</value>
</synonym>
<usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes>
</forms>
</mdclass:DataProcessor>

View File

@@ -10,7 +10,7 @@
Элементы.МенеджерРелизов.Доступность = Истина;
КонецЕсли;
//TODO полумать с инициализацией а старте
//ИнициализироватьЗначенияФормы(Истина);
ИнициализироватьЗначенияФормы(Истина);
ДанныеСохраненныхЛогов = НовыйДанныеСохраненныхЛогов();
КонецПроцедуры
@@ -206,7 +206,7 @@
&НаСервереБезКонтекста
Функция ЭтоГитхаб(Проект)
Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Проект, "ТипРепозитория") = Перечисления.ТипРепозитория.GitHub;
Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Проект, "ТипРепозитория") = Перечисления.ТипРепозитория.GitHub;
КонецФункции
@@ -456,7 +456,7 @@
КонецФункции
&НаКлиенте
Процедура ЗапускПриложения(КомандаЗапуска, ДополнительнаяКоманда = "")
Процедура ЗапускПриложения(КомандаЗапуска)
Если Не ПроверитьЗаполнение() Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Не все обязательные реквизиты заполнены'"));
@@ -471,19 +471,19 @@
//ЛогиПодробные = "";
КонецЕсли;
ЗапускПриложенияНаСервере(КомандаЗапуска, ДополнительнаяКоманда);
ЗапускПриложенияНаСервере(КомандаЗапуска);
ПодключитьОбработчикОжидания("ВыводЛогов", 2);
КонецПроцедуры
&НаСервере
Процедура ЗапускПриложенияНаСервере(КомандаЗапуска, ДополнительнаяКоманда = "")
Процедура ЗапускПриложенияНаСервере(КомандаЗапуска)
Индикатор = 0;
Элементы.СтатусВыполнения.Заголовок = СтрШаблон(НСтр("ru = 'Начало - %1'"), БазовыйТекстСообщения);
КаталогРепозиторияБазы = РаботаСGit.КаталогРепозиторияБазы(База);
ПараметрыЗапуска = СтратегияЗапускаСкриптов.ПодготовкаПараметровИЗапускПриложения(База, КомандаЗапуска,, ДополнительнаяКоманда);
ПараметрыЗапуска = СтратегияЗапускаСкриптов.ПодготовкаПараметровИЗапускПриложения(База, КомандаЗапуска);
КонецПроцедуры
@@ -607,6 +607,7 @@
КонецПроцедуры
// Получить ветки на сервере.
&НаСервере
Процедура ПолучитьВеткиНаСервере()
@@ -679,11 +680,13 @@
БазовыйТекстСообщения = СтрШаблон(" создание мердж-ревеста: %1'", ОтобразитьТекущуюЗадачу(ТекущаяЗадача));
Если ЭтоГитхаб(Проект) Тогда
ДополнительнаяКоманда = СтрШаблон("set GH_TOKEN=%1", ТекущиеНастройкиПользователя.ТокенGit);
ДополнительнаяКоманда = СтрШаблон("set GH_TOKEN=%1", ТекущиеНастройкиПользователя.ТокенGit);
КомандаЗапуска = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(КомандаЗапуска);
КомандаЗапуска.Вставить(0, ДополнительнаяКоманда);;
КонецЕсли;
ЗапускПриложения(КомандаЗапуска, ДополнительнаяКоманда);
ЗапускПриложения(КомандаЗапуска);
ЗапуститьПайплайн(ТекущаяЗадача)

View File

@@ -0,0 +1,21 @@
#Область ПрограммныйИнтерфейс
Функция МенеджерТаскТрекера(ТипТаскТрекера) Экспорт
МенеджерТаскТрекера = Неопределено;
Если ТипТаскТрекера = Bitrix Тогда
МенеджерТаскТрекера = РаботаСBitrix;
ИначеЕсли ТипТаскТрекера = Предприятие1С Тогда
МенеджерТаскТрекера = РаботаСПредприятие1С;
ИначеЕсли ТипТаскТрекера = Отсутствует Тогда
МенеджерТаскТрекера = РаботаБезТаскТрекера;
Иначе
ВызватьИсключение НСтр("ru = 'Невалидный формат работы Таск трекеров'");
КонецЕсли;
Возврат МенеджерТаскТрекера;
КонецФункции
#КонецОбласти

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Enum xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="cfdde0c4-7402-4165-b183-d3d2fc71d68d">
<producedTypes>
<refType typeId="67e6ae31-d6f2-46e7-91c4-1bcef53d3ab8" valueTypeId="498d302a-b791-4192-b0ed-771cc5243716"/>
<listType typeId="02ce8014-8bcd-451b-aa3c-7c5a1d418cd2" valueTypeId="fd14e4d6-ba05-4847-ba7d-7434a75c5ce3"/>
<managerType typeId="4a6991dc-f082-421f-935c-1b8ef432d316" valueTypeId="e3448a07-41af-4f1a-8cd6-916c624b9605"/>
</producedTypes>
<name>ТипыУчетныхДанных</name>
<synonym>
<key>ru</key>
<value>Типы учетных данных</value>
</synonym>
<quickChoice>true</quickChoice>
<choiceMode>BothWays</choiceMode>
<enumValues uuid="ad9910ba-9893-465f-bac3-7d5de275e018">
<name>Basic</name>
<synonym>
<key>ru</key>
<value>Basic</value>
</synonym>
</enumValues>
</mdclass:Enum>

View File

@@ -2342,7 +2342,7 @@
</right>
</object>
<object>
<name>Constant.ТаскТрекер</name>
<name>Constant.УдалитьТаскТрекер</name>
<right>
<name>Read</name>
<value>true</value>

View File

@@ -801,7 +801,7 @@
</right>
</object>
<object>
<name>Constant.ТаскТрекер</name>
<name>Constant.УдалитьТаскТрекер</name>
<right>
<name>Read</name>
<value>true</value>

View File

@@ -84,4 +84,11 @@
<content>InformationRegister.ЗадачиРелиза</content>
<content>InformationRegister.ОчередьАктуализацииДопОбработок</content>
<content>Catalog.ТаскТрекеры</content>
<content>CommonCommand.УстановитьОскрипт</content>
<content>CommonModule.КомандыЗапускаПриложенияПовтИсп</content>
<content>Catalog.Команды</content>
<content>Catalog.УчетныеДанные</content>
<content>Enum.ТипыУчетныхДанных</content>
<content>DataProcessor.Запуск</content>
<content>DataProcessor.Терминал</content>
</mdclass:Subsystem>