АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ прилоТСния с внСшними систСмами

АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это

Ни ΠΎΠ΄Π½Π° информационная систСма Π½Π΅ способна Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ всС Π·Π°Π΄Π°Ρ‡ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ΠœΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ прилоТСниями Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π΄Π΅Π»Π°Ρ‚ΡŒ это Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ слоТно ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. НСобходима автоматичСская интСграция с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π°ΠΊΠΈΡ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, ΠΊΠ°ΠΊ SOAP, REST, ΠΈΠ»ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ². О тСхнологиях ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π² SimpleOne расскаТСм Π² нашСй ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π² ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… прилоТСниях

ΠšΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ прилоТСния ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ Π΄Π°Π½Π½Ρ‹Π΅. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ для выполнСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ бизнСс-процСсса компания ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ нСсколько ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ происходит ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Одна систСма ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘Ρ‚ Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ°Π½Π°Π»Ρ‹ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ. НапримСр, для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисном ΠΏΠΎΡ€Ρ‚Π°Π»Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ создаёт Π½ΠΎΠ²ΡƒΡŽ ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись: систСма ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Active Directory, Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ контроля доступа Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ справочник сотрудников ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ERP SAP.

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ ускоряСт Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡, ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ качСство, ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ чСловСчСский Ρ„Π°ΠΊΡ‚ΠΎΡ€, сниТаСт ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ владСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм Π±Π΅Π· посрСдников ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ ΠΈΠ·Π΄Π΅Ρ€ΠΆΠΊΠΈ.

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ способы ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ β€” это ΠΎΠ±ΠΌΠ΅Π½ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈ сообщСниями ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ ΠΎΠ±Ρ‰Π΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΈ способы ΠΈΠΌΠ΅ΡŽΡ‚ мноТСство нСдостатков, особСнно Π² эпоху распространСния Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π€ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ, Π° Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ°, Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ конвСртация β€” это Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ влияниС чСловСчСского Ρ„Π°ΠΊΡ‚ΠΎΡ€Π° ΠΈ Ρ‚Ρ€ΡƒΠ΄Π°. Π”Π°Π²Π°Ρ‚ΡŒ всСм подряд доступ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΅Ρ‘ использования Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ прилоТСниями β€” ΡΠ΅Ρ€ΡŒΡ‘Π·Π½Ρ‹ΠΉ риск для цСлостности ΠΈ бСзопасности хранСния Π΄Π°Π½Π½Ρ‹Ρ….

На смСну этим Π°Ρ€Ρ…Π°ΠΈΡ‡Π½Ρ‹ΠΌ ΠΈ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ способам ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΡˆΠ»ΠΈ соврСмСнныС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ API (интСрфСйсы ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования) для связи Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ свои ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы с API-интСрфСйсами, Ρ‡Ρ‚ΠΎΠ±Ρ‹ прилоТСния ΠΌΠΎΠ³Π»ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Π²Π° основных стиля API β€” SOAP ΠΈ REST, ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, Π½ΠΎ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ±Ρ‰ΠΈΠΉ транспорт β€” HTTP-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ

SOAP ΠΈ REST Ρ€Π΅ΡˆΠ°ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ: ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ API Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями. Но Ссли SOAP являСтся ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Ρ‚ΠΎ REST β€” это ΡΡ‚ΠΈΠ»ΡŒ ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡ€ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ для прСдоставлСния Π²Π΅Π±-слуТбы β€” RESTful, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ REST ΠΈ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠ°ΡŽΡ‰Π΅ΠΉ Ρ‚Π΅Ρ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚.

АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это SOAP β€” ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», REST β€” Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ

