GitVerse
GitVerse — это российская платформа для работы с исходным кодом. GitVerse позволяет создавать и развивать проекты в открытых и закрытых репозиториях, автоматически собирать их и публиковать напрямую в RuStore.
Первую версию приложения необходимо загрузить вручную через RuStore Консоль, а последующие можно отправлять из GitVerse.
В RuStore Консоль GitVerse доступен на вкладке Инструменты > ваше приложение > GitVerse в меню слева. Откроется страница с описанием и ссылкой на инструмент.
Возможности
-
Упрощение публикации. Интеграция позволяет автоматически публиковать приложения из GitVerse в RuStore. Это означает, что не нужно каждый раз загружать файлы в RuStore Консоль.
-
Подключение к существующим проектам. Интеграцию можно настроить как для новых, так и для существующих проектов GitVerse. При необходимости вы можете импортировать существующее приложение в GitVerse и настроить для него автоматическую публикацию.
Настройка интеграции
Для интеграции используйте шаблон проекта и скрипт с применением RuStore API. Скрипт позволяет получить токен, создать черновик, отправить новую версию приложения в RuStore и удалить черновик.
Для настройки интеграции вам понадобятся:
- Приватный ключ RuStore API и ID приватного ключа. Их можно посмотреть в RuStore Консоль > вкладка Компания или Разработчик > API RuStore. Если ключа нет, сгенерируйте ключевую пару.
- Метаданные вашего приложения (className и др.).
Чтобы настроить интеграцию GitVerse с RuStore:
-
Зарегистрируйтесь на GitVerse и создайте организацию. Организация — логический юнит разделения внутри GitVerse, который используется для управления проектами.
-
Создайте репозиторий и активируйте переключатель CI/CD в настройках. В меню репозитория появится вкладка CI/CD.
-
Зарегистрируйте агент GitVerse CI/CD для сборки и отправки приложения в RuStore. Его можно создать в Linux, WSL (Windows), или в любом облаке. Например, в WSL (Ubuntu) и виртуальной машине Cloud.ru.
-
Объявите следующие переменные в разделе CI/CD или используйте их внутри кода, как это сделано в шаблоне:
PRIVATE_KEY
— приватный ключ приложения из RuStore Консоль;KEY_ID
— идентификатор приватного ключа из RuStore Консоль.
примечаниеШаблон проекта находится в
evangelism/rustore
. Он предназначен для тестирования, поэтому избегайте хранения открытых паролей, идентификаторов и прочей секретной информации.В шаблоне используется генератор токенов от RuStore в
.jar
, но вы можете использовать любой другой способ генерации. -
Чтобы воспользоваться тестовым проектом, выполните
git clone https://gitverse.ru/evangelism/rustore
, настройте раннеры и укажите собственные значения конфигурации.
Что дальше
Перед отправкой в RuStore новой версии приложения, заполните ее атрибуты в файле rustore.sh
.
Описание атрибутов есть в разделе Создание черновика версии.
После этого запустите сборку и загрузите версию приложения в RuStore.
Если настройки приложения изменяются, измените их также в RuStore Консоль. Если этого не сделать, в CI/CD появится ошибка несоответствия разрешений локальной версии и загруженной при отправке пакета приложения.
Например, если у приложения появились новые разрешения, добавьте их в RuStore Консоль перед отправкой новой версии через GitVerse.