You've already forked gitmanager
mirror of
https://github.com/Untru/gitmanager.git
synced 2025-08-09 21:37:16 +02:00
174
README.md
174
README.md
@@ -1,24 +1,134 @@
|
||||
## GitManager
|
||||
Что это и зачем?
|
||||
|
||||
Изначально была цель дать пользователю простой нитерфейс для работы с 1с по методологии Git Flow. Решение представляет из себя 3 коомпонента:
|
||||
* GitManager
|
||||
* GitAgent
|
||||
* Cli приложение (https://github.com/Untru/pivo-cli)
|
||||
|
||||
GitManager и GitAgent Это одна и та жа конфигурация. Идея сделать GitAgent родилась изза того что по сети сборка и разборка исходников работает очень долго, по этому основная база отправляет команды в GitAgent И он уже запускает скрипты.
|
||||
|
||||
Общая схема работы:
|
||||
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant GitManager as GitManager (Сервер 1)
|
||||
participant GitAgent as GitAgent (Сервер 2)
|
||||
participant PIVO-CLI as CLI (Сервер 2)
|
||||
|
||||
GitManager ->> GitAgent: Отправка команды (pivo-cli)
|
||||
activate GitAgent
|
||||
GitAgent ->> CLI: Запуск команды
|
||||
activate CLI
|
||||
CLI -->> GitAgent: Результат (stdout/stderr)
|
||||
deactivate CLI
|
||||
GitAgent -->> GitManager: Ответ (логи/статус)
|
||||
deactivate GitAgent
|
||||
```
|
||||
|
||||
|
||||
## Старт работы
|
||||
|
||||
Для удобства работы мы сделали скрипт по разворачиванию базы (РазворачиваниеБазы.bat)
|
||||
|
||||
Необходимо заполнить переменные, система сама скачает файл с репозитория и развернет базу на сервере.
|
||||
Основные тесты были с серверной базой, по этому в файловой гарантирвтаь работоспособность нам сложно.
|
||||
<details>
|
||||
<summary><strong> Скрипт </strong></summary>
|
||||
|
||||
|
||||
```bat
|
||||
@echo off
|
||||
chcp 65001 > nul
|
||||
setlocal enabledelayedexpansion
|
||||
|
||||
:: =============================================
|
||||
:: Установка GitManager
|
||||
:: =============================================
|
||||
|
||||
:: Параметры
|
||||
set "GITHUB_URL=https://github.com/Untru/gitmanager/releases/latest/download/GitManager.cf"
|
||||
set "TEMP_FILE=%TEMP%\GitManager.cf"
|
||||
set "DB_SERVER=localhost" :: Измените на свой сервер СУБД при необходимости
|
||||
set "DB_NAME=Name" :: Имя новой базы данных
|
||||
set "DB_USER=postgres" :: Пользователь СУБД
|
||||
set "DB_PWD=postgres" :: Пароль пользователя СУБД
|
||||
set "1C_USER=Администратор" :: Пользователь 1С
|
||||
set "1C_PWD="" :: Пароль 1С (оставьте пустым, если без пароля)
|
||||
set "V8VER=8.3.27.1508" :: Версия 1С
|
||||
|
||||
|
||||
:: Скачиваем файл
|
||||
echo Скачивание GitManager.cf...
|
||||
curl -L -o "%TEMP_FILE%" "%GITHUB_URL%"
|
||||
if %errorlevel% neq 0 (
|
||||
echo Ошибка при скачивании файла.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
echo OK. 1cv8 найден.
|
||||
pause
|
||||
|
||||
:: Создаём и загружаем базу
|
||||
echo Создание базы данных...
|
||||
"%ProgramFiles%\1cv8\%V8VER%\bin\1cv8.exe" createinfobase Srvr=%DB_SERVER%;Ref=%DB_NAME%;SQLSrvr=%DB_SERVER%;DBMS=PostgreSQL;SQLDB=%DB_NAME%;SQLUID=%DB_USER%;SQLPwd=%DB_PWD%;CrSQLDB=y;DB=%DB_NAME% /AddInList %DB_NAME% /UseTemplate "%TEMP_FILE%" /Out"CreateDB-%1.log"
|
||||
@TYPE "CreateDB-%1.log"
|
||||
|
||||
if %errorlevel% neq 0 (
|
||||
echo Ошибка при создании базы данных.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
:: Удаляем временный файл
|
||||
del "%TEMP_FILE%"
|
||||
|
||||
echo База данных "%DB_NAME%" успешно создана и добавлена в список баз.
|
||||
pause
|
||||
```
|
||||
Запусить и наслаждаться
|
||||
</details>
|
||||
|
||||
Для удобста старта работ мы разработали "Начальный помошник", Управление разработкой - > Запуск.
|
||||
Советую пройтись по всем шагам по очередит и заодно изучить что создается,
|
||||
|
||||
<img src="images/image-7.png" width="600" alt="Начальный помощник">
|
||||
|
||||
<img src="images/image-8.png" width="600" alt="Настройки помощника">
|
||||
|
||||
Предусмотренно заполнение пользователей/создание проекта добавление баз и установка oscript
|
||||
|
||||
<details>
|
||||
<summary><strong> Если хотим все заполнять сами </strong></summary>
|
||||
|
||||
Для начала работы необходимо создать пользователя с правами "Администратор", далее необходимо заполнить
|
||||
Настройки пользователя:
|
||||

|
||||
<img src="images/image-1.png" width="600" alt="Настройки пользователя">
|
||||
|
||||
Обязательно необходимо заполнить Проект и токен от внешнего репозитория и так же почту пользователя
|
||||

|
||||
<img src="images/image-2.png" width="600" alt="Настройки пользователя">
|
||||
|
||||
Проект
|
||||
Пример заполнения основных полей
|
||||

|
||||
<img src="images/image-3.png" width="600" alt="Проект">
|
||||
|
||||
После заполнения базы необходимо создать репозиторий по кнопке
|
||||

|
||||
<img src="images/image-4.png" width="600" alt="Создание репозитория">
|
||||
|
||||
Для работы с гитхаб необходимо установить
|
||||
|
||||
[GitHub CLI](https://cli.github.com/)
|
||||
У службы под которой запужена 1с должны быть права на шару папки
|
||||

|
||||
<img src="images/image-5.png" width="600" alt="Права доступа">
|
||||
</details>
|
||||
|
||||
|
||||
Необходимо запустить RAC как службу
|
||||
Сделать это можно с помощью скрипта
|
||||
|
||||
<details>
|
||||
<summary><strong> Скрипт запуска скрапта добавления службы RAS </strong></summary>
|
||||
|
||||
``` bat
|
||||
@echo off
|
||||
@@ -36,8 +146,58 @@ sc delete %SrvcName%
|
||||
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption%
|
||||
```
|
||||
|
||||
Для вывода логов
|
||||
</details>
|
||||
|
||||
Важно, с системе получние настроек для задач
|
||||
|
||||
Для вывода логов от 1command (Блиблиотека запуска команд)
|
||||
Мы можем или зададать переменную окружения
|
||||
|
||||
``` bat
|
||||
set LOGOS_CONFIG=logger.oscript.lib.commands=DEBUG;
|
||||
```
|
||||
|
||||
ОГРАНИЧЕНИЯ !!! Некоторый функционал не работает в WEB Клиенте
|
||||
<img src="images/image-9.png" width="600" alt="Запуск команд">
|
||||
|
||||
|
||||
## Процесс работы
|
||||
|
||||
Каждой базе должен соответствовать своя папочка подключенная к репозиторию, это проверить можно по наличию кнопки создания репозитория
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
Новая задача - >
|
||||

|
||||
Тут есть 3 варианта:
|
||||
* Новая задача - создается новая ветка из ветки Develop
|
||||
* HotFix к задаче - создается новая задача к задаче по ветке main/master, создает новую задачу к текущей
|
||||
* HotFix новая задача - требует наличие задачи в таск трекере
|
||||
|
||||
# Таск трекеры
|
||||
Сейчас поддерживается 2 таск трекера
|
||||
* 1С (только простая загрузка задач)
|
||||
П
|
||||
На входе мы ожидаем JSON
|
||||
|
||||
Работа со структурой
|
||||
{
|
||||
"Исполнитель": "",
|
||||
"Трудозатраты_часов": 0,
|
||||
"Статус": "",
|
||||
"ДатаПринятияВРаботу": "",
|
||||
"Описание_Задачи": "",
|
||||
"Описание_Решения": "",
|
||||
"Приоритет": ,
|
||||
"Очередь":
|
||||
}
|
||||
|
||||
* Битрикс
|
||||
|
||||
|
||||
Использование чужих библиотек
|
||||
- ОПИ
|
||||
|
||||
|
||||
ОГРАНИЧЕНИЯ !!! Некоторый функционал не работает в WEB Клиенте
|
BIN
images/image-10.png
Normal file
BIN
images/image-10.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.1 KiB |
BIN
images/image-11.png
Normal file
BIN
images/image-11.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 33 KiB |
BIN
images/image-7.png
Normal file
BIN
images/image-7.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 55 KiB |
BIN
images/image-8.png
Normal file
BIN
images/image-8.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 33 KiB |
BIN
images/image-9.png
Normal file
BIN
images/image-9.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 38 KiB |
@@ -20,7 +20,7 @@
|
||||
<defaultRoles>Role.АдминистраторСистемы</defaultRoles>
|
||||
<defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles>
|
||||
<vendor>Мир инструментов</vendor>
|
||||
<version>1.0.0.3</version>
|
||||
<version>1.0.1.0</version>
|
||||
<usedMobileApplicationFunctionalities>
|
||||
<functionality>
|
||||
<use>true</use>
|
||||
|
@@ -302,6 +302,61 @@
|
||||
</picture>
|
||||
<representationInContextMenu>Auto</representationInContextMenu>
|
||||
</items>
|
||||
<items xsi:type="form:Button">
|
||||
<name>VSCode</name>
|
||||
<id>188</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<extendedTooltip>
|
||||
<name>VSCodeРасширеннаяПодсказка</name>
|
||||
<id>189</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.VSCode</commandName>
|
||||
<representation>Auto</representation>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<placementArea>UserCmds</placementArea>
|
||||
<picture xsi:type="core:PictureRef">
|
||||
<picture>CommonPicture.Vcs</picture>
|
||||
</picture>
|
||||
<representationInContextMenu>Auto</representationInContextMenu>
|
||||
</items>
|
||||
<items xsi:type="form:Button">
|
||||
<name>ОбновитьНастройки</name>
|
||||
<id>194</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<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>
|
||||
<type>Hyperlink</type>
|
||||
<commandName>Form.Command.ОбновитьНастройки</commandName>
|
||||
<representation>PictureAndText</representation>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<placementArea>UserCmds</placementArea>
|
||||
<representationInContextMenu>Auto</representationInContextMenu>
|
||||
</items>
|
||||
<items xsi:type="form:Button">
|
||||
<name>СправочникБазыАктуализироватьДопОбработки</name>
|
||||
<id>192</id>
|
||||
@@ -334,35 +389,6 @@
|
||||
</picture>
|
||||
<representationInContextMenu>Auto</representationInContextMenu>
|
||||
</items>
|
||||
<items xsi:type="form:Button">
|
||||
<name>VSCode</name>
|
||||
<id>188</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<extendedTooltip>
|
||||
<name>VSCodeРасширеннаяПодсказка</name>
|
||||
<id>189</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.VSCode</commandName>
|
||||
<representation>Auto</representation>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<placementArea>UserCmds</placementArea>
|
||||
<picture xsi:type="core:PictureRef">
|
||||
<picture>CommonPicture.Vcs</picture>
|
||||
</picture>
|
||||
<representationInContextMenu>Auto</representationInContextMenu>
|
||||
</items>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
@@ -3143,6 +3169,26 @@
|
||||
</action>
|
||||
<currentRowUse>Auto</currentRowUse>
|
||||
</formCommands>
|
||||
<formCommands>
|
||||
<name>ОбновитьНастройки</name>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Обновить настройки</value>
|
||||
</title>
|
||||
<id>18</id>
|
||||
<use>
|
||||
<common>true</common>
|
||||
</use>
|
||||
<picture xsi:type="core:PictureRef">
|
||||
<picture>CommonPicture.ОжидаемаяДлительнаяОперация16</picture>
|
||||
</picture>
|
||||
<action xsi:type="form:FormCommandHandlerContainer">
|
||||
<handler>
|
||||
<name>ОбновитьНастройки</name>
|
||||
</handler>
|
||||
</action>
|
||||
<currentRowUse>Auto</currentRowUse>
|
||||
</formCommands>
|
||||
<commandInterface>
|
||||
<navigationPanel/>
|
||||
<commandBar/>
|
||||
|
@@ -305,6 +305,11 @@
|
||||
УстановитьЗаголовокПоЗадачеНаСервере(База, ТекущаяЗадача);
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ОбновитьНастройки(Команда)
|
||||
ОбновитьНастройкиНаСервере();
|
||||
КонецПроцедуры
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработчикиСобытийЭлементовТаблицыФормыЗадачи
|
||||
@@ -1170,4 +1175,11 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
&НаСервере
|
||||
Процедура ОбновитьНастройкиНаСервере()
|
||||
|
||||
ОбновитьПовторноИспользуемыеЗначения();
|
||||
|
||||
КонецПроцедуры
|
||||
#КонецОбласти
|
47
РазворачиваниеБазы.bat
Normal file
47
РазворачиваниеБазы.bat
Normal file
@@ -0,0 +1,47 @@
|
||||
@echo off
|
||||
chcp 65001 > nul
|
||||
setlocal enabledelayedexpansion
|
||||
|
||||
:: =============================================
|
||||
:: Установка GitManager
|
||||
:: =============================================
|
||||
|
||||
:: Параметры
|
||||
set "GITHUB_URL=https://github.com/Untru/gitmanager/releases/latest/download/GitManager.cf"
|
||||
set "TEMP_FILE=%TEMP%\GitManager.cf"
|
||||
set "DB_SERVER=localhost" :: Измените на свой сервер СУБД при необходимости
|
||||
set "DB_NAME=GM6" :: Имя новой базы данных
|
||||
set "DB_USER=postgres" :: Пользователь СУБД
|
||||
set "DB_PWD=postgres" :: Пароль пользователя СУБД
|
||||
set "1C_USER=Администратор" :: Пользователь 1С
|
||||
set "1C_PWD="" :: Пароль 1С (оставьте пустым, если без пароля)
|
||||
set "V8VER=8.3.27.1508" :: Версия 1С
|
||||
|
||||
|
||||
:: Скачиваем файл
|
||||
echo Скачивание GitManager.cf...
|
||||
curl -L -o "%TEMP_FILE%" "%GITHUB_URL%"
|
||||
if %errorlevel% neq 0 (
|
||||
echo Ошибка при скачивании файла.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
echo OK. 1cv8 найден.
|
||||
pause
|
||||
|
||||
:: Создаём и загружаем базу
|
||||
echo Создание базы данных...
|
||||
"%ProgramFiles%\1cv8\%V8VER%\bin\1cv8.exe" createinfobase Srvr=%DB_SERVER%;Ref=%DB_NAME%;SQLSrvr=%DB_SERVER%;DBMS=PostgreSQL;SQLDB=%DB_NAME%;SQLUID=%DB_USER%;SQLPwd=%DB_PWD%;CrSQLDB=y;DB=%DB_NAME% /AddInList %DB_NAME% /UseTemplate "%TEMP_FILE%" /Out"CreateDB-%1.log"
|
||||
@TYPE "CreateDB-%1.log"
|
||||
|
||||
if %errorlevel% neq 0 (
|
||||
echo Ошибка при создании базы данных.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
:: Удаляем временный файл
|
||||
del "%TEMP_FILE%"
|
||||
|
||||
echo База данных "%DB_NAME%" успешно создана и добавлена в список баз.
|
||||
pause
|
Reference in New Issue
Block a user