Войти

Работа с Витриной через Datamart Studio. Как обновлять компоненты Витрины?

Дата актуализации: 27.07.2026.
Причина актуализации: добавлен блок: Что делать, если возникли ошибки после обновлении репозиториев?


  Внимание!

 Данный раздел наполняется в ходе консультационной поддержки участников СМЭВ. Рекомендуем при решении ваших задач опираться на официальную документацию и рассматривать данный раздел как информационную помощь к ней.


Полное обновление вольюмов Nexus и Gitea в работающей Студии

Вольюмы Nexus и Gitea, в которых хранятся бандлы приложений и пакеты для них, регулярно обновляются, поэтому рекомендуется проверять наличие свежих версий и добавлять в Студию именно их. В процессе работы со Студией также периодически возникает необходимость обновлять вольюмы Nexus и Gitea.

Порядок действий для обновления вольюмов:

1)  На сервере со Студией перейдите в её директорию:

sudo su - <USER>
cd /var/studio

2)  Остановите контейнеры Nexus и Gitea следующими командами:

docker-compose -f docker-compose.datamart.yaml stop nexus docker-compose -f
docker-compose.datamart.yaml stop gitea 

3)  Перейдите в директорию /volumes и удалите каталоги nexus и gitea следующими командами:

cd /var/studio/volumes
rm -rf ./nexus
rm -rf ./gitea

4)  Находясь в директории /volumes, загрузите новые архивы Nexus и Gitea. Пример команды:

wget --no-check-certificate <путь до архива>/<имя архива>

5)  Распакуйте загруженные архивы. Примеры команд:

tar xzvf nexus_vol_2026-***.tgz
tar xzvf gitea_vol_2026-***.tgz

6)  Вернитесь в директорию Студии и запустите контейнеры следующими командами:

cd ..
chown -R 200 volumes/nexus/ && docker-compose -f docker-compose.datamart.yaml up -d —force-recreate nexus
chown -R 200 volumes/gitea/ && docker-compose -f docker-compose.datamart.yaml up -d —force-recreate gitea 

7)  После выполнения вышеуказанных действий на сервере перейдите в Студию и обновите репозитории, согласно следующему разделу данной статьи.


Загрузка/обновление репозиториев

Обновите локальное хранилище репозиториев, чтобы добавить в Студию все доступные репозитории. Для этого выполните следующие действия:

1. Раскройте меню Рабочие пространства, для этого щелкните по значку человечка справа (см. Рисунок 1).

Рисунок 1 — Первый вход в Студию: карточка организации

2. В меню Рабочие пространства выберите Управление ресурсами (см. Рисунок 2).

Рисунок 2 — Рабочие пространства Студии

Слева отобразится панель Управление ресурсами, иконка с человечком окрасится в голубой цвет (см. Рисунок 3) – это означает, что Студия активировала рабочее пространство Управление ресурсами.

Рисунок 3 — Иконка рабочего пространства 

3. На панели Управление ресурсами выберите раздел Репозитории. (см. Рисунок 4).

Рисунок 4 — Datamart Studio. Панель «Управление ресурсами»

В результате откроется карточка Репозитории, в которой отображается список доступных хранилищ репозиториев. Если в Студию еще не добавлено ни одно хранилище, то список пуст.

  Примечание

 Для одновременного обновления нескольких хранилищ выберите в списке нужные (см. Рисунок 5) и нажмите «Обновить».

Рисунок 5 — Datamart Studio. Карточка «Репозитории»

4. Перейдите в карточку Хранилища репозиториев (см. Рисунок 6).

Рисунок 6 — Datamart Studio. Управление репозиториями

5. В карточке Хранилища репозиториев перейдите в локальный репозиторий Студии – Локальный Gitea (см. Рисунок 7).

Рисунок 7 — Datamart Studio. Карточка «Хранилища репозиториев»

6. В карточке локального хранилища репозиториев Локальный Gitea нажмите «Обновить» (см. Рисунок 8).

Рисунок 8 — Datamart Studio. Карточка «Локальный Gitea»

7. В открывшемся окне для выбора типа обновления (см. Рисунок 9) выберите вариант «Получить данные всех репозиториев хранилища», это необходимо для первичной загрузки репозиториев в Студию. В результате запустится загрузка репозиториев. 

  Примечание

 Вариант «Получить данные из новых репозиториев» потребуется в дальнейшем для добавления новых репозиториев.

Рисунок 9 — Datamart Studio. Окно выбора типа обновления

В процессе выполнения загрузки в правом нижнем углу карточки будут отображаться уведомления (см. Рисунок 10). По окончании загрузки уведомления перестанут отображаться.

Рисунок 10 — Datamart Studio. Карточка «Локальный Gitea»

  Примечание

 Если потребуется добавить новые репозитории в локальное хранилище (Локальный Gitea), воспользуйтесь инструкцией по добавлению репозитория в Локальный Gitea из файла-архива. В дальнейшем по нажатию кнопки «Обновить» будет происходить синхронизация отображаемого списка репозиториев с фактическим содержимым локального хранилища, то есть список репозиториев будет обновляться.

8. Дождитесь завершения загрузки репозиториев, затем обновите страницу браузера с веб-интерфейсом Студии, чтобы отобразилось фактическое количество загруженных бандлов с приложениями и самих приложений, оно будет отображаться на левой панели около иконок вкладок Бандлы и Приложения (в процессе загрузки цифры меняются).

  Примечание

 Количество бандлов с приложениями и самих приложений может различаться в зависимости от версии сборки Студии, но количество репозиториев должно быть рано количеству бандлов (на рисунке ниже представлена успешная синхронизация репозиториев, количество репозиториев = количеству бандлов – 119). Если бандлов после обновления меньше количества репозиториев, значит не все приложения загрузились на Студию. В этом случае необходимо перейти к разделу – Что делать, если возникли ошибки после обновления репозиториев? 

