Миграция из GitLab в VK Dev Platform
VK Dev Platform поддерживает миграцию репозиториев (проектов) из GitLab через отправку API-запроса на импорт.
Для импорта GitLab-проекта нужно:
- Архив GitLab-проекта, экспортированный из внешней инсталляции GitLab. Подробнее — в официальной документации GitLab.
- Роль с правом доступа
importдля репозиториев VK Dev Platform (подробнее — в разделе Матрица прав доступа). - Идентификатор проекта разработки, в который нужно импортировать GitLab-проект. Можете скопировать его в настройках проекта разработки в разделе Переменные CI.
Чтобы импортировать GitLab-проект в VK Dev Platform:
-
Отправьте API-запрос:
POST https://<ИМЯ_ХОСТА_VK_DEV_PLATFORM>/api/v1/code-repositories/importВ запросе:
- Заголовок
Content-Typeдолжен принимать значениеmultipart/form-data. - Тело запроса должно содержать параметры, заполненные в соответствии с таблицей 1.
Таблица 1 — Параметры запроса на импортПараметр
Обязательный
Тип
Описание
namestringИмя репозитория, отображаемое в интерфейсе VK Dev Platform и GitLab
slugstringПуть к репозиторию относительно GitLab-группы
devProjectIduuidИдентификатор проекта разработки VK Dev Platform, в который нужно импортировать GitLab-проект
filebinaryАрхив GitLab-проекта, который имеет MIME-тип
application/gzipилиapplication/x-gzipПодробнее о работе с API — в документе Руководство разработчика VK Dev Platform.
- Заголовок
-
Дождитесь ответа об успешном выполнении запроса (код ответа
202). В случае возникновения ошибок, исправьте их и повторите отправку API-запроса. -
На Портале управления разработкой выберите проект разработки, в который импортируется GitLab-проект.
-
Перейдите в раздел Репозитории.
-
Найдите в списке импортируемый репозиторий и проверьте его статус:
Preparing— импорт GitLab-проекта еще не завершен. Дождитесь появления статусаReadyилиFailed.Ready— GitLab-проект успешно импортирован в VK Dev Platform.Failed— импорт GitLab-проекта завершился ошибкой.
-
Если статус импортированного репозитория —
Failed:- Уточните детали ошибки в логах VK Dev Platform и устраните ее причину.
- Удалите репозиторий.
- Повторите отправку API-запроса.