Added documentation
BIN
docs/mock-gui/docs/img/mockgui_custombuild1.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
docs/mock-gui/docs/img/mockgui_custombuild2.png
Normal file
|
After Width: | Height: | Size: 116 KiB |
BIN
docs/mock-gui/docs/img/mockgui_list10.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
docs/mock-gui/docs/img/mockgui_projects30.png
Normal file
|
After Width: | Height: | Size: 56 KiB |
BIN
docs/mock-gui/docs/img/mockgui_projects31.png
Normal file
|
After Width: | Height: | Size: 79 KiB |
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 83 KiB |
@@ -9,6 +9,7 @@ git clone https://dev.brepo.ru/brepo/mock-gui.git
|
|||||||
cd mock-gui/install
|
cd mock-gui/install
|
||||||
ansible-galaxy install -r requirements.yml
|
ansible-galaxy install -r requirements.yml
|
||||||
ansible-playbook mock-gui-install.yml --ask-become-pass
|
ansible-playbook mock-gui-install.yml --ask-become-pass
|
||||||
|
ansible-playbook docker_install.yml --ask-become-pass (если планируются сборки не только с помощью mock, но и с помощью docker)
|
||||||
перезагрузить систему
|
перезагрузить систему
|
||||||
systemctl enable mockgui
|
systemctl enable mockgui
|
||||||
systemctl start mockgui
|
systemctl start mockgui
|
||||||
@@ -29,6 +30,7 @@ git clone https://dev.brepo.ru/brepo/mock-gui.git
|
|||||||
cd mock-gui/install
|
cd mock-gui/install
|
||||||
ansible-galaxy install -r requirements.yml
|
ansible-galaxy install -r requirements.yml
|
||||||
ansible-playbook mock-gui-install.yml --ask-become-pass
|
ansible-playbook mock-gui-install.yml --ask-become-pass
|
||||||
|
ansible-playbook docker_install.yml --ask-become-pass (если планируются сборки не только с помощью mock, но и с помощью docker)
|
||||||
перезагрузить систему
|
перезагрузить систему
|
||||||
sudo systemctl enable mockgui
|
sudo systemctl enable mockgui
|
||||||
sudo systemctl start mockgui
|
sudo systemctl start mockgui
|
||||||
|
|||||||
@@ -35,7 +35,7 @@
|
|||||||
Необходимо из выпадающего списка выбрать один - нажать кнопку "Добавить".
|
Необходимо из выпадающего списка выбрать один - нажать кнопку "Добавить".
|
||||||
|
|
||||||
Тк выглядит добавленный в проект новый git репозиторий.
|
Тк выглядит добавленный в проект новый git репозиторий.
|
||||||

|

|
||||||
|
|
||||||
Пустые репозиторий без исходников добавить в проект нельзя!
|
Пустые репозиторий без исходников добавить в проект нельзя!
|
||||||
|
|
||||||
@@ -50,6 +50,19 @@
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
`Добавить бинарный пакет в репозиторий` - позволяет добавить rpm пакет собранный не в текущей сборочной системе в репозиторий. Например, если проект собирается в gitlab в рамках процесса CI/CD и потом может быть добавлен в репозиторий и опубликован.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Для добавления пакета необходимо или выбрать стандартный каталог, в который будет загружен пакет `Выберите каталог куда будет помещен файл:` или
|
||||||
|
ввести свое название каталога в поле `Создать новый каталог с именем (может быть пустым, если уже существует нужный каталог):` и в поле загрузки файла выбрать rpm файл.
|
||||||
|
|
||||||
|
`Посмотреть список загруженных rpm пакетов` - позволяет получить список пакетов, которые были загруженны через меню `Добавить бинарный пакет в репозиторий`
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Система ведет учет загруженных сторонних пакетов, список пакетов позволяет выбрат пакет и просмотреть его седрежимое.
|
||||||
|
|
||||||
`Список всех пакетов` - список пакетов, собранных для данного проекта (неподписанных пакетов)
|
`Список всех пакетов` - список пакетов, собранных для данного проекта (неподписанных пакетов)
|
||||||
|
|
||||||

|

|
||||||
@@ -168,6 +181,48 @@ gpgcheck=1" > /etc/yum.repos.d/project_test1.repo
|
|||||||
|
|
||||||
* отобразить список сборок для проекта и текущего git репозитория
|
* отобразить список сборок для проекта и текущего git репозитория
|
||||||
|
|
||||||
|
* в последней версии MockGUI появился дополнительный значек - задать нестандартную/кастомную сборку
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Данный значек позволяет изменить процедуру сборки. На текущий момент, существуюи множестов систем сборки rpm пакетов, а так же проекты, которые собирают проект в docker без создания src.rpm файла, что затрудняет сборку с помощью mock который требует spec файл и подготвленные исходные файлы.
|
||||||
|
Елсли же проект собирается в докере и при завершении сборки может предоставить rpm файлы, то такой проект можно собрать с помощью кастомной сборки, пример такого проекта представлен ниже.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Такой репозиторий добавлеятся как обычно, но потом на против репозитория необходимо нажать на значек `молоток`, откроется форма ввода:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
В открывшемся окне необходимо ввести имя скрипта, он будет создан в момент сборки и не должен совпадать с именем существующих файлов в проекте.
|
||||||
|
Так же необходимо ввести описание скрипта и непосредственнос сам код скрипта.
|
||||||
|
|
||||||
|
Для примера:
|
||||||
|
|
||||||
|
```
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
RESULT="$1"
|
||||||
|
if [ -z "$RESULT" ]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
bash -x package_preparer.sh prepare "almalinux:9"
|
||||||
|
|
||||||
|
cp -r tmpbuild/*.* "${RESULT}/"
|
||||||
|
```
|
||||||
|
|
||||||
|
В первом параметре скрипту передается каталог, куда нужно сохранять собранные rpm пакеты и логи. Система из автоматом подхватит и положит в репозиторий.
|
||||||
|
Единственно важное замечание, данный скрипт работает в реальной сборочной системе, оэтому все что он сделает, затронет реальную систему, скрипт работает не в изоляции. Поэтому рекомендуется в скрипте запускать Docker контейнер и все манипуляции производить в контейнере и по завершению манипуляций удалять контейнер.
|
||||||
|
|
||||||
|
Поэтому для поддержки такой опции в проекте есть скрипт установки Docker, для его запуска необходимо выполнить команду из корня проекта:
|
||||||
|
|
||||||
|
```
|
||||||
|
ansible-playbook install/docker_install.yml --ask-become-pass
|
||||||
|
```
|
||||||
|
|
||||||
|
Для того, чтоб проект отвязать от кастомной сборки, нужно на странице кастомной сборки нажать кнопку `Удалить` и в появившемся подтверждающем окне ввести имя скрипта, для подтверждения удаления. После этого гит проект будет отвязан он кастомной сборки и будет собираться в mock.
|
||||||
|
|
||||||
Если нажать на имя git репозитория в списке, то можно просмотреть его содержимое, т.е список файлов:
|
Если нажать на имя git репозитория в списке, то можно просмотреть его содержимое, т.е список файлов:
|
||||||
|
|
||||||

|

|
||||||