The project is in a healthy, maintained state
Fastlane plugin to upload Android builds to RuStore
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies
 Project Readme

upload_to_ru_store

fastlane Plugin Badge

Fastlane-плагин для автоматической публикации Android-приложений (AAB/APK) в RuStore.

За основу взять плагин от Vladislav Onishchenko: https://github.com/stfbee/fastlane-plugin-rustore

Возможности

  • Аутентификация через RSA-SHA512 и получение JWE-токена RuStore API
  • Автоматическая очистка всех незавершённых черновиков (draft) перед созданием новой версии
  • Создание драфта с указанием типа публикации и текста «Что нового»
  • Загрузка AAB или APK (GMS и/или HMS) в один или два шага
  • Фиксация (commit) драфта и отправка на модерацию

Установка

В каталоге с вашим Fastfile выполните:

fastlane add_plugin upload_to_ru_store

Пример использования

lane :publish_to_rustore do
  upload_to_ru_store(
    package_name: "com.example.app",
    key_id: ENV["RUSTORE_KEY_ID"],
    private_key: ENV["RUSTORE_PRIVATE_KEY"],
    publish_type: "INSTANTLY", # MANUAL, DELAYED или INSTANTLY (по умолчанию INSTANTLY)
    changelog_path: "metadata/android/ru-RU/changelog.txt", # опционально, макс. 500 символов
    aab: "app/build/outputs/bundle/release/app-release.aab", # если указан, зальётся только AAB
    gms_apk: "app/build/outputs/apk/release/app-release.apk", # путь к Google-APK (если не указан AAB)
    hms_apk: "app-huawei-release.apk" # путь к Huawei-APK (опционально)
  )
end

Плагин автоматически:

  1. Получит JWE-токен RuStore
  2. Удалит все существующие черновики приложения
  3. Создаст новый драфт
  4. Загрузит указанные сборки (AAB и/или APK)
  5. Закоммитит драфт и отправит на модерацию

Опции

Параметр Описание Обязательный Формат
package_name Уникальный идентификатор пакета (например, com.example.app) да String
key_id Идентификатор RSA-ключа в консоли RuStore да String
private_key PEM-строка RSA-приватного ключа да String
publish_type Тип публикации: MANUAL, DELAYED или INSTANTLY (по умолчанию INSTANTLY) нет String
publish_datetime Дата и время для отложенной публикации, ISO8601 да, только если publish_type = DELAYED String
changelog_path Путь к .txt-файлу с описанием «Что нового?» (макс. 500 символов) нет String
aab Путь к Android App Bundle (.aab). Если указан, APK не загружается нет String
gms_apk Путь к APK с Google Mobile Services. Используется, если не указан aab нет String
hms_apk Путь к APK с Huawei Mobile Services нет String

Требования

  • Ruby >= 2.6
  • Fastlane >= 2.214.0

Лицензия

MIT. Смотрите LICENSE

Полезные ссылки