SOAP (Simple Object Access Protocol) β€” ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ стандартизированный ΠΈ Π΄Π°Π²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ». Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΏΡ€ΠΈΡ‡ΠΈΠ½, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΅Π³ΠΎ Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ ΠΊΠ°ΠΊ API ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Он Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΠ²Π΅Ρ€Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² HTTP, SMTP, TCP ΠΈΠ»ΠΈ UDP, Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ XML. Для ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… систСм ΠΈ Ρ‚Π΅Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ производят слоТныС Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»ΡΡŽΡ‚ высокиС трСбования ΠΊ бСзопасности, SOAP всё Π΅Ρ‰Ρ‘ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚. Он ΡˆΠΈΡ€ΠΎΠΊΠΎ примСняСтся Π² банковских ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… финансовых прилоТСниях, CRM, ΠΊΠΎΠΌΠΌΡƒΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ слуТбами ΠΈ ΠΏΡ€ΠΈ ΠΎΠΊΠ°Π·Π°Π½ΠΈΠΈ Ρ‚Π΅Π»Π΅ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… услуг. Π’Π°ΠΌ, Π³Π΄Π΅ Π²Π°ΠΆΠ½Π° ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ SOAP, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π°Π±ΠΎΡ‚Π° свСтофоров, ΠΊΠ°Π½Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ элСктроснабТСния Π³ΠΎΡ€ΠΎΠ΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° всСгда Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π±Π΅Π·ΠΎΡ‚ΠΊΠ°Π·Π½ΠΎ ΠΈ прСдсказуСмо. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ асинхронной ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ SMTP Π΄Π΅Π»Π°Π΅Ρ‚ этот ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡ‹ΠΌ для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π² систСмах с Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ ΠΊΠ°Π½Π°Π»ΠΎΠΌ связи.

REST (REpresentational State Transfer) β€” довольно ΠΌΠΎΠ»ΠΎΠ΄ΠΎΠΉ, Π½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ популярный Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ для создания ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… API. Он ΠΏΡ€ΠΈΠΎΠ±Ρ€Ρ‘Π» ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π² 2018 Π³ΠΎΠ΄Ρƒ, ΠΈ Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-сСрвисов Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΊΠ°ΠΊ общСдоступный API-интСрфСйс. Twitter, WordPress, Google Maps ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ извСстныС прилоТСния ΠΈΠΌΠ΅ΡŽΡ‚ REST API для взаимодСйствия с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π²Π΅Π±-сСрвисами ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ сайтами.

Для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ REST ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ HTTP Π² качСствС транспортного ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, Π½ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ сообщСний ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹ΠΌΠΈ β€” HTML, JSON, XML, YAML ΠΈΠ»ΠΈ простой тСкст. Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ являСтся Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ JSON (JavaScript Object Notatio): Π΅Π³ΠΎ Π»Π΅Π³ΠΊΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρƒ Π½Π΅Π³ΠΎ простой синтаксис ΠΈ ΠΎΠ½ Π½Π΅ зависит ΠΎΡ‚ языка программирования. Π’ JSON ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ мСньшС слов, Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊΠΈΠ΅ сообщСния ΠΈΠΌΠ΅ΡŽΡ‚ мСньший вСс, поэтому ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΈΡ… ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ с XML.

REST β€” простой, ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ способ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв Π²Π΅Π±-сСрвисы RESTful ΠΌΠΎΠ³ΡƒΡ‚ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с Π»ΡŽΠ±Ρ‹ΠΌΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ сСрвисами.

SOAP vs REST. REST Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ быстрСС, Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° RESTful-сСрвисов ΠΏΡ€ΠΎΡ‰Π΅. SOAP взаимодСйствуСт с опСрациями, поэтому Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ ΠΈ слоТной Π»ΠΎΠ³ΠΈΠΊΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, SOAP ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π»ΡŽΠ±Ρ‹ΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ транспортного уровня вмСсто HTTP ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ интСграция.

Для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ½Ρ‹ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Ρ‹

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ настройку взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ систСмами, администратор ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Ρ‹. ΠšΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€ β€” это Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для взаимодСйствия с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ систСмой ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, SAP, SharePoint, 1Π‘ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ. Достаточно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ адрСс внСшнСй систСмы ΠΈ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΈ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€ сам Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Π·Π° взаимодСйствиС, ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΡŽ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… сообщСний.

Настройку ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² администратор выполняСт с использованиСм графичСского интСрфСйса прилоТСния (GUI) Π±Π΅Π· нСобходимости программирования, Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ вписываСтся Π² ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ No Code.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Π° β€” взаимодСйствиС ITSM-систСмы ΠΈ систСмы ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°. Для настройки ΠΈΡ… ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ администратор ITSM Π²Π²ΠΎΠ΄ΠΈΡ‚ адрСс внСшнСй систСмы, настраиваСт Π½Π°Π±ΠΎΡ€ событий, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€, ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ITSM-систСма ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΡ‚ систСмы ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° β€” ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Π² соотвСтствии с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ дСйствия с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ITSM-систСмы.

Бпособы ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π² SimpleOne

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ SimpleOne с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ прилоТСниями настраиваСтся Ρ‡Π΅Ρ€Π΅Π· REST API, интСрфСйс позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

REST-ΠΊΠ»ΠΈΠ΅Π½Ρ‚

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ стороннСС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с SimpleOne, администратор Π΄ΠΎΠ»ΠΆΠ΅Π½ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ REST-запросов (REST Client) ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ запрос ΠΊ Π²Π½Π΅ΡˆΠ½Π΅ΠΌΡƒ сСрвису (REST Request), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ рСгулярноС исполнСниС. Π’ ΠΏΠ°Π½Π΅Π»ΠΈ администрирования создаётся REST-запрос, для Π½Π΅Π³ΠΎ указываСтся Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ запроса ΠΈ ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡ€ΠΈ нСобходимости, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

Настройку REST-запросов ΠΈ REST Bot Engine ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ администратор ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GUI Π±Π΅Π· Π³Π»ΡƒΠ±ΠΎΠΊΠΈΡ… Π·Π½Π°Π½ΠΈΠΉ API ΠΈ Π½Π°Π²Ρ‹ΠΊΠΎΠ² программирования.

АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это Настройка REST API Π² SimpleOne: ΠΏΡ€ΠΈΠΌΠ΅Ρ€ настройки запроса для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ co Slack АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это Настройка REST API Π² SimpleOne: ΠΏΡ€ΠΈΠΌΠ΅Ρ€ настройки Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° запроса АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это Настройка REST API Π² SimpleOne: ΠΏΡ€ΠΈΠΌΠ΅Ρ€ настройки Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²

ΠšΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Ρ‹

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π² SimpleOne Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€ для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ с мСссСндТСрами ΠΈ систСмами искусствСнного ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π° β€” REST Bot Engine. Он позволяСт Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ взаимодСйствиС с Ρ‡Π°Ρ‚-Π±ΠΎΡ‚Π°ΠΌΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ происходящих Π² систСмС событиях Π² мСссСндТСры отвСтствСнных сотрудников. НапримСр, ΠΏΡ€ΠΈ создании ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚Π° Ρ‡Π»Π΅Π½Ρ‹ Π³Ρ€ΡƒΠΏΠΏΡ‹ тСхничСской ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ сообщСниС ΠΎΠ± этом прямо Π² свой мСссСндТСр.

REST API

ESM-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° SimpleOne ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π·Π°Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ для взаимодСйствия сторонних систСм с нашСй ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ посрСдством REST API.

Scripted REST API

Когда Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² для Ρ€Π°Π±ΠΎΡ‚Ρ‹ стороннСй систСмы с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ SimpleOne нСдостаточно, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свои собствСнныС сцСнарии ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ запросов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ инструмСнта Scripted REST API. Для этого достаточно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ API, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ low-code-инструмСнтария Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ дСйствия ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, послС Ρ‡Π΅Π³ΠΎ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запросов ΠΊ API с созданными модулями ΠΈ дСйствиями.

Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ REST-запросов ΠΎΡ‚ Π²Π½Π΅ΡˆΠ½ΠΈΡ… систСм.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

НаличиС API для Π²Π΅Π±-прилоТСния β€” это общСпринятый стандарт ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ. Он позволяСт бизнСс-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌ, Ρ€Π΅ΡˆΠ°ΡŽΡ‰ΠΈΠΌ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’ SimpleOne Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ no-code-инструмСнты для настройки запросов ΠΊ внСшним систСмам, REST API с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Π΅Π³ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс систСмы, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ спСциализированныС ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΊ популярным ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ систСмам. Всё это позволяСт быстро Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ взаимодСйствиС со сторонними сСрвисами, мСссСндТСрами ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ прилоТСниями. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ настройки производятся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ графичСского интСрфСйса, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π΅Π³ΠΎ Π³Π»ΡƒΠ±ΠΎΠΊΠΈΡ… Π·Π½Π°Π½ΠΈΠΉ языков программирования ΠΎΡ‚ администратора.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ CI/CD? РазбираСмся с Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ поставкой

АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ АвтоматичСская интСграция Ρ‡Ρ‚ΠΎ это