Рисунок 11 — Datamart Studio. Состав репозиториев


Что делать, если возникли ошибки после обновлении репозиториев?

Зачастую после обновления репозиториев хранилища не все бандлы с приложениями загружаются на Студию. Это происходит потому, что Студии не хватает отведенного ей времени на синхронизацию.

В данном случае на ВМ со Студией рекомендуется проделать следующие действия (если Cтудия установлена не в /opt/studio, то путь до .../docker-compose заменить на свой):

   1) Нужно почистить хвосты после неудачной синхронизации бандлов:

пример команды в файле "пример очистки"

   2) Далее увеличить таймаут для синхронизации бандлов:

sudo docker-compose -f /opt/studio/docker-compose.datamart.yaml exec resque sed -i 's/timeout = 5/timeout = 120/' /app/config/initializers/git_config.rb

   3) Произвести рестарт:

sudo docker-compose -f /opt/studio/docker-compose.datamart.yaml restart resque

   4) Затем необходимо повторно синхронизировать все репозитории в соответствии с разделом – Загрузка/обновление репозиториев.
  
Обновление одного приложения на примере Агента проверок до версии 1.0.11

Для обновления Агента проверок ( техническое наименование Check-Adapter) до версии 1.0.11 необходимо последовательно выполнить действия:

1) Скопируйте файл бандла на виртуальную машину c Datamart-Studio:

scp dms-bundle-full-check-adapter-dqf-1.0.11.tar.gz <ip_vm_ds>:/tmp

2) На ВМ с Datamart-Studio перейдите в директорию с Datamart-Studio и выполните команду, которая добавляет бандл в локальные репозитории (см. Рисунок 12):

sudo ./datamart-studio bundle_add /tmp/dms-bundle-full-check-adapter-dqf-1.0.11

image1.png

Рисунок 12 — Пример команды на добавление бандла в локальные репозитории

Если в выводе команды присутствуют ошибки, аналогичные приведённым на Рисунок 13, это означает, что репозиторий check-adapter версии 1.0.11 уже существует.

image2.png

Рисунок 13 — Пример ошибок

3) Синхронизация репозиториев в Studio:

   а) В правой части интерфейса откройте раздел «Управление ресурсами»;

   б) Перейдите на вкладку «Репозитории», как показано на рисунке ниже (см. Рисунок 14):

image3.png

Рисунок 14 — Репозитории

   в) Выберите «Хранилище репозиториев» → «Локальный Gitea»;

   г) Нажмите на значок облака в верхней части окна;

   д) Выберите пункт «Получить данные из новых репозиториев»;

   е) Нажмите «Обновить», как показано на рисунке ниже (см. Рисунок 15):

image4.png

Рисунок 15 — Получение данных из новых репозиториев

4) Ожидание завершения фоновых операций.

Перейдите в раздел «Администрирование» и дождитесь, пока количество задач в очереди станет равно 0, как показано на рисунках (см. Рисунок 16 и Рисунок 17).

image5.png

Рисунок 16 — Переход в раздел «Администрирование»

image6.png

Рисунок 17 — Проверка очереди

5) Обновление приложения Check-Adapter.

   а) Откройте необходимую услугу, как показано на рисунке ниже (см. Рисунок 18):

image7.png

Рисунок 18 — Управление услугами

   б) Перейдите в раздел «Состав услуги»;

   в) Нажмите на кнопку с тремя точками напротив приложения Check-Adapter;

   г) В выпадающем меню выберите «Обновить», как показано на рисунке ниже (см. Рисунок 19):

image8.png

Рисунок 19 — Выбор актуальной версии приложения

   д) Подтвердите обновление;

   е) В выпадающем окне выберите Check-Adapter  1.0.11 и  отметьте «Принудительно»;

   ж) Нажмите «Обновить», как показано на рисунке ниже (см. Рисунок 20):

image9.png

Рисунок 20 — Обновление приложения Check-Adapter

6) Проверка версии.

Убедитесь, что установленная версия Check-Adapter соответствует версии 1.0.11, как показано на рисунке ниже (см. Рисунок 21):

image10.png

Рисунок 21 — Проверка актуальной версии

7) Применение глобальных настроек (если используются глобальные настройки для данного приложения).

Перейдите в раздел «Глобальные настройки» и выполните применение всех глобальных переменных, нажав кнопку «Применить», как показано на рисунке ниже (см. Рисунок 22).

image11.png

Рисунок 22 — Глобальные настройки

8) Загрузка дополнительных файлов для запуска приложения, в случае Агента проверок – схемы БД.

Загрузите файл schema.sql в Check-Adapter.

9) Переустановка Check-Adapter:

   а) Перейдите в раздел «Состав услуги»;

   б) Нажмите на кнопку с тремя точками напротив приложения Check-Adapter;

   в) Выберите пункт «Переустановить», как показано на рисунке ниже (см. Рисунок 23):

image12.png

Рисунок 23 — Переустановка Check-Adapter

10) Применение конфигурации для связных приложений, в нашем случае – АРМ ДС.

   а) Найдите приложение АРМ ДС;

   б) Нажмите на кнопку с тремя точками справа;

   в) Выберите «Действия» → «Применить конфигурацию (bind)», как показано на рисунке ниже (см. Рисунок 24):

image13.png

Рисунок 24 — Применение конфигурации для АРМ ДС

Авторизуйтесь, чтобы оставить комментарий к статье