ΠΠΎΠ»ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ
ΠΡ Π² GitLab ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΈΡΠ΅ΠΌ Π½ΠΎΠ²ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠ»ΡΡΡΠΈΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠΌΡ ΡΠΈΠΊΠ»Ρ DevOps. ΠΡ Ρ ΡΠ°Π΄ΠΎΡΡΡΡ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΠΌ, ΡΡΠΎ Ρ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΡΡΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌ
Π Π΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ DevOps ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡ
Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ·Π΄Π΅ΡΠΆΠ΅ΠΊ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Docker Π² Windows ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΎΠΉ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΠ² Kubernetes Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°
ΠΡ ΠΎΠ±ΠΎΠΆΠ°Π΅ΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ! ΠΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΡΡΠ°ΡΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΌΠ°ΡΠΈΠ½Π°ΠΌΠΈ ΠΈ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π‘ Π²ΡΠΏΡΡΠΊΠ° GitLab 11.11 ΠΌΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌ
GitLab Premium (ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠ°ΠΌΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ
ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ²) ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠ°ΠΌΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ
ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² GitLab ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠ°Π²Π»ΠΈΠ²Π°ΡΡ
Π ΡΡΠΎ Π΅ΡΠ΅ Π½Π΅ Π²ΡΠ΅!
ΠΡΠΎΠΌΠ΅ Π½ΠΎΠ²ΡΡ
Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ
Π‘Π°ΠΌΡΠΉ ΡΠ΅Π½Π½ΡΠΉ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΡΠ° (
MVP ) β ΠΠΈΠ° ΠΡΠΉ Π‘ΠΎΠΌΠ°Π±Π΅Ρ (Kia Mei Somabes )Π ΡΡΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΠΏΠΊΠΈ, Π° Π½Π΅ Π²ΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅. Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π²ΡΠ΅Π³ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½ΡΠΆΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ². Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΠΠΈΠ° ΠΡΠΉ Π‘ΠΎΠΌΠ°Π±Π΅Ρ!
ΠΠ»Π°Π²Π½ΡΠ΅ ΡΠΈΡΠΈ GitLab 11.11
Windows Container Executor Π΄Π»Ρ GitLab Runner
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Π GitLab 11.11 ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π² GitLab Runner Π½ΠΎΠ²ΡΠΉ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Ρ, ΡΡΠΎΠ±Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Docker ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Windows. Π Π°Π½ΡΡΠ΅ Π΄Π»Ρ ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Docker Π² Windows ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ (shell), Π° ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°ΠΌΠΈ Docker Π² Windows Π½Π°ΠΏΡΡΠΌΡΡ, ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² Linux. Π‘Π΅ΠΉΡΠ°Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΏΠ»Π°ΡΡΠΎΡΠΌ ΠΎΡ Microsoft Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΠΈ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ΠΎΠ² ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ.
Π ΡΡΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π²Ρ ΠΎΠ΄ΠΈΡ ΡΠ»ΡΡΡΠ΅Π½Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° PowerShell Π² GitLab CI/CD, Π° Π΅ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠ±ΡΠ°Π·Ρ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ Π²Π΅ΡΡΠΈΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Windows. ΠΠ°ΡΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ Windows-ΡΠ°Π½Π½Π΅ΡΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ GitLab.com, Π½ΠΎ ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΈ Π½Π΅ Π²Ρ ΠΎΠ΄ΡΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ².
ΠΡΡΠΈΡΡΡΡΠΈΠΉ ΠΏΡΠΎΠΊΡΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΠ΅Π΅ΡΡΡΠ° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ²
PREMIUM, ULTIMATE
ΠΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Π² ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π°Ρ ΡΠ±ΠΎΡΠΊΠΈ, Π° ΠΊΡΡΠΈΡΡΡΡΠΈΠΉ ΠΏΡΠΎΠΊΡΠΈ Π΄Π»Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈΠ· upstream β ΡΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΡΠΊΠΎΡΠΈΡΡ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Ρ. Π‘ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠ΅ΠΉ Π½ΡΠΆΠ½ΡΡ ΡΠ»ΠΎΠ΅Π², Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ ΡΠ΅ΡΠ΅Π· Π½ΠΎΠ²ΡΠΉ ΠΊΡΡΠΈΡΡΡΡΠΈΠΉ ΠΏΡΠΎΠΊΡΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π΅Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΌΠΈ ΠΎΠ±ΡΠ°Π·Π°ΠΌΠΈ Π² Π²Π°ΡΠ΅ΠΉ ΡΡΠ΅Π΄Π΅.
ΠΠΎΠΊΠ° ΡΡΠΎ ΠΏΡΠΎΠΊΡΠΈ Π΄Π»Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠ°ΠΌΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ
ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² Π½Π° Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ΅
ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΡ Π΄Π»Ρ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠΎΠ²
STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD
ΠΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ°ΡΡΠΎ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»ΡΠ΄Π΅ΠΉ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ Π² ΠΎΠ±ΡΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅ ΠΈ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎΠ½ΡΠ΅Π½Π΄- ΠΈ Π±ΡΠΊΠ΅Π½Π΄-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ΅ΡΠ½ΠΎ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ°ΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ Π² ΡΠΊΡΡΡΠ΅ΠΌΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ.
Π GitLab 11.11 Π½Π° ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π½Π°ΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ. ΠΠ°ΠΊ ΠΈ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π·Π° Π·Π°Π΄Π°ΡΠΈ, Π·Π΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΏΠΈΡΠΊΠΈ, ΡΠΈΠ»ΡΡΡΡ, ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΈ API.
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Kubernetes Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°
CORE, STARTER, PREMIUM, ULTIMATE
ΠΠΎΠ΄Π΅Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ Π² Kubernetes ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ, ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡΠΈΠΉ ΠΊΠ»Π°ΡΡΠ΅Ρ.
Π GitLab 11.11 ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠ°ΠΌΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠ°Π²Π»ΠΈΠ²Π°ΡΡ ΠΊΠ»Π°ΡΡΠ΅Ρ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ², ΠΈ Π²ΡΠ΅ Π³ΡΡΠΏΠΏΡ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ Π² ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ΅ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ Π΄Π΅ΠΏΠ»ΠΎΠ΅Π². ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ GitLab Ρ Kubernetes Π±ΡΠ΄ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ ΡΠ΅ΡΡΡΡΡ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π΄Π»Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
Π£Π²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎ Π΄Π΅ΠΏΠ»ΠΎΡΡ Π² Slack ΠΈ Mattermost
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎ ΡΠΎΠ±ΡΡΠΈΡΡ
Π΄Π΅ΠΏΠ»ΠΎΡ Π² ΠΊΠ°Π½Π°Π»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ ΡΠ°ΡΠ°ΠΌΠΈ
ΠΠΎΡΡΠ΅Π²ΠΎΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ Π²ΡΠΏΡΡΠΊΠ°ΠΌ
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Π’Π΅ΠΏΠ΅ΡΡ Π³ΠΎΡΡΠ΅Π²ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π²Π°ΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π²ΡΠΏΡΡΠΊΠΈ, ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ Releases. ΠΠ½ΠΈ ΡΠΌΠΎΠ³ΡΡ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡΠ΅ Π°ΡΡΠ΅ΡΠ°ΠΊΡΡ, Π½ΠΎ Π½Π΅ ΡΠΌΠΎΠ³ΡΡ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅Π³ΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ.
ΠΡΡΠ³ΠΈΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² GitLab 11.11
Π‘Π΅ΡΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π³ΡΠ°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
ΠΠ»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Git ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ±Ρ ΠΎΠ΄ Π³ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ Π±Π°Π·Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΈΠ»ΠΈ Π²ΡΠ²ΠΎΠ΄ Π²Π΅ΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΊΠΎΠΌΠΌΠΈΡ. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΠ΅ΠΌ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π΄Π»Ρ ΠΎΠ±Ρ ΠΎΠ΄Π° Π½ΡΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Ρ Π΄ΠΈΡΠΊΠ°, ΡΡΠΎΠ±Ρ ΡΡΠΈΡΠ°ΡΡ Π΅Π³ΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ.
Π GitLab 11.11 ΠΌΡ Π²ΠΊΠ»ΡΡΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ Π³ΡΠ°ΡΠΎΠ² ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π²ΡΠΏΡΡΠΊΠ°Ρ Git, ΡΡΠΎΠ±Ρ Π·Π°ΡΠ°Π½Π΅Π΅ Π²ΡΡΠΈΡΠ»ΡΡΡ ΠΈ Ρ ΡΠ°Π½ΠΈΡΡ ΡΡΠΈ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ. Π’Π΅ΠΏΠ΅ΡΡ ΠΎΠ±Ρ ΠΎΠ΄Ρ Π² Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΡΡΡΡΠ΅Π΅. ΠΡΠ°Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π±ΡΠ΄Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π½ ΠΏΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ±ΠΎΡΠΊΠ΅ ΠΌΡΡΠΎΡΠ° Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
Π§ΠΈΡΠ°ΠΉΡΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΡΡ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π³ΡΠ°Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π²
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΌΠΈΠ½ΡΡΡ CI Runner: ΡΠ΅ΠΏΠ΅ΡΡ ΠΈ Π΄Π»Ρ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΠΏΠ»Π°Π½ΠΎΠ²
FREE, BRONZE, SILVER, GOLD
Π ΠΏΡΠΎΡΠ»ΠΎΠΌ ΠΌΠ΅ΡΡΡΠ΅ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠΊΡΠΏΠ°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΌΠΈΠ½ΡΡΡ CI Runner, Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠ»Π°ΡΠ½ΡΡ ΠΏΠ»Π°Π½ΠΎΠ² GitLab.com. Π ΡΡΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅ ΠΌΠΈΠ½ΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΡΠΏΠ°ΡΡ ΠΈ Π² Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΠΏΠ»Π°Π½Π°Ρ .
ΠΠ°Π³ΡΡΠ·ΠΊΠ° Π°ΡΡ ΠΈΠ²ΠΎΠ² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΈΠΏΠ° ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π°ΡΡ ΠΈΠ² Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Π΄ΠΎΠ»Π³ΠΎ ΠΈ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π½ΡΠΆΠ΅Π½, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΡΠ»ΡΡΠ°Π΅ ΠΊΡΡΠΏΠ½ΡΡ ΠΌΠΎΠ½ΠΎΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π². Π GitLab 11.11 ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π°ΡΡ ΠΈΠ² ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ, ΡΡΠΎΠ±Ρ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½ΡΠΆΠ½ΡΠ΅ ΠΏΠ°ΠΏΠΊΠΈ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΡΠ°Π±ΠΎΡΡ,
ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ΅ΠΏΠ΅ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ°ΠΌΠΈ: ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ Π±Π΅Π· ΠΊΠΎΠΏΠΈΠΏΠ°ΡΡΡ Π΄Π»Ρ ΠΏΡΠΈΠ½ΡΡΠΈΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. Π GitLab 11.11 ΠΌΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π΅ΡΠ΅ ΠΏΡΠΎΡΠ΅: ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΡΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π‘ΡΠ΅ΡΡΠΈΠΊ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ Π΄ΠΎΡΠΊΠΈ Π·Π°Π΄Π°Ρ
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
ΠΠΎΠΊΠΎΠ²ΡΠ΅ ΠΏΠ°Π½Π΅Π»ΠΈ Π·Π°Π΄Π°Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡΡ Π΄ΠΎΡΠΊΠΈ ΠΈ Π·Π°Π΄Π°Ρ. ΠΠΎΡΡΠΎΠΌΡ Π² GitLab ΡΠ΅ΠΏΠ΅ΡΡ Π΅ΡΡΡ ΡΡΠ΅ΡΡΠΈΠΊ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ Π·Π°Π΄Π°Ρ Π½Π° Π΄ΠΎΡΠΊΠ΅ Π·Π°Π΄Π°Ρ. ΠΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π½Π° Π΄ΠΎΡΠΊΡ Π·Π°Π΄Π°Ρ, Π½Π°ΠΆΠΌΠΈΡΠ΅ Π½Π° Π·Π°Π΄Π°ΡΡ, ΠΈ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ Π±ΠΎΠΊΠΎΠ²Π°Ρ ΠΏΠ°Π½Π΅Π»Ρ ΡΠΎ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
Π‘Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π΄Π΅ΠΏΠ»ΠΎΡΡ Π² Environments API
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
ΠΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ Ρ Environments API, ΡΡΠΎΠ±Ρ Π·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡ Π² ΡΡΠ΅Π΄Π΅ ΠΏΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ. ΠΡΠΎ ΡΠΏΡΠΎΡΡΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΈ ΠΎΡΡΠ΅ΡΠ½ΠΎΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Environments Π² GitLab.
ΠΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π΄Π»Ρ ΠΏΡΠ°Π²ΠΈΠ» ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π°
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ°Π²Π΅Π½ΡΡΠ²ΠΎ ΠΈΠ»ΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² (!=
ΠΈ !~
) Π² ΡΠ°ΠΉΠ»Π΅ .gitlab-ci.yml
ΠΏΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΡΠ΅Π΄Ρ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ΠΎΠ² ΡΡΠ°Π» Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΌ.
ΠΠ°ΠΏΡΡΠΊ Π²ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ Π²ΡΡΡΠ½ΡΡ Π΄ΠΆΠΎΠ±ΠΎΠ² Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ΅Π»ΡΠΊΠΎΠΌ
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Π GitLab 11.11 ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ, Ρ ΠΊΠΎΡΠΎΡΡΡ Π½Π° ΡΡΠ°ΠΏΠ°Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΆΠΎΠ±ΠΎΠ², Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ Π²ΡΡΡΠ½ΡΡ, ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π²ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ Π΄ΠΆΠΎΠ±Ρ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡ Β«Play allΒ» (Β«ΠΠ°ΠΏΡΡΡΠΈΡΡ Π²ΡΠ΅Β») ΡΠΏΡΠ°Π²Π° ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΡΠ°ΠΏΠ° Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ΠΎΠ².
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ· ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΄Π»Ρ ΡΠ΅ΠΊΡΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ΄Π°ΡΡΡΡ Π² Π·Π°ΡΠΈΡΠ΅ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π΅ ΡΡΠ΅Π΄Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²Ρ Π·Π°Π΄Π°Π΅ΡΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° ΠΈ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ ΡΠ°ΠΉΠ» Π² Π΄ΠΆΠΎΠ±Π΅, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π‘ Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ ΡΠΈΠΏΠ° file
ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π·Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π³ Π΄Π°ΠΆΠ΅ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ .gitlab-ci.yml.
ΠΠΎΠ½Π΅ΡΠ½Π°Ρ ΡΠΎΡΠΊΠ° API Π΄Π»Ρ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎΠ± ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ
ULTIMATE, GOLD
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Ρ GitLab API Π²ΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, Π²ΡΡΠ²Π»Π΅Π½Π½ΡΠ΅ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅. Π‘ ΡΡΠΈΠΌ API ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΌΠ°ΡΠΈΠ½ΠΎΡΠΈΡΠ°Π΅ΠΌΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Ρ ΡΠΈΠ»ΡΡΡΠ°ΠΌΠΈ ΠΏΠΎ ΡΠΈΠΏΡ, Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠ΅ΡΡΠ΅Π·Π½ΠΎΡΡΠΈ.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ DAST
ULTIMATE, GOLD
Π GitLab Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Dynamic Application Security Testing, DAST) Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π° CI. ΠΠ°ΡΠΈΠ½Π°Ρ Ρ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΡΡΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΠ»Π½ΠΎΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°ΡΠΈΡΠ°Π΅Ρ ΠΎΡ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Prometheus Π² ΠΊΠ»Π°ΡΡΠ΅ΡΠ°Ρ Π½Π° ΡΡΠΎΠ²Π½Π΅ Π³ΡΡΠΏΠΏΡ
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Π ΡΡΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅ GitLab ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ»ΡΡΡ ΠΊΠ»Π°ΡΡΠ΅Ρ Kubernetes ΠΊΠΎ Π²ΡΠ΅ΠΉ Π³ΡΡΠΏΠΏΠ΅. ΠΡ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Prometheus Π½Π° ΡΡΠΎΡ ΠΊΠ»Π°ΡΡΠ΅Ρ, ΡΡΠΎΠ±Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π²ΡΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π½Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠ΅.
Π‘Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ± ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ
ULTIMATE, GOLD
ΠΠ° ΠΏΠ°Π½Π΅Π»ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ GitLab Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΏΡΠΎΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ. Π§ΡΠΎΠ±Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ, ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ± ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡΡΠΌΠΎ Π½Π° ΠΏΠ°Π½Π΅Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌ ΠΌΠ΅ΡΡΠΈΠΊ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°
PREMIUM, ULTIMATE, SILVER, GOLD
Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠ΅ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΡΠΌΠΎ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΌΠ΅ΡΡΠΈΠΊ. Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ, ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠ΅ΡΡΠΈΠΊ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡ Β«Add MetricΒ» (Β«ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΌΠ΅ΡΡΠΈΠΊΡΒ») Π² ΠΏΡΠ°Π²ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ³Π»Ρ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°.
ΠΠ°Π΄Π°ΡΠΈ ΠΈΠ· ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΡΠΊΡΡΠ²Π°ΡΡΡΡ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ GitLab Alert Bot
PREMIUM, ULTIMATE, SILVER, GOLD
Π’Π΅ΠΏΠ΅ΡΡ Ρ Π·Π°Π΄Π°Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠΊΡΡΠ²Π°ΡΡΡΡ ΠΈΠ· ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ, Π°Π²ΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ GitLab Alert Bot, ΡΡΠΎΠ±Ρ Π²Ρ ΡΡΠ°Π·Ρ Π²ΠΈΠ΄Π΅Π»ΠΈ, ΡΡΠΎ Π·Π°Π΄Π°ΡΠ° ΡΠΎΠ·Π΄Π°Π½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΠ· Π²Π°ΠΆΠ½ΠΎΠ³ΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ.
ΠΠ²ΡΠΎΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΉ ΡΠΏΠΈΠΊΠΎΠ² Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅
ULTIMATE, GOLD
ΠΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΏΠΈΠΊΠΎΠ² Π½Π΅ ΡΠΎΡ ΡΠ°Π½ΡΠ»ΠΈΡΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠΏΠ°Π΄Π°Π»ΠΈ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ²Π½ΠΎ Π½Π΅ ΡΠΎΡ ΡΠ°Π½ΡΠ»ΠΈ ΠΈΡ , ΠΊΠΎΠ³Π΄Π° ΠΌΠ΅Π½ΡΠ»ΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΏΠΈΠΊΠ°. Π GitLab 11.11 ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΏΠΈΠΊΠΎΠ² Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΏΠΈΠΊΠ°, Π΅ΡΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΎΡΠΈΠ±ΠΊΠ°, Π²Ρ ΠΎΡΠ²Π»Π΅ΠΊΠ»ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π²ΡΡΠ»ΠΈ ΠΈΠ· Π±ΡΠ°ΡΠ·Π΅ΡΠ°.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΡΠ·Π΅ΡΠΊΠ°Π»ΠΈΠ²Π°Π½ΠΈΡ Π½Π° GitLab Π΄Π»Ρ Git LFS
STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΡΠ·Π΅ΡΠΊΠ°Π»ΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΠΏΠ»ΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Git ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Π² Π΄ΡΡΠ³ΠΎΠ΅. ΠΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ GitLab ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π³Π΄Π΅-ΡΠΎ Π΅ΡΠ΅. Π’Π΅ΠΏΠ΅ΡΡ GitLab ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ·Π΅ΡΠΊΠ°Π»ΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Ρ Git LFS, ΡΠ°ΠΊ ΡΡΠΎ ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½Π° Π΄Π°ΠΆΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Ρ ΡΠ΅ΠΊΡΡΡΡΠ°ΠΌΠΈ Π΄Π»Ρ ΠΈΠ³Ρ ΠΈΠ»ΠΈ Π½Π°ΡΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ.
ΠΡΠ°Π²Π° Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΏΠΈΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π΄Π»Ρ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΡΠ½ΡΡ ΡΠΎΠΊΠ΅Π½ΠΎΠ² Π΄ΠΎΡΡΡΠΏΠ°
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΡΠΎΠΊΠ΅Π½Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ api
, Π½ΠΎ ΠΏΠΎΠ»Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ API ΠΌΠΎΠΆΠ΅Ρ Π΄Π°Π²Π°ΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ°Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΈΠ»ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΠΌ.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π²ΠΊΠ»Π°Π΄Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΡΠΎΠΊΠ΅Π½Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π²Π° ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΏΠΈΡΡ Π΄Π»Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π° Π½Π΅ Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡΠ±ΠΎΠΊΠΈΠΉ Π΄ΠΎΡΡΡΠΏ Π½Π° ΡΡΠΎΠ²Π½Π΅ API ΠΊ ΡΠ°ΠΊΠΈΠΌ Π΄Π΅Π»ΠΈΠΊΠ°ΡΠ½ΡΠΌ Π·ΠΎΠ½Π°ΠΌ GitLab, ΠΊΠ°ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈ ΡΠ»Π΅Π½ΡΡΠ²ΠΎ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, Π₯ΠΎΡΠ°ΡΠΈΡ ΠΠ²Π³Π΅Π½ ΠΠ»Π°Π΄ (
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π΄Π»Ρ Π³ΡΡΠΏΠΏΠΎΠ²ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² GraphQL
FREE, BRONZE, SILVER, GOLD, CORE, STARTER, PREMIUM, ULTIMATE
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ API GraphQL ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΡΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠΌ Π½ΡΠΆΠ½Ρ, ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π·Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠ°ΡΠΈΠ½Π°Ρ Ρ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΡΡΠΊΠ° GitLab ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎ Π³ΡΡΠΏΠΏΠ΅ Π² API GraphQL.
ΠΡ ΠΎΠ΄ Ρ ΡΡΠ΅ΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ Salesforce
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
GitLab Π»ΡΠ±ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Salesforce, ΠΈ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°ΡΡ ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ, ΠΌΡ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π²Ρ ΠΎΠ΄ΠΈΡΡ Π½Π° GitLab Ρ ΡΡΠ΅ΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ Salesforce.com. Π‘Π΅ΠΉΡΠ°Ρ Π² ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ GitLab ΠΊΠ°ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ ΠΊ Salesforce, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Salesforce.com Π΄Π»Ρ Π²Ρ ΠΎΠ΄Π° Π½Π° GitLab ΠΎΠ΄Π½ΠΈΠΌ Π½Π°ΠΆΠ°ΡΠΈΠ΅ΠΌ.
SAML SSO ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»Π΅Π½ Π΄Π»Ρ Π²Π΅Π±-Π΄ΠΎΡΡΡΠΏΠ°
PREMIUM, ULTIMATE, SILVER, GOLD
ΠΡ
Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎ Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΌ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΌ Π΄Π°Π½Π½ΡΠΌ Π΄Π»Ρ API ΡΠΏΠΈΠΊΠΎΠ²
ULTIMATE, GOLD
Π Π°Π½ΡΡΠ΅ Π±ΡΠ»ΠΎ Π½Π΅ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ API ΡΠΏΠΈΠΊΠΎΠ² Π½Π° GitLab. Π Π²ΡΠΏΡΡΠΊ 11.11 ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΠ»ΡΡΡΡ created_after
, created_before
, updated_after
ΠΈ updated_before
, ΡΡΠΎΠ±Ρ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Ρ API Π·Π°Π΄Π°Ρ ΠΈ Π±ΡΡΡΡΠΎ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ ΡΠΏΠΈΠΊΠΈ.
ΠΠΈΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Ρ UltraAuth
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΠΠ°ΡΡΠΈΠΊΠΈ Π’Π°Π½Π½Π° (
GitLab Runner 11.11
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ Π²ΡΠΏΡΡΡΠΈΠ»ΠΈ GitLab Runner 11.11! GitLab Runner β ΡΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π·Π°Π΄Π°Π½ΠΈΠΉ CI/CD ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² GitLab.
ΠΡΠΏΡΠ°Π²Π»Π΅Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ git lfs
Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π» ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡΠ»Ρ.ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π±ΠΎΠ»ΡΡΠΈΡ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΎΠΊ. ΠΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ config.toml. ΠΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠ°ΠΏΠΊΠΈ /builds
.ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ PowerShell Π΄Π»Ρ Docker Executor. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠΎΠΌΠΎΠ² Windows Docker.
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ Omnibus
CORE, STARTER, PREMIUM, ULTIMATE
ΠΡ Π²Π½Π΅ΡΠ»ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² Omnibus Π² GitLab 11.11:
- GitLab 11.11 Π²ΠΊΠ»ΡΡΠ°Π΅Ρ
Mattermost 5.10 βΠ°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Slack Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ , Π² Π½ΠΎΠ²ΡΠΉ Π²ΡΠΏΡΡΠΊ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄ΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΡΡΠ΅ΠΌΠ΅ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. ΠΡΠ° Π²Π΅ΡΡΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ , ΠΈ ΠΌΡ ΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅. .Grafana ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 1.1.0
, ΡΡΠΎΠ±Ρ Π΄ΠΎΠ³Π½Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° OmnibusΠ ΠΏΠ°ΠΊΠ΅Ρ PostreSQL 10 ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΠΎΠ΄ΠΈΡ Omnibus. Sentry DSN ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ Π² gitlab.yml
.ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ RubyGems Π΄ΠΎ 2.7.9
.ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ liblzma
Π΄ΠΎ5.2.4
Ρ5.2.2
.ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ libtool
Π΄ΠΎ2.4.6
.postresql Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ pg-upgrade
.ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Prometheus Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΉ. ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ git Π΄ΠΎ 2.21.0
.
Π£Π»ΡΡΡΠ΅Π½ΠΈΠ΅ ΡΡ Π΅ΠΌ
CORE, STARTER, PREMIUM, ULTIMATE
ΠΡ Π²Π½Π΅ΡΠ»ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² Helm-ΡΠ°ΡΡΡ Π² GitLab 11.11:
- Π GitLab 11.11 ΠΌΠΎΠΆΠ½ΠΎ
ΠΏΡΠΈΠΊΡΠ΅ΠΏΠΈΡΡ ΡΠΎΠΌ Π΄Π»Ρ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° tmp/work . - ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°ΠΌ Π΄ΠΎΡΡΡΠΏΠ½Ρ
Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ , Π²ΠΊΠ»ΡΡΠ°ΡmemoryKiller
,maxRss
,graceTime
ΠΈshutdownWait
. - Helm-ΡΠ°ΡΡΡ ΡΠ΅ΠΏΠ΅ΡΡ
Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎ ΡΠ΅ΡΡΠΈΡΡΡΡΡΡ Π² Amazon Elastic Container Service for Kubernetes (EKS )
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
ΠΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ GitLab Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π²ΡΠΏΡΡΠΊΠΎΠΌ Π΄Π»Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² GitLab Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² GitLab 11.11:
Π£ΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ Π°Π²ΡΠΎΠ·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΠ³Π΄Π° Π² ΠΎΡΠ²Π΅ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΡΠ΅ΠΉ ΠΊ Π°Π²Π°ΡΠ°ΡΠ°ΠΌ. Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Sidekiq ΠΏΡΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠΈ todos. ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ΅Π·ΠΎΠ»Π²Π΅ΡΠ° GraphQL Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π»Ρ Π²ΡΠ΄Π°Π²Π°Π΅ΠΌΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π΄ΠΈΡΡ-ΡΠ°ΠΉΠ»Π°. ΠΠ°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ blob-ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ΅. ΠΡΠ²ΠΎΠ΄ ΡΠΏΠΈΡΠΊΠ° Wiki-ΡΡΡΠ°Π½ΠΈΡ Π±Π΅Π· Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ. ΠΡΠΊΠ°Π· ΠΎΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΡΠ»ΠΎΠΊ Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π²Π΅ΡΠΎΠΊ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
Π£ΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅ ΡΠΈΡΠΈ
GitLab Geo ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡ Ρ ΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π² GitLab 12.0
GitLab Geo ΡΡΠ΅Π±ΡΠ΅ΡΡΡ
Π GitLab
Π GitLab sudo gitlab-rake gitlab:geo:check
ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π»ΠΈ Ρ
ΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΈ Π²ΡΠ΅ Π»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΡΡΡΡ. Π‘ΠΌ.
Π GitLab
Π GitLab
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
GitLab Geo ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ PG FDW Π² GitLab 12.0
ΠΡΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π»Ρ Geo Log Cursor, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ. Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ²ΡΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΡΡΠ°ΡΡΡΠ° ΡΠ·Π»ΠΎΠ² Geo. ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΈΠΌΠ΅Π»ΠΈ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π½ΠΈΠ·ΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π² ΠΊΡΡΠΏΠ½ΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
. Π‘ΠΌΠΎΡΡΠΈΡΠ΅, ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΡΠΎ Π²
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Sentry Π΄Π»Ρ ΠΎΡΡΠ΅ΡΠΎΠ² ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ ΠΈ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΡΠ΄Π°Π»Π΅Π½Ρ ΠΈΠ· ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π² GitLab 12.0
ΠΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π±ΡΠ΄ΡΡ ΡΠ΄Π°Π»Π΅Π½Ρ ΠΈΠ· ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π² GitLab 12.0 ΠΈ Π±ΡΠ΄ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² ΡΠ°ΠΉΠ»Π΅ gitlab.yml
. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΡΠ΅Π΄Ρ Sentry, ΡΡΠΎΠ±Ρ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΠΏΠ»ΠΎΠ΅Π². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³ ΠΈ ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½. Π‘ΠΌ.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ΠΎΠ², ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ
Π Π°Π½ΡΡΠ΅ GitLab ΡΠΎΠ·Π΄Π°Π²Π°Π» ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Ρ Π΄Π»Ρ HEAD
ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π² ΠΎΡΠΏΡΠ°Π²ΠΊΠ΅. ΠΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π²Π΅ΡΠΊΡ ΡΠΈΡΠΈ ΠΈ Π² Π²Π΅ΡΠΊΡ develop
).
ΠΠΎ ΠΏΡΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠ΅ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π³Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π°ΠΊΡΠΈΠ²Π½ΡΡ
Π²Π΅ΡΠΎΠΊ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΠΎΡΠ·Π΅ΡΠΊΠ°Π»ΠΈΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠ°Π·Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ), Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΠΊΠΈ. ΠΠ°ΡΠΈΠ½Π°Ρ Ρ GitLab 11.10 ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΌΠ°Ρ 2019 Π³.
Π£ΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅ ΠΏΡΡΠΈ legacy ΠΊΠΎΠ΄Π° GitLab Runner
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Gitlab 11.9 GitLab Runner ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ
Π GitLab 11.0 ΠΌΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Π²ΠΈΠ΄ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ Π΄Π»Ρ GitLab Runner. metrics_server
Π±ΡΠ΄Π΅Ρ ΡΠ΄Π°Π»Π΅Π½ Π² ΠΏΠΎΠ»ΡΠ·Ρ listen_address
Π² GitLab 12.0. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠΌΠΎΡΡΠΈΡΠ΅ Π²
Π Π²Π΅ΡΡΠΈΠΈ 11.3 GitLab Runner Π½Π°ΡΠ°Π» ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ
ΠΡΠΈ ΠΏΡΡΠΈ Π±ΡΠ΄ΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² GitLab 12.0. ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π½ΠΈΡΠ΅Π³ΠΎ ΠΌΠ΅Π½ΡΡΡ, ΡΠΎΠ»ΡΠΊΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ GitLab ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ 11.9+ ΠΏΡΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Π΄ΠΎ GitLab Runner 12.0.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
Π£ΡΡΠ°ΡΠ΅Π²ΡΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π΄Π»Ρ ΡΠΈΡΠΈ ΡΠΎΡΠΊΠΈ Π²Ρ ΠΎΠ΄Π° Π΄Π»Ρ GitLab Runner
Π 11.4 GitLab Runner ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΈΡΠΈ FF_K8S_USE_ENTRYPOINT_OVER_COMMAND
Π GitLab 12.0 ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠΌΡΡ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΈΡΠΈ Π±ΡΠ» ΠΎΡΠΊΠ»ΡΡΠ΅Π½. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠΌΠΎΡΡΠΈΡΠ΅ Π²
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
Π£ΡΡΠ°ΡΠ΅Π²ΡΠ°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Linux, Π΄ΠΎΡΡΠΈΠ³ΡΠ΅Π³ΠΎ EOL, Π΄Π»Ρ GitLab Runner
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ Linux, Π² ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ GitLab Runner, ΡΠ²ΠΎΠ΅ ΠΎΡΡΠ»ΡΠΆΠΈΠ»ΠΈ.
Π GitLab 12.0 GitLab Runner Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ Π² ΡΠ°ΠΊΠΈΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ Linux. ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² Π½Π°ΡΠ΅ΠΉ
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΡΠ°ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ GitLab Runner Helper
Π ΡΠ°ΠΌΠΊΠ°Ρ
Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ
Π GitLab 12.0 GitLab Runner Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½ΠΎΠ²ΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄. ΠΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ legacy ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° git clean ΠΈΠ· GitLab Runner
Π GitLab Runner 11.10 ΠΌΡ git clean
. ΠΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π½ΠΎΠ²Π°Ρ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΎΡΠΈΡΡΠΊΠΈ ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ git reset
ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git clean
ΠΏΠΎΡΠ»Π΅ ΡΠ°Π³Π° Π²ΡΠ³ΡΡΠ·ΠΊΠΈ.
Π Π°Π· ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΌΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΠ»ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ FF_USE_LEGACY_GIT_CLEAN_STRATEGY
. ΠΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ true
, ΠΎΠ½ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ legacy-ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΎΡΠΈΡΡΠΊΠΈ. ΠΠΎΠ»ΡΡΠ΅ ΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ Π² GitLab Runner ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ
Π GitLab Runner 12.0 ΠΌΡ ΡΠ΄Π°Π»ΠΈΠΌ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ legacy-ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ ΠΎΡΠΈΡΡΠΊΠΈ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π΅Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΠΈ. Π‘ΠΌ. Π²
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
Π¨Π°Π±Π»ΠΎΠ½Ρ Π³ΡΡΠΏΠΏΠΎΠ²ΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠ»Π°Π½ΠΎΠ² Silver/Premium
ΠΠΎΠ³Π΄Π° ΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π½Π° ΡΡΠΎΠ²Π½Π΅ Π³ΡΡΠΏΠΏ Π² Π²ΡΠΏΡΡΠΊΠ΅ 11.6, ΠΌΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΡΡ ΡΠΈΡΡ Π΄Π»Ρ Premium/Silver Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΠ»Π°Π½ΠΎΠ².
ΠΡ
Π‘ 22 Π°Π²Π³ΡΡΡΠ° 2019 Π³ΠΎΠ΄Π° ΡΠ°Π±Π»ΠΎΠ½Ρ Π³ΡΡΠΏΠΏΠΎΠ²ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π±ΡΠ΄ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠ»Π°Π½Π° Silver/Premium ΠΈ Π²ΡΡΠ΅, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 Π°Π²Π³ΡΡΡΠ° 2019 Π³.
ΠΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΡ Π·Π°Π΄Π°Π½ΠΈΠΉ Windows
Π GitLab 13.0 (22 ΠΈΡΠ½Ρ 2020 Π³.) ΠΌΡ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΠΌ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΡ
Π·Π°Π΄Π°Π½ΠΈΠΉ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Windows Π² GitLab Runner (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, cmd.exe
) Π² ΠΏΠΎΠ»ΡΠ·Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Windows PowerShell. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ Π²
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΠ΅ Π²ΠΈΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ DevOps Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ Microsoft, ΡΡΠΎ PowerShell β ΡΡΠΎ Π»ΡΡΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΡΡΠ΅Π΄Π°Ρ
Windows. ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈ Π΄Π°Π»ΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ cmd.exe
, ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΈΠ· PowerShell, Π½ΠΎ ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π½Π°ΠΏΡΡΠΌΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ Windows ΠΈΠ·-Π·Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π½Π΅ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ Π²ΡΡΠΎΠΊΠΈΠΌ ΠΈΠ·Π΄Π΅ΡΠΆΠΊΠ°ΠΌ ΠΏΡΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΡΠ΅Π½ΡΡΠ±ΡΡ 2019 Π³.
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ Git 2.21.0 ΠΈΠ»ΠΈ Π²ΡΡΠ΅
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ GitLab 11.11 Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Git 2.21.0.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΌΠ°Ρ 2019 Π³.
Π£ΡΡΠ°ΡΠ΅Π²ΡΠΈΠΉ ΡΠ°Π±Π»ΠΎΠ½ ΡΠ΅ΡΠ²ΠΈΡΠ° Kubernetes
Π GitLab 12.0 ΠΌΡ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΠΌ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡ ΡΠ°Π±Π»ΠΎΠ½Π° ΡΠ΅ΡΠ²ΠΈΡΠ° Kubernetes
ΠΡΠ΅ ΡΠ°ΠΌΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ, Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ°Π±Π»ΠΎΠ½ ΡΠ΅ΡΠ²ΠΈΡΠ°, Π±ΡΠ΄ΡΡ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½Ρ Π² ΠΊΠ»Π°ΡΡΠ΅Ρ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΠΏΡΠΈ Π°ΠΏΠ³ΡΠ΅ΠΉΠ΄Π΅ Π΄ΠΎ GitLab 12.0.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
ΠΡΠΊΠ°Π· ΠΎΡ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎ ΡΡΠ»ΡΠΊΡ app
Π½Π° ΠΏΠ°Π½Π΅Π»ΡΡ
Π΄Π΅ΠΏΠ»ΠΎΡ Kubernetes
Π GitLab 12.0 ΠΌΡ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΠΌ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎ ΡΡΠ»ΡΠΊΡ app Π² ΡΠ΅Π»Π΅ΠΊΡΠΎΡΠ΅ Π΄Π΅ΠΏΠ»ΠΎΠ΅Π² Kubernetes. Π GitLab 11.10 ΠΌΡ Π²Π²Π΅Π»ΠΈ app.example.com/app
ΠΈ app.example.com/env
, ΡΡΠΎΠ±Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π΄Π΅ΠΏΠ»ΠΎΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»Ρ.
Π§ΡΠΎΠ±Ρ ΡΡΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π»ΠΈΡΡ Π½Π° ΠΏΠ°Π½Π΅Π»ΡΡ Π΄Π΅ΠΏΠ»ΠΎΠ΅Π², Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΠΉ Π΄Π΅ΠΏΠ»ΠΎΠΉ, ΠΈ GitLab ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ»ΡΠΊΠΈ.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
ΠΠ°ΠΊΠ΅ΡΡ GitLab 12.0 Π±ΡΠ΄ΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΡΡ
2 ΠΌΠ°Ρ 2019 Π³ΠΎΠ΄Π° GitLab
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
ΠΡΡΠ½Π°Π» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
ΠΡΠΈΡΠ΅ Π²ΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΆΡΡΠ½Π°Π»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ:
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
ΠΡΠ»ΠΈ Π²Ρ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΠ΅ Π½ΠΎΠ²ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ GitLab, ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅
β ΠΠ°Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π°
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com