Π’ ΠΏΡ€Π΅Π΄Π΄Π²Π΅Ρ€ΠΈΠΈ старта курса Β«CI/CD Π½Π° AWS, Azure ΠΈ GitlabΒ» ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ»ΠΈ для вас ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°.

НСпрСрывная интСграция (Continuous Integration, CI) ΠΈ нСпрСрывная поставка (Continuous Delivery, CD) ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Ρƒ, Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Ρ‡Π°Ρ‰Π΅ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Π΅Π΅ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ измСнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.

CI/CD β€” это ΠΎΠ΄Π½Π° ΠΈΠ· DevOps-ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊ. Она Ρ‚Π°ΠΊΠΆΠ΅ относится ΠΈ ΠΊ agile-ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°ΠΌ: автоматизация развСртывания позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ бизнСс-Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ, Π½Π° качСствС ΠΊΠΎΠ΄Π° ΠΈ бСзопасности.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ CI/CD

НСпрСрывная интСграция β€” это мСтодология Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊ, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π² ΠΊΠΎΠ΄ вносятся нСбольшиС измСнСния с частыми ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ. И ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ соврСмСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ с использованиСм Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ ΠΈ инструмСнтов, Ρ‚ΠΎ появляСтся Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΈ тСстировании вносимых ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

Π‘ тСхничСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния, Ρ†Π΅Π»ΡŒ CI β€” ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ способ сборки, ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ ΠΈ тСстирования ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠŸΡ€ΠΈ Π½Π°Π»Π°ΠΆΠ΅Π½Π½ΠΎΠΌ процСссС Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ с большСй Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ Π±ΡƒΠ΄ΡƒΡ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ частыС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, Ρ‡Ρ‚ΠΎ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΏΠΎΡΠΎΠ±ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡŽ качСства ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.

НСпрСрывная поставка начинаСтся Ρ‚Π°ΠΌ, Π³Π΄Π΅ заканчиваСтся нСпрСрывная интСграция. Она Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ окруТСния: Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΊΠ°ΠΊ с ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ½-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ‚Π°ΠΊ ΠΈ со срСдами Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ тСстирования.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ CI/CD ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ спСцифичСскиС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ окруТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΈ. А Ρ‚Π°ΠΊΠΆΠ΅ CI/CD-автоматизация выполняСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ запросы ΠΊ Π²Π΅Π±-сСрвСрам, Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ сСрвисам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π½ΡƒΠΆΠ΄Π°Ρ‚ΡŒΡΡ Π² пСрСзапускС ΠΈΠ»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… дСйствий ΠΏΡ€ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΈ прилоТСния.

НСпрСрывная интСграция ΠΈ нСпрСрывная поставка Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΌ тСстировании, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ конСчная Ρ†Π΅Π»ΡŒ β€” Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° качСствСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. НСпрСрывноС тСстированиС часто рСализуСтся Π² Π²ΠΈΠ΄Π΅ Π½Π°Π±ΠΎΡ€Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… тСстов (рСгрСссионных, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ…), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π² CI/CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π΅.

ЗрСлая ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° CI/CD позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠ΅ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅: ΠΏΡ€ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΌ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ ΠΊΠΎΠ΄Π° Ρ‡Π΅Ρ€Π΅Π· CI/CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€, сборки автоматичСски Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ½-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΡŽΡ‰ΠΈΠ΅ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΡƒΡŽ поставку, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ сСбС Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎΠ΅ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ СТСчасноС Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅. Π₯отя здСсь стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ нСпрСрывная поставка ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π΅ для всСх бизнСс-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

НСпрСрывная интСграция ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ качСство

НСпрСрывная интСграция β€” это мСтодология Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, основанная Π½Π° Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… процСссах ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠŸΡ€ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½Π½ΠΎΠΉ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто коммитят свой ΠΊΠΎΠ΄ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ исходного ΠΊΠΎΠ΄Π°. И Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ придСрТиваСтся ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π² дСнь. ΠŸΡ€ΠΈ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… измСнСниях ΠΏΡ€ΠΎΡ‰Π΅ Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ Π΄Π΅Ρ„Π΅ΠΊΡ‚Ρ‹ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… измСнСниях, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ€Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΌΠΈ Ρ†ΠΈΠΊΠ»Π°ΠΌΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ измСнСния ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ части ΠΊΠΎΠ΄Π° нСсколькими Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°ΠΌ ΠΏΡ€ΠΈ слиянии.

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹, Π²Π½Π΅Π΄Ρ€ΡΡŽΡ‰ΠΈΠ΅ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΡƒΡŽ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ, часто Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ с настройки систСмы контроля вСрсий ΠΈ опрСдСлСния порядка Ρ€Π°Π±ΠΎΡ‚Ρ‹. НСсмотря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π΄Π΅Π»Π°ΡŽΡ‚ΡΡ часто, рСализация Ρ„ΠΈΡ‡ ΠΈ исправлСниС Π±Π°Π³ΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ довольно Π΄ΠΎΠ»Π³ΠΎ. Для контроля Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ Ρ„ΠΈΡ‡ΠΈ ΠΈ ΠΊΠΎΠ΄ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ сущСствуСт нСсколько ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ².

МногиС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ„ΠΈΡ‡Π°-Ρ„Π»Π°Π³ΠΈ (feature flag) β€” ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° Π² Ρ€Π°Π½Ρ‚Π°ΠΉΠΌΠ΅. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΅Ρ‰Π΅ находится Π² стадии Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, оборачиваСтся Ρ„ΠΈΡ‡Π°-Ρ„Π»Π°Π³Π°ΠΌΠΈ ΠΈ развСртываСтся ΠΈΠ· master-Π²Π΅Ρ‚ΠΊΠΈ Π² ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ½, Π½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π³ΠΎΡ‚ΠΎΠ² ΠΊ использованию. По Π΄Π°Π½Π½Ρ‹ΠΌ Π½Π΅Π΄Π°Π²Π½Π΅Π³ΠΎ исслСдования 63 ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… Ρ„ΠΈΡ‡Π°-Ρ„Π»Π°Π³ΠΈ, говорят ΠΎΠ± ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠΈ тСстируСмости ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠΈ качСства ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„ΠΈΡ‡Π°-Ρ„Π»Π°Π³Π°ΠΌΠΈ Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ инструмСнты, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ CloudBees Rollout, Optimizely Rollouts ΠΈ LaunchDarkly, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² CI/CD ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Ρ„ΠΈΡ‡.

Π”Ρ€ΡƒΠ³ΠΎΠΉ способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„ΠΈΡ‡Π°ΠΌΠΈ β€” использованиС Π²Π΅Ρ‚ΠΎΠΊ Π² систСмС контроля вСрсий. Π’ этом случаС Π½Π°Π΄ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ модСль вСтвлСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°ΠΊ Gitflow) ΠΈ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² Π²Π΅Ρ‚ΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, тСстирования ΠΈ ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½Π°. Для Ρ„ΠΈΡ‡ с Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΠΈΡ‡Π°-Π²Π΅Ρ‚ΠΊΠΈ. ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ Ρ„ΠΈΡ‡Π΅ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΠ»ΠΈΠ²Π°ΡŽΡ‚ измСнСния ΠΈΠ· Ρ„ΠΈΡ‡Π°-Π²Π΅Ρ‚ΠΊΠΈ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΡƒΠ΄ΠΎΠ±Π΅Π½, Ссли ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ разрабатываСтся ΠΌΠ½ΠΎΠ³ΠΎ Ρ„ΠΈΡ‡.

Π­Ρ‚Π°ΠΏ сборки Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚. НапримСр, Ссли Π²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‚ΠΎ CI ΡƒΠΏΠ°ΠΊΡƒΠ΅Ρ‚ всС статичСскиС Ρ„Π°ΠΉΠ»Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ HTML, CSS ΠΈ JavaScript, вмСстС с Java-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ скриптами Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

CI Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠΏΠ°ΠΊΡƒΠ΅Ρ‚ всС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ автоматичСски Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Π΅ тСсты ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ тСстирования. Π’Π°ΠΊΠΎΠ΅ тСстированиС позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сдСланныС измСнСния Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ сломали.

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ CI/CD-инструмСнтов позволяСт Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ сборку Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, ΠΏΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ ΠΈΠ»ΠΈ ΠΏΠΎ Ρ€Π°ΡΠΏΠΈΡΠ°Π½ΠΈΡŽ. Командам Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ расписаниС сборки, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Π½ΠΈΡ… Π² зависимости ΠΎΡ‚ числСнности ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ количСства Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π². Π’Π°ΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΈ сборка Π±Ρ‹Π»ΠΈ быстрыми, ΠΈΠ½Π°Ρ‡Π΅ долгая сборка ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ прСпятствиСм для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΏΡ‹Ρ‚Π°ΡŽΡ‰ΠΈΡ…ΡΡ быстро ΠΈ часто ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ.

