ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Aqua Security ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π½Π°Π»ΠΈΡΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Π² ΡΠ±ΠΎΡΠΎΡΠ½ΡΡ Π»ΠΎΠ³Π°Ρ , ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Travis CI. ΠΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π½Π°ΡΠ»ΠΈ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ 770 ΠΌΠ»Π½ Π»ΠΎΠ³ΠΎΠ² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ². ΠΡΠΈ ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ 8 ΠΌΠ»Π½ Π»ΠΎΠ³ΠΎΠ² Π² ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ Π±ΡΠ»ΠΎ Π²ΡΡΠ²Π»Π΅Π½ΠΎ ΠΎΠΊΠΎΠ»ΠΎ 73 ΡΡΡΡΡ ΡΠΎΠΊΠ΅Π½ΠΎΠ², ΡΡΡΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΊΠ»ΡΡΠ΅ΠΉ Π΄ΠΎΡΡΡΠΏΠ°, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ GitHub, AWS ΠΈ Docker Hub. ΠΡΡΠ²Π»Π΅Π½Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΎΡΠΊΡΡΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΡ ΠΎΠΆΠ°Ρ ΡΡΠ΅ΡΠΊΠ° Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΏΡΠΈΠ²Π΅Π»Π° ΠΊ Π²Π·Π»ΠΎΠΌΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° NPM.
Π£ΡΠ΅ΡΠΊΠ° ΡΠ²ΡΠ·Π°Π½Π° Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π»ΠΎΠ³Π°ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²ΠΈΡΠ° Travis CI ΡΠ΅ΡΠ΅Π· ΡΡΠ°ΡΠ½ΡΠΉ API (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ±ΠΎΡΠΎΡΠ½ΡΠΉ Π»ΠΎΠ³ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠ΅ΡΠ΅Π· URL Π²ΠΈΠ΄Π° «https://api.travis-ci.org/v3/job/5248126/log.txt», Π³Π΄Π΅ ΡΠΈΡΠ»ΠΎ 5248126 — ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π»ΠΎΠ³Π°). ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² Π»ΠΎΠ³ΠΎΠ² Π±ΡΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ API («https://api.travis-ci.org/logs/6976822»), ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π·Π°Π³ΡΡΠ·ΠΊΡ Π»ΠΎΠ³Π° ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠ²ΠΎΠΌΡ Π½ΠΎΠΌΠ΅ΡΡ. ΠΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° Π² Ρ ΠΎΠ΄Π΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΄Π°Π»ΠΎΡΡ Π±Π΅Π· Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΎΠΊΠΎΠ»ΠΎ 770 ΠΌΠ»Π½ Π»ΠΎΠ³ΠΎΠ², ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Ρ 2013 ΠΏΠΎ ΠΌΠ°ΠΉ 2022 Π³ΠΎΠ΄Π° Π² Ρ ΠΎΠ΄Π΅ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΏΠΎΠ΄ΠΏΠ°Π΄Π°ΡΡΠΈΡ ΠΏΠΎΠ΄ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΡΠ°ΡΠΈΡΠ½ΡΠΉ ΠΏΠ»Π°Π½.
ΠΠ½Π°Π»ΠΈΠ· ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ Π²ΡΠ±ΠΎΡΠΊΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π», ΡΡΠΎ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ»ΡΡΠ°ΡΡ Π² Π»ΠΎΠ³Π΅ Π² ΠΎΡΠΊΡΡΡΠΎΠΌ Π²ΠΈΠ΄Π΅ ΠΎΡΡΠ°ΠΆΠ°ΡΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ, API ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°ΠΌ, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠ΅ Π΄Π»Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ, Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ ΠΎΠ±Π»Π°ΡΠ½ΡΠΌ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌ Π² ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π»ΠΎΠ³Π°Ρ Π±ΡΠ»ΠΈ Π½Π°ΠΉΠ΄Π΅Π½Ρ ΡΠΎΠΊΠ΅Π½Ρ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ Π² GitHub, ΠΏΠ°ΡΠΎΠ»ΠΈ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ±ΠΎΡΠΎΠΊ Π² Docker Hub, ΠΊΠ»ΡΡΠΈ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΠΌ Amazon Web Services (AWS), ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ Π‘Π£ΠΠ MySQL ΠΈ PostgreSQL.
ΠΡΠΈΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ ΡΡΠ΅ΡΠΊΠΈ ΡΠ΅ΡΠ΅Π· API ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ Π² 2015 ΠΈ 2019 Π³ΠΎΠ΄Π°Ρ . ΠΠΎΡΠ»Π΅ ΠΏΡΠΎΡΠ»ΡΡ ΠΈΠ½ΡΠΈΠ΄Π΅Π½ΡΠΎΠ² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Travis Π΄ΠΎΠ±Π°Π²ΠΈΠ»Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π΄Π»Ρ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΎΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΡΠ΅Π·Π°Π»Π° Π΄ΠΎΡΡΡΠΏ ΠΊ API, Π½ΠΎ Π΄Π°Π½Π½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΠ΄Π°Π»ΠΎΡΡ ΠΎΠ±ΠΎΠΉΡΠΈ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Travis Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΡΡΠ° ΠΏΠΎΠΏΡΡΠΊΠ° ΡΠΈΡΡΠΊΠΈ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Π² Π»ΠΎΠ³Π°Ρ , Π½ΠΎ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ»ΠΈ ΠΎΡΠΈΡΠ΅Π½Ρ Π»ΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ½ΠΎ.
Π£ΡΠ΅ΡΠΊΠ° Π³Π»Π°Π²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π·Π°ΡΡΠΎΠ½ΡΠ»Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΎΡΠΊΡΡΡΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΌ Travis ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ²ΠΎΠ΅ΠΌΡ ΡΠ΅ΡΠ²ΠΈΡΡ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ. Π Ρ
ΠΎΠ΄Π΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, ΠΏΡΠΎΠ²Π΅Π΄ΡΠ½Π½ΠΎΠΉ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠ΅ΡΠ²ΠΈΡ-ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ°ΠΌΠΈ, Π±ΡΠ»ΠΎ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΎ, ΡΡΠΎ ΠΎΠΊΠΎΠ»ΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ ΠΈΠ· Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΡ
ΠΈΠ· Π»ΠΎΠ³ΠΎΠ² ΡΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΎΡΡΠ°ΡΡΡΡ ΡΠ°Π±ΠΎΡΠΈΠΌΠΈ. ΠΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ° ΡΠ΅ΡΠ²ΠΈΡΠ° Travis CI ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΡΠΎΡΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΠΊΠ»ΡΡΠΈ Π΄ΠΎΡΡΡΠΏΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠ±ΠΎΡΠΎΡΠ½ΡΡ
Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π²ΡΠ²ΠΎΠ΄Π° Π² Π»ΠΎΠ³ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru