Skip to main content

GitVerse

GitVerse — это российская платформа для работы с исходным кодом. GitVerse позволяет создавать и развивать проекты в открытых и закрытых репозиториях, автоматически собирать их и публиковать напрямую в RuStore.

caution

Первую версию приложения необходимо загрузить вручную через RuStore Консоль, а последующие можно отправлять из GitVerse.

В RuStore Консоль GitVerse доступен на вкладке Инструменты > ваше приложение > GitVerse в меню слева. Откроется страница с описанием и ссылкой на инструмент.

img

Возможности

  • Упрощение публикации. Интеграция позволяет автоматически публиковать приложения из GitVerse в RuStore. Это означает, что не нужно каждый раз загружать файлы в RuStore Консоль.

  • Подключение к существующим проектам. Интеграцию можно настроить как для новых, так и для существующих проектов GitVerse. При необходимости вы можете импортировать существующее приложение в GitVerse и настроить для него автоматическую публикацию.

Настройка интеграции

Для интеграции используйте шаблон проекта и скрипт с применением RuStore API. Скрипт позволяет получить токен, создать черновик, отправить новую версию приложения в RuStore и удалить черновик.

Для настройки интеграции вам понадобятся:

  • Приватный ключ RuStore API и ID приватного ключа. Их можно посмотреть в RuStore Консоль > вкладка Компания или Разработчик > API RuStore. Если ключа нет, сгенерируйте ключевую пару.
  • Метаданные вашего приложения (className и др.).

Чтобы настроить интеграцию GitVerse с RuStore:

  1. Зарегистрируйтесь на GitVerse и создайте организацию. Организация — логический юнит разделения внутри GitVerse, который используется для управления проектами.

  2. Создайте репозиторий и активируйте переключатель CI/CD в настройках. В меню репозитория появится вкладка CI/CD.

  3. Зарегистрируйте агент GitVerse CI/CD для сборки и отправки приложения в RuStore. Его можно создать в Linux, WSL (Windows), или в любом облаке. Например, в WSL (Ubuntu) и виртуальной машине Cloud.ru.

  4. Объявите следующие переменные в разделе CI/CD или используйте их внутри кода, как это сделано в шаблоне:

    • PRIVATE_KEY— приватный ключ приложения из RuStore Консоль;
    • KEY_ID — идентификатор приватного ключа из RuStore Консоль.
    note

    Шаблон проекта находится в evangelism/rustore. Он предназначен для тестирования, поэтому избегайте хранения открытых паролей, идентификаторов и прочей секретной информации.

    В шаблоне используется генератор токенов от RuStore в .jar, но вы можете использовать любой другой способ генерации.

  5. Чтобы воспользоваться тестовым проектом, выполните git clone https://gitverse.ru/evangelism/rustore, настройте раннеры и укажите собственные значения конфигурации.

Что дальше

Перед отправкой в RuStore новой версии приложения, заполните ее атрибуты в файле rustore.sh. Описание атрибутов есть в разделе Создание черновика версии.

После этого запустите сборку и загрузите версию приложения в RuStore.

caution

Если настройки приложения изменяются, измените их также в RuStore Консоль. Если этого не сделать, в CI/CD появится ошибка несоответствия разрешений локальной версии и загруженной при отправке пакета приложения.

Например, если у приложения появились новые разрешения, добавьте их в RuStore Консоль перед отправкой новой версии через GitVerse.