НСпрСрывноС тСстированиС β€” это большС, Ρ‡Π΅ΠΌ автоматизация тСстирования

Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ тСстирования ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ QA-ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π°ΠΌ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ, Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ тСстов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΡΡ‚ΡŒ сборки. ВСстированиС Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ тСсты, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ спринта ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌΡ‹Π΅ Π² рСгрСссионныС тСсты для всСго прилоТСния. РСгрСссионныС тСсты ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ: Π½Π΅ сломали Π»ΠΈ ΠΈΡ… измСнСния Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ части прилоТСния.

Π›ΡƒΡ‡ΡˆΠ°Ρ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ всС ΠΈΠ»ΠΈ Ρ‡Π°ΡΡ‚ΡŒ рСгрСссионных тСстов Π² своих Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… окруТСниях. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄.

РСгрСссионныС тСсты β€” это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡Π°Π»ΠΎ. ВСстированиС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, тСстированиС API, статичСский Π°Π½Π°Π»ΠΈΠ· ΠΊΠΎΠ΄Π°, тСстированиС бСзопасности β€” эти ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ тСстирования Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠΌ являСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ запуска этих тСстов ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-Ρ…ΡƒΠΊ (webhook) ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-сСрвис ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° выполнСния: ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹ΠΉ Π±Ρ‹Π» тСст ΠΈΠ»ΠΈ Π½Π΅Ρ‚.

НСпрСрывноС тСстированиС ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ, Π½ΠΎ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ автоматичСского тСстирования Π² ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ CI/CD. ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Π΅ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ тСсты ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒΡŽ CI ΠΈ Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π΄ΠΎ ΠΈΠ»ΠΈ Π²ΠΎ врСмя запуска CI-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π°. ВСсты, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠ΅ развСртывания ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ окруТСния, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ тСстированиС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ бСзопасности, часто ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ CD ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ послС разворачивания сборок Π² Ρ†Π΅Π»Π΅Π²Ρ‹Ρ… срСдах.

CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ поставку ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ окруТСния

НСпрСрывная поставка β€” это автоматичСскоС Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ прилоТСния Π² Ρ†Π΅Π»Π΅Π²ΠΎΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ»ΠΈ нСсколькими окруТСниями Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ тСстирования, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ развСртываСтся для тСстирования ΠΈ Ρ€Π΅Π²ΡŒΡŽ. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅ CI/CD-инструмСнты ΠΊΠ°ΠΊ Jenkins, CircleCI, AWS CodeBuild, Azure DevOps, Atlassian Bamboo, Travis CI.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ состоит ΠΈΠ· этапов сборки, тСстирования ΠΈ развСртывания. Π‘ΠΎΠ»Π΅Π΅ слоТныС ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ этапы:

Π’ Π±ΠΎΠ»Π΅Π΅ слоТном CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ этапы, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ синхронизация Π΄Π°Π½Π½Ρ‹Ρ…, Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… рСсурсов, установка ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ. CI/CD-инструмСнты ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹. НапримСр, Ρƒ Jenkins Π΅ΡΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ 1500 ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ со сторонними ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ, для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса, администрирования, управлСния исходным ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ сборкой.

ΠŸΡ€ΠΈ использовании CI/CD-инструмСнта Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ всС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ сконфигурированы Π²Π½Π΅ прилоТСния Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния. CI/CD-инструмСнты ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ значСния этих ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΌΠ°ΡΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠΈ ΠΊΠ»ΡŽΡ‡ΠΈ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… записСй, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π²ΠΎ врСмя развСртывания для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ окруТСния.
Π’Π°ΠΊΠΆΠ΅ Π² CD-инструмСнтах ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Π°ΡˆΠ±ΠΎΡ€Π΄Ρ‹ ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ. Π’ случаС сбоя сборки ΠΈΠ»ΠΈ поставки ΠΎΠ½ΠΈ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π°ΡŽΡ‚ ΠΎΠ± этом. ΠŸΡ€ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ CD с систСмой контроля вСрсий ΠΈ agile-инструмСнтами облСгчаСтся поиск ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠΎΠ΄Π° ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… историй, Π²ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… Π² сборку.

