CI/CD-сборка ΠΈ публикация Π² RuStore

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° GitVerse, автоматичСски ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π½Π° ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π² RuStore с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CI/CD. Π’ этом руководствС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΉ шаблон ΠΈ скрипт с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ RuStore API. Π‘ΠΊΡ€ΠΈΠΏΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Π±Π°Π·ΠΎΠ²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ β€” ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π°, созданиС Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊΠ°, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ Π½ΠΎΠ²ΠΎΠΉ вСрсии прилоТСния ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊΠ°.

ΠŸΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ прилоТСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· RuStore Консоль. Если Π²Ρ‹ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ API для манипуляций с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄Π΅Π»Π°Π΅Ρ‚Π΅ это Ρ‡Π΅Ρ€Π΅Π· Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊ, этот шаг ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»Π΅Π½.

Если Ρƒ вас ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ настройки прилоТСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ‹ добавляСтС Π½ΠΎΠ²Ρ‹Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ настройки Π² консоли RuStore. Π˜Π½Π°Ρ‡Π΅ CI/CD Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ нСсоотвСтствия Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ локальной вСрсии ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠΉ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π° прилоТСния:

Настройка

Для настройки ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π²Π°ΠΌ понадобится ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ RuStore API ΠΈ ID ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°. Π’Π°ΠΊΠΆΠ΅ для ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ скрипта Π½ΡƒΠΆΠ½Ρ‹ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ вашСго прилоТСния (className ΠΈ Π΄Ρ€.). Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² RuStore Консоль > Π²ΠΊΠ»Π°Π΄ΠΊΠ° Компания ΠΈΠ»ΠΈ Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ > API RuStore. Если ΠΊΠ»ΡŽΡ‡Π° Π½Π΅Ρ‚, сгСнСрируйтС ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ ΠΏΠ°Ρ€Ρƒ.

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ 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 Консоль.
  5. Π¨Π°Π±Π»ΠΎΠ½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° находится Π² evangelism/rustore | Gitverse . ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ этот шаблон ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для тСстирования ΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ хранСния ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΡ‡Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ шаблонС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΎΡ‚ RuStore Π² .jar, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ способ для Π΅Π³ΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ.

  6. Π§Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ тСстовым ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ git clone https://gitverse.ru/evangelism/rustore, настройтС Ρ€Π°Π½Π½Π΅Ρ€Ρ‹ ΠΈ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ собствСнныС значСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Π§Ρ‚ΠΎ Π΄Π°Π»ΡŒΡˆΠ΅β€‹

ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ Π² RuStore Π½ΠΎΠ²ΠΎΠΉ вСрсии прилоТСния Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΅Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ Π² Ρ„Π°ΠΉΠ»Π΅ rustore.sh. ОписаниС Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² Π΅ΡΡ‚ΡŒ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊΠ° вСрсии.

ПослС этого запуститС сборку ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Π²Π΅Ρ€ΡΠΈΡŽ прилоТСния Π² RuStore:

Π’Ρ‹ нашли Ρ‡Ρ‚ΠΎ искали?