РСализация CI/CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ΠΎΠ² с Kubernetes ΠΈ бСссСрвСрными Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°ΠΌΠΈ

МногиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ CI/CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Ρ‹ Π² ΠΎΠ±Π»Π°ΠΊΠ°Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Docker, ΠΈ систСмы оркСстрации, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Kubernetes. ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΡƒ, поставку ΠΈ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ с нСпостоянной Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ.

Π•ΡΡ‚ΡŒ мноТСство Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² совмСстного использования ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ², инфраструктуры ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ ΠΈ CI/CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ΠΎΠ². ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ это Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π² ΡΡ‚Π°Ρ‚ΡŒΡΡ… Kubernetes with Jenkins ΠΈ Kubernetes with Azure DevOps.

АрхитСктура бСссСрвСрных вычислСний прСдставляСт собой Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ способ развСртывания ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’ бСссСрвСрном ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ инфраструктурой ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ управляСт поставщик ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… услуг, Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ потрСбляСт рСсурсы ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости Π² соотвСтствии с Π΅Π³ΠΎ настройками. НапримСр, Π² AWS бСссСрвСрныС прилоТСния Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ AWS Lambda, Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ Π² CI/CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ Jenkins с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ»Π°Π³ΠΈΠ½Π°.

CI/CD обСспСчиваСт Π±ΠΎΠ»Π΅Π΅ частоС Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°

Π˜Ρ‚Π°ΠΊ, ΠΏΠΎΠ΄Π²Π΅Π΄Π΅ΠΌ ΠΈΡ‚ΠΎΠ³ΠΈ. CI ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚, тСстируСт сборки ΠΈ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Ссли Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ пошло Π½Π΅ Ρ‚Π°ΠΊ. CD автоматичСски Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ прилоТСния ΠΈ выполняСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ тСсты.

CI/CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Ρ‹ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ часто Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² прилоТСния с Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ процСссом поставки. Помимо стандартизации сборки, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ тСстов ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΉ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ цСлостный производствСнный процСсс ΠΏΠΎ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠΎΠ΄Π°. Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ CI/CD позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π½Π΅ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ силы Π½Π° Π΅Π³ΠΎ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅.

CI/CD являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· DevOps-ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π° Π½Π° Π±ΠΎΡ€ΡŒΠ±Ρƒ с противорСчиями ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хотят часто Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния, ΠΈ эксплуатациСй, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π΅ΠΉ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Благодаря Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Ρ‡Π°Ρ‰Π΅, Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ эксплуатации, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ конфигурация ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ стандартизирована ΠΈ Π² процСссС поставки осущСствляСтся Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠ΅ тСстированиС. Π’Π°ΠΊΠΆΠ΅ настройка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния ΠΎΡ‚Π΄Π΅Π»Π΅Π½Π° ΠΎΡ‚ прилоТСния ΠΈ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΎΡ‚ΠΊΠ°Ρ‚Π°.

Π­Ρ„Ρ„Π΅ΠΊΡ‚ ΠΎΡ‚ внСдрСния CI/CD-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ эффСктивности (KPI) DevOps. Π’Π°ΠΊΠΈΠ΅ KPI ΠΊΠ°ΠΊ частота поставки (deployment frequency), врСмя Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (change lead time) ΠΈ срСднСС врСмя восстановлСния послС ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚Π° (mean time to recovery) часто ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΈ CI/CD с Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹ΠΌ тСстированиСм. Однако CI/CD β€” это лишь ΠΎΠ΄ΠΈΠ½ ΠΈΠ· процСссов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΏΠΎΡΠΎΠ±ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ этим ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡΠΌ. Π•ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ условия для увСличСния частоты поставки.

Для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с CI/CD ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ эксплуатации Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ совмСстно ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ с тСхнологиями, ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°ΠΌΠΈ. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ консСнсус Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΊ своСму бизнСсу ΠΈ тСхнологиям, Ρ‡Ρ‚ΠΎΠ±Ρ‹ послС внСдрСния CI/CD ΠΊΠΎΠΌΠ°Π½Π΄Π° постоянно ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»Π°ΡΡŒ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *