ΠΡΡΡΡΠΎΠ΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΠΊΠΈ ΡΠ΅ΠΊΡΠ΅ΡΠΎΠ²
ΠΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΠΎΡΠΈΠ±ΠΊΠ° β ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΡΠ΅ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΎΠ±ΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠ΅. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠΎΠ»ΡΡΠΈΡ Π²Π°Ρ ΠΏΠ°ΡΠΎΠ»Ρ ΠΈΠ»ΠΈ API-ΠΊΠ»ΡΡ, ΠΎΠ½ Π·Π°Ρ Π²Π°ΡΠΈΡ Π²Π°ΡΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ, Π·Π°Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ Π²Π°Ρ ΠΈ ΠΎΠ±ΠΌΠ°Π½Π½ΡΠΌ ΠΏΡΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΄Π΅Π½ΡΠ³ΠΈ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΡΡΡΠ΅ΠΊΡ Π΄ΠΎΠΌΠΈΠ½ΠΎ: Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄ΡΡΠ³ΠΈΠΌ. Π‘ΡΠ°Π²ΠΊΠΈ Π²ΡΡΠΎΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ Π²Π°ΠΆΠ½ΠΎ ΡΠ·Π½Π°Π²Π°ΡΡ ΠΎΠ± ΡΡΠ΅ΡΠΊΠ΅ ΡΠ΅ΠΊΡΠ΅ΡΠΎΠ² ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΡΠ΅Π΅.
Π ΡΡΠΎΠΌ ΡΠ΅Π»ΠΈΠ·Π΅ ΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΎΠΏΡΠΈΡ
ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ
ΠΠΎ ΠΌΠ΅ΡΠ΅ ΡΠΎΡΡΠ° ΠΈ ΡΡΠ»ΠΎΠΆΠ½Π΅Π½ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠ°ΡΡΡΠΌΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΠ΅ ΡΠ»ΠΎΠΆΠ½Π΅Π΅. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠ΅ΠΌ Π²ΡΡΠ΅ Π΄ΠΎΡ ΠΎΠ΄, ΡΠ΅ΠΌ ΡΠ΅ΡΡΠ΅Π·Π½Π΅Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ ΠΌΠ΅ΡΠ΄ΠΆΠ° Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΉ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΠΌΠ΅ΡΠ΄ΠΆΠ΅ΠΌ ΠΊΠΎΠ΄Π° β ΠΆΠ΅ΡΡΠΊΠΎΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΈΡΠΊΠΈ ΠΎΡΠ΅Π½Ρ Π²ΡΡΠΎΠΊΠΈ.
Π GitLab 11.9 Π±ΠΎΠ»ΡΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° β Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ
ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΡΠΎΡ ΡΠ°Π½ΡΡ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠΎΡΡΠΎΡΡ Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ GitLab, Π³Π΄Π΅ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΠ΄, ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Ρ ΠΈ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π²ΠΈΠ΄Π½Ρ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄Π»Ρ ΠΏΡΠΈΠ½ΡΡΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΈ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ.
ChatOps ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΠΌΠ΅Π΅Ρ ΠΎΡΠΊΡΡΡΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄
GitLab ChatOps β ΡΡΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π»ΡΠ±ΠΎΠΉ Π΄ΠΆΠΎΠ± CI/CD ΠΈ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π΅Π³ΠΎ ΡΡΠ°ΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΡΠ°ΠΊΠΈΡ
ΡΠ°Ρ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
, ΠΊΠ°ΠΊ Slack ΠΈ Mattermost.
Π ΡΠ»ΡΡΠ°Π΅ Ρ ChatOps ΠΌΡ ΠΏΠΎΠ½ΡΠ»ΠΈ, ΡΡΠΎ ΡΡΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π²ΡΠ΅ΠΌ, ΠΈ ΡΡΠΎ ΡΡΠ°ΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½Π΅ΡΡΠΈ ΠΏΠΎΠ»ΡΠ·Ρ ΡΠ°ΠΌΠΎΠΉ ΡΠΈΡΠ΅.
Π GitLab 11.9 ΠΌΡ
Π ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅!
Π ΡΡΠΎΠΌ ΡΠ΅Π»ΠΈΠ·Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ ΡΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ
ΡΠΈΡ: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΅Π½Π½ΡΠΌ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠΌ (
MVP ) ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΡΠ° ΠΏΡΠΈΠ·Π½Π°Π½ ΠΠ°ΡΡΠ΅Π»Ρ ΠΠΌΠΈΡΠΎ (Marcel Amirault )
ΠΠ°ΡΡΠ΅Π»Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π» Π½Π°ΠΌ ΡΠ»ΡΡΡΠ°ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ GitLab. ΠΠ½ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΡΠ΄Π΅Π»Π°Π» Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π°ΡΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ². ΠΠΎΠΌΠΎ Π°ΡΠΈΠ³Π°ΡΠΎ [Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΏΠ°ΡΠΈΠ±ΠΎ (ΡΠΏ.) β ΠΏΡΠΈΠΌ. ΠΏΠ΅Ρ.] ΠΠ°ΡΡΠ΅Π»Ρ, ΠΌΡ ΠΈΡΠΊΡΠ΅Π½Π½Π΅ ΡΠ΅Π½ΠΈΠΌ ΡΡΠΎ!
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠ΅ Π² ΡΠ΅Π»ΠΈΠ· GitLab 11.9
ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΠ΅ΡΠΎΠ² ΠΈ ΡΡΠ΅ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
(ULTIMATE, GOLD)
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΏΠΎΡΠΎΠΉ Π½Π΅ΠΏΡΠ΅Π΄Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΡΠ΅ΠΊΡΠ΅ΡΡ ΠΈ ΡΡΠ΅ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. ΠΡΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π»ΡΠ΄ΠΈ ΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΠΎΠΌΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΡ, ΠΈΠ»ΠΈ Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ β ΠΎΡΠΊΡΡΡΡΠΉ, ΡΠΎ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠ°ΡΠΊΡΡΠ²Π°Π΅ΡΡΡ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ°ΠΊΠΈΠΌ ΡΠ΅ΡΡΡΡΠ°ΠΌ, ΠΊΠ°ΠΊ ΡΡΠ΅Π΄Ρ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ.
GitLab 11.9 Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΡΡ β βSecret Detectionβ. ΠΠ½ ΡΠΊΠ°Π½ΠΈΡΡΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² ΠΏΠΎΠΈΡΠΊΠ΅ API-ΠΊΠ»ΡΡΠ΅ΠΉ ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π΄Π΅ΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ. GitLab ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π² ΠΎΡΡΠ΅ΡΠ΅ SAST Π² Π²ΠΈΠ΄ΠΆΠ΅ΡΠ΅ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ°, ΠΎΡΡΠ΅ΡΠ°Ρ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ΠΎΠ² ΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΠ»ΠΈ SAST Π΄Π»Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΎ Π½ΠΈΡΠ΅Π³ΠΎ Π΄Π΅Π»Π°ΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ, ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°ΠΌΠΈ ΡΡΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ ΡΠΈΡΠΈ. ΠΠ½Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½Π° Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ
ΠΡΠ°Π²ΠΈΠ»Π° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠΎΠ²
(PREMIUM, ULTIMATE, SILVER, GOLD)
Π Π΅ΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° β Π½Π΅ΠΎΡΡΠ΅ΠΌΠ»Π΅ΠΌΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π½ΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΠΊΡΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΡΠ΅ΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ°ΡΠ°ΡΡΡΡ ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ°ΡΡΠΈΠ΅ ΡΠ΅ΡΠ΅Π½Π·Π΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠ°Π·Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄: ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΡΠ°Π²ΠΈΠ»Π° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π»ΠΈΡΠ°ΠΌΠΈ, ΡΡΠ°ΡΡΠ²ΡΡΡΠΈΠΌΠΈ Π² ΡΠ΅ΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠ΄Π°: ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΊΡΡΠ³ ΡΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡΠ΅Π½Π½ΡΡ ΡΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡΠΈΡ Π»ΠΈΡ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠΉ. ΠΡΠ°Π²ΠΈΠ»Π° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π² Π²ΠΈΠ΄ΠΆΠ΅ΡΠ΅ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ°, ΠΈ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ Π½Π°Π·Π½Π°ΡΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ΅Π½Π·Π΅Π½ΡΠ°.
Π GitLab 11.8 ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Ρ. ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ GitLab 11.9 ΠΎΠ½ΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ. Π GitLab 11.3 ΠΌΡ Π²Π²Π΅Π»ΠΈ ΠΎΠΏΡΠΈΡ
ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ChatOps Π² Core
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ Π²Π²Π΅Π΄Π΅Π½Π½ΡΠΉ Π² GitLab Ultimate 10.6, ChatOps ΠΏΠ΅ΡΠ΅Π΅Ρ
Π°Π» Π² GitLab Core. GitLab ChatOps ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΡΠΊΠ° Π·Π°Π΄Π°Π½ΠΈΠΉ GitLab CI ΡΠ΅ΡΠ΅Π· Slack Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΡΠΈ
ΠΡ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΡΠΎΠΉ ΡΠΈΡΠΈ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π½Π°ΡΠΈΠΌ
ΠΡΠ΄ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ
(PREMIUM, ULTIMATE, SILVER, GOLD)
Π’Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΡΡΡΡ Π² Π»ΠΎΠ³Π΅ Π°ΡΠ΄ΠΈΡΠ° GitLab, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΌΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ ΠΈ ΠΊΠΎΠ³Π΄Π° Π±ΡΠ»ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ. ΠΡΠΎΠΈΠ·ΠΎΡΠ»Π° Π°Π²Π°ΡΠΈΡ ΠΈ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ? ΠΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π² ΡΠ°ΠΌΠΊΠ°Ρ Π°ΡΠ΄ΠΈΡΠ° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΠΊΠ°ΠΊ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ? Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ.
Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠΎΠ²
(ULTIMATE, GOLD)
Π§ΡΠΎΠ±Ρ Π±ΡΡΡΡΠΎ ΡΡΡΡΠ°Π½ΡΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΊΠΎΠ΄Π°, ΠΏΡΠΎΡΠ΅ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΡΠΎΡΡΡΠΌ. ΠΠ°ΠΆΠ½ΠΎ ΡΠΏΡΠΎΡΡΠΈΡΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ Π½Π° ΠΏΡΡΠΌΡΡ
ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΡΡ
. Π GitLab 11.7 ΠΌΡ
Π GitLab 11.9 ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½. Π£ΡΡΡΠ°Π½ΡΠΉΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, Π½Π΅ Π²ΡΡ ΠΎΠ΄Ρ ΠΈΠ· Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° GitLab. ΠΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠ· ΠΎΠΊΠ½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ , ΠΈ ΡΡΠ° Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° ΡΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. ΠΡΠΎΠ²Π΅ΡΠΈΠ², ΡΠ΅ΡΠ΅Π½Π° Π»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΡ Π²Π΅ΡΠΊΡ, Π΅ΡΠ»ΠΈ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅.
ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π³ΡΡΠΏΠΏΡ
(ULTIMATE, GOLD)
ΠΠ°Π½Π΅Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π³ΡΡΠΏΠΏΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠ°ΠΌ ΡΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π½Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π²ΠΎΠΏΡΠΎΡΠ°Ρ , ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ ΡΠ΅ΡΠΊΠΈΠΉ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ ΠΎΠ±Π·ΠΎΡ Π²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΡΠΏΠΎΡΠΎΠ±Π½ΡΡ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠ°Π½Π΅Π»Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π»Π° Π²ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ»Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΈΠ·ΡΡΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ ΡΡΡΡΠ°Π½ΡΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ.
Π GitLab 11.9 ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½Π° ΠΏΠ°Π½Π΅Π»Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΡΠΆΠ΅ ΠΈΠΌΠ΅ΡΡΠΈΠΌΡΡ SAST ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ. Π’Π΅ΠΏΠ΅ΡΡ Π²Π΅ΡΡ ΠΎΠ±Π·ΠΎΡ β Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅, Π²Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π¨Π°Π±Π»ΠΎΠ½Ρ CI/CD Π΄Π»Ρ security jobs
(ULTIMATE, GOLD)
Π€ΡΠ½ΠΊΡΠΈΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ GitLab ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΡΡ ΠΎΡΠ΅Π½Ρ Π±ΡΡΡΡΠΎ ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΡΠ΅Π±ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΈ Π·Π°ΡΠΈΡΡ ΠΊΠΎΠ΄Π°. ΠΠ΅Π½ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄ΠΆΠΎΠ±Π° β ΡΠ»ΠΎΠΆΠ½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ. Π Π΅ΡΠ΅ ΠΌΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ: ΡΠΈΡΠΊΠΎΠ²Π°ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ GitLab Π±Π΅Π· ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ Π² Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ ΡΠ΅ΠΊΡΡΠΈΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠΌ GitLab, Π½ΠΈΠΊΡΠΎ Π½Π΅ Ρ ΠΎΡΠ΅Ρ.
ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ ΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»ΠΈ Π² GitLab 11.7 Π½ΠΎΠ²ΡΠΉ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄ΠΆΠΎΠ±ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ GitLab 11.9 ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ Π΄Π»Ρ Π²ΡΠ΅Ρ
security jobs: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, sast
ΠΈ dependency_scanning
, β ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠ΅ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ GitLab.
ΠΠΊΠ»ΡΡΠ°ΠΉΡΠ΅ ΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΡΠ²ΠΎΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ, ΠΈ ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Π΄ΠΎ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ GitLab. ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π° ΠΏΡΠΈ ΡΡΠΎΠΌ Π½Π΅ ΠΌΠ΅Π½ΡΡΡΡΡ.
ΠΠΎΠ²ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ security jobs β ΠΎΡΠΈΡΠΈΠ°Π»Π΅Π½ ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π»ΡΠ±ΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄ΠΆΠΎΠ±ΠΎΠ² ΠΈΠ»ΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ΄Π°. Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΡΠ΅Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΠΎΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ
template
. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π»ΡΠ±ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΄Π°Π»Π΅Π½Π° Π² GitLab 12.0 ΠΈΠ»ΠΈ Π² Π΄ΡΡΠ³ΠΈΡ Π±ΡΠ΄ΡΡΠΈΡ ΡΠ΅Π»ΠΈΠ·Π°Ρ .
ΠΡΡΠ³ΠΈΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² GitLab 11.9
ΠΡΠ²Π΅Ρ Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Π GitLab Π΅ΡΡΡ Π΄ΠΈΡΠΊΡΡΡΠΈΠΈ ΠΏΠΎ ΡΠ΅ΠΌΠ°ΠΌ. ΠΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΠΈΡΡΡΠΈΠΉ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ Π½Π°ΡΠ°Π»Π° ΡΠ΅ΡΠΈΡΡ, Π½ΡΠΆΠ½ΠΎ Π»ΠΈ Π΅ΠΌΡ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅.
ΠΡ ΠΎΡΠ»Π°Π±ΠΈΠ»ΠΈ ΡΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅. ΠΠ΅ΡΠΈΡΠ΅ Π»ΡΠ±ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π² GitLab (ΠΏΠΎ Π·Π°Π΄Π°ΡΠ°ΠΌ, ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ°ΠΌ ΠΈ ΡΠΏΠΈΠΊΠ°ΠΌ) ΠΈ ΠΎΡΠ²Π΅ΡΠ°ΠΉΡΠ΅ Π½Π° Π½Π΅Π³ΠΎ, Π½Π°ΡΠΈΠ½Π°Ρ ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ Π΄ΠΈΡΠΊΡΡΡΠΈΡ. Π’Π°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½Π΅Π΅.
Π¨Π°Π±Π»ΠΎΠ½Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π΄Π»Ρ .NET, Go, iOS ΠΈ Pages
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Π§ΡΠΎΠ±Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΌΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ²:
- ΠΠ°ΡΠ°Π»ΡΠ½ΡΠΉ
ΡΠ°Π±Π»ΠΎΠ½ ΠΏΡΠΎΠ΅ΠΊΡΠ° .NET Core , Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ CI. - ΠΠΎΡΠΎΠ²ΡΠΉ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΡΡΠΈΠΉ
ΡΡΡΡΠΊΡΡΡΡ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠΎΠ² Go Micro ΠΈ GitLab CI/CD. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ iOS βΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!β , Π³ΠΎΡΠΎΠ²ΠΎΠ΅ Π΄Π»Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠ°ΡΡΠΎΠΌΠΈΠ·Π°ΡΠΈΠΈ Π² GitLab. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ iOS ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΠ°Π½Π½Π΅Ρ MacOS, Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΡΠ±ΠΎΡΠΊΠΈ, β Π΅ΡΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Ρ GitLab CI/CD.Π¨Π°Π±Π»ΠΎΠ½Ρ GitLab Pages Π½Π°ΡΡΡΠΎΠ΅Π½Ρ Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ Netlify.
Π’ΡΠ΅Π±ΡΠΉΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠΎΠ² ΠΎΡ Code Owners
(PREMIUM, ULTIMATE, SILVER, GOLD)
ΠΠ΅ Π²ΡΠ΅Π³Π΄Π° ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΠΊΡΠΎ ΡΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡ.
Π’Π΅ΠΏΠ΅ΡΡ GitLab ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ²Π΅ΡΠ΄ΠΈΡΡ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Π·Π°ΠΏΡΠΎΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ CODEOWNERS
, ΡΠΎΡΠΌΠ°Ρ ΠΏΠΎΡ
ΠΎΠΆ Π½Π° gitattributes
.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ Code Owners ΠΊΠ°ΠΊ Π»ΠΈΡ, ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΡ
Π·Π° ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ°, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π΅ΡΠ΅ Π²
ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π² Web IDE
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Π’Π΅ΠΏΠ΅ΡΡ, ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π² ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ ΠΈΠ· Web IDE Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΠΎ Π½ΠΎΠ²ΠΎΠΌΡ ΠΏΡΡΠΈ.
ΠΠ΅ΡΠΊΠΈ Π² Π°Π»ΡΠ°Π²ΠΈΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΠ΅ΡΠΊΠΈ GitLab Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Ρ, ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π½Π°Ρ ΠΎΠ΄ΡΡ ΠΈΠΌ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠ°ΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠΊ ΠΊ Π·Π°Π΄Π°ΡΠ΅, ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΡ ΠΈΠ»ΠΈ ΡΠΏΠΈΠΊΡ.
Π GitLab 11.9 ΠΌΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΏΡΠΎΡΡΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠΊ. Π Π·Π°Π΄Π°ΡΠ°Ρ , ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ°Ρ ΠΈ ΡΠΏΠΈΠΊΠ°Ρ ΠΌΠ΅ΡΠΊΠΈ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠΈΠ΅ΡΡ Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ, ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π² Π°Π»ΡΠ°Π²ΠΈΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅. ΠΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠΏΠΈΡΠΊΠ° ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ².
ΠΡΡΡΡΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΡΠΈ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΏΠΎ Π·Π°Π΄Π°ΡΠ΅
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΌΡ Π²Π²Π΅Π»ΠΈ ΡΠΈΡΡ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠΈΠ»ΡΡΡΡΡΡ Π»Π΅Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΏΠΎ Π·Π°Π΄Π°ΡΠ°ΠΌ, ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ°ΠΌ ΠΈΠ»ΠΈ ΡΠΏΠΈΠΊΠ°ΠΌ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΡΡ . ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅, ΠΈ Π±ΡΠ²Π°Π΅Ρ ΡΠ°ΠΊ, ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ, ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ Π·Π°Π΄Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π½Π΅ΠΉ ΡΠΏΡΡΡΡ, ΠΎΠ½ Π²ΠΈΠ΄ΠΈΡ ΠΎΡΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π½ΡΡ Π»Π΅Π½ΡΡ. ΠΠΌΡ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π½Π΅Π»ΡΠ·Ρ.
ΠΡ ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ Π΄Π°Π½Π½ΠΎΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅. Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π² ΡΠ΅ΠΆΠΈΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π½Π΅ ΠΏΡΠΎΠΊΡΡΡΠΈΠ²Π°Ρ Π»Π΅Π½ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π΄ΠΎ ΡΠ°ΠΌΠΎΠ³ΠΎ Π²Π΅ΡΡ Π°. ΠΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π·Π°Π΄Π°Ρ, ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠΎΠ² ΠΈ ΡΠΏΠΈΠΊΠΎΠ².
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ΄ΠΊΠ° Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ ΡΠΏΠΈΠΊΠΎΠ²
(ULTIMATE, GOLD)
ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΌΡ Π²ΡΠΏΡΡΡΠΈΠ»ΠΈ
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ ΡΠΏΠΈΠΊΠΎΠ² ΡΠΏΠΈΠΊΠΎΠ² ΠΏΡΠΎΡΡΡΠΌ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ Ρ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ. ΠΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π΄Π»Ρ ΠΎΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ° ΠΈΠ»ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡ.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΠΈ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ ΠΊΠΎΠ»ΠΎΠ½ΡΠΈΡΡΠ»Π° Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ ΠΈ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΠ΅
(CORE, STARTER, PREMIUM, ULTIMATE)
Π Π°Π½Π΅Π΅ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΡΠΈΡΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΠΈ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ ΠΊΠΎΠ»ΠΎΠ½ΡΠΈΡΡΠ»Π° ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ Π² GitLab. ΠΡΡΡΠ΅ΡΠΈΠ»ΠΈ Π΅Π΅ ΡΠ΅ΠΏΠ»ΠΎ, ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΅Π΅ Π΄Π»Ρ ΠΎΠ±ΠΌΠ΅Π½Π° Π²Π°ΠΆΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ, ΠΎΡΠ½ΠΎΡΡΡΠΈΠΌΠΈΡΡ ΠΊ ΠΈΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ GitLab.
ΠΡ Ρ ΡΠ°Π΄ΠΎΡΡΡΡ Π²Π²ΠΎΠ΄ΠΈΠΌ ΡΡΡ ΡΠΈΡΡ Π² Core, ΡΠ°ΠΊ ΡΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π΅ΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ Π»ΡΠ΄Π΅ΠΉ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΡ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΠΏΠΈΡΡΠΌΠ°Ρ , ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΡΠ΅ΡΠ΅Π· GitLab, Π΄Π»Ρ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΎΡΠΊΠΎΠΉ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ GitLab.
Π€ΠΈΠ»ΡΡΡ ΠΏΠΎ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΌ Π·Π°Π΄Π°ΡΠ°ΠΌ
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ β ΡΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²Π΅ΡΡΠΈ Π·Π°ΠΊΡΡΡΡΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΠΎ Π΄Π΅Π»ΠΈΠΊΠ°ΡΠ½ΡΠΌ ΡΠ΅ΠΌΠ°ΠΌ. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΎΠ½ΠΈ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠΌΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. ΠΠΎ ΡΠΈΡ ΠΏΠΎΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ Π±ΡΠ»ΠΎ Π½Π΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π»Π΅Π³ΠΊΠΎ.
Π GitLab 11.9 ΡΠΏΠΈΡΠΎΠΊ Π·Π°Π΄Π°Ρ GitLab ΡΠ΅ΠΏΠ΅ΡΡ ΡΠΈΠ»ΡΡΡΡΠ΅ΡΡΡ ΠΏΠΎ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΌ Π·Π°Π΄Π°ΡΠ°ΠΌ. ΠΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΈ ΠΏΠΎΠΈΡΠΊΠ° Π·Π°Π΄Π°Ρ ΠΏΠΎ API.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΠΈΠΌ Π·Π° Π²ΠΊΠ»Π°Π΄ Π ΠΎΠ±Π΅ΡΡΠ° Π¨ΠΈΠ»Π»ΠΈΠ½Π³Π° (
Π Π΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎΠΌΠ΅Π½Π° Knative ΠΏΠΎΡΠ»Π΅ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Knative ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ serverless ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ/ΡΡΠ½ΠΊΡΠΈΠΈ Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Kubernetes Π² GitLab ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ/ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π΄ΠΎΠΌΠ΅Π½ ΠΏΠΎΡΠ»Π΅ Π΄Π΅ΠΏΠ»ΠΎΡ Knative Π² ΠΊΠ»Π°ΡΡΠ΅Ρ Kubernetes.
ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠΎΡΠΌΠ°ΡΠ° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° Kubernetes CA
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Kubernetes GitLab ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΡΡΠΎ Π²Π²Π΅Π΄Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ CA ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠΉ ΡΠΎΡΠΌΠ°Ρ PEM. ΠΡΠΎ ΠΈΠ·Π±Π°Π²Π»ΡΠ΅Ρ ΠΎΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠ΅ΠΉ Kubernetes.
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΡΠΈΠ»ΠΈΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ° Π΄ΠΎ Π²ΡΠ΅Π³ΠΎ ΡΠ°ΠΉΠ»Π°
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ΅, ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΡΡΠΈΠ»ΠΈΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π²Π΅ΡΡ ΡΠ°ΠΉΠ» Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°, ΠΈ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π² Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΡΡΡΠΎΠΊΠ°Ρ .
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ Π΄ΠΆΠΎΠ±ΠΎΠ² ΠΏΠΎ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ°ΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Π GitLab 11.6 Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ only: merge_requests
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΡΠ°ΡΡΠΈΡΡΠ΅ΠΌ ΡΡΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»: Π΄ΠΎΠ±Π°Π²ΠΈΠ»Π°ΡΡ Π»ΠΎΠ³ΠΈΠΊΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ only: changes
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° Π²ΠΊΠ»Π°Π΄ Π₯ΠΈΡΠΎΡΠΊΠΈ Π‘Π°ΡΠΎ (
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ GitLab Ρ Grafana
(CORE, STARTER, PREMIUM, ULTIMATE)
Grafana ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΠΎΠ΄ΠΈΡ Π² Π½Π°Ρ ΠΏΠ°ΠΊΠ΅Ρ Omnibus, ΡΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°.
ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ grafana['enable'] = true
Π² gitlab.rb
, ΠΈ Grafana Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ: https://your.gitlab.instance/-/grafana
. Π Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅ΠΌ Π±ΡΠ΄ΡΡΠ΅ΠΌ ΠΌΡ ΡΠ°ΠΊΠΆΠ΅
ΠΡΠΎΡΠΌΠΎΡΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΡ ΡΠΏΠΈΠΊΠΎΠ² Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΏΠΈΠΊΠΎΠ²
(ULTIMATE, GOLD)
ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»ΠΈ
Π GitLab 11.9 ΠΌΡ ΡΠΏΡΠΎΡΡΠΈΠ»ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΡΠΎΠΉ Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·ΠΈ. Π’Π΅ΠΏΠ΅ΡΡ Π²ΠΈΠ΄Π΅Π½ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΠ½ΡΠΊΠΈΠΉ ΡΠΏΠΈΠΊ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠΈΠΊΠ°, Π½ΠΎ Π²ΡΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ ΡΠΏΠΈΠΊΠΎΠ² Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΏΡΠ°Π²Π°. ΠΠΈΠ΄Π½ΠΎ, Π·Π°ΠΊΡΡΡΡ ΡΡΠΈ ΡΠΏΠΈΠΊΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ, ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°ΠΆΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π½ΠΈΠΌ.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° Π½ΠΎΠ²ΡΡ Π·Π°Π΄Π°ΡΡ ΠΈΠ· ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½Π½ΠΎΠΉ ΠΈ Π·Π°ΠΊΡΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Π GitLab ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡ Π·Π°Π΄Π°ΡΡ Π² Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ»ΠΈ Π±ΡΡΡΡΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠ° ΠΊΠ°Π΄ΡΠΎΠΌ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ°Ρ Π·Π°Π΄Π°ΡΠ° Π·Π°ΠΊΡΡΠ²Π°Π΅ΡΡΡ, ΠΈ Π² ΡΠ΅Π»Π΅Π²ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΠΎΠ²Π°Ρ Π·Π°Π΄Π°ΡΠ° ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΡ ΠΈ Π°ΡΡΠΈΠ±ΡΡΡ Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ. ΠΡΠΎ ΠΎΡΠ»ΠΈΡΠ½Π°Ρ ΡΠΈΡΠ°.
Π£ΡΠΈΡΡΠ²Π°Ρ, ΡΡΠΎ ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π·Π°ΠΊΡΡΡΡΡ Π·Π°Π΄Π°ΡΡ, ΠΈΡΠΏΡΡΡΠ²Π°ΡΡ Π½Π΅Π΄ΠΎΡΠΌΠ΅Π½ΠΈΠ΅: Π½Π΅ ΠΌΠΎΠ³ΡΡ Π½Π΅ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ Π·Π°Π΄Π°ΡΠ° Π·Π°ΠΊΡΡΡΠ° ΠΏΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ.
Π ΡΡΠΎΠΌ ΡΠ΅Π»ΠΈΠ·Π΅ ΠΌΡ ΠΏΡΡΠΌΠΎ Π½Π° Π·Π½Π°ΡΠΊΠ΅ Π² Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΡΡΡΠ°Π½ΠΈΡΡ Π·Π°ΠΊΡΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ, ΡΡΠΎ ΠΎΠ½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½Π°, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° Π½ΠΎΠ²ΡΡ Π·Π°Π΄Π°ΡΡ, ΡΡΠΎΠ±Ρ Π»ΡΠ±ΠΎΠΉ, ΠΊΡΠΎ ΠΏΠΎΠΏΠ°Π» Π½Π° ΡΡΠ°ΡΡΡ, ΠΌΠΎΠ³ Π±ΡΡΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π½ΠΎΠ²ΠΎΠΉ.
ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ YouTrack
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
GitLab ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΡΠ΅ΡΡΡ ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ Π·Π°Π΄Π°Ρ, ΡΡΠΎ ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ GitLab Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΠΎΡ ΡΠ°Π½ΡΡ ΠΏΡΠΈ ΡΡΠΎΠΌ Π²ΡΠ±ΡΠ°Π½Π½ΡΠΉ ΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ.
Π ΡΡΠΎΠΌ ΡΠ΅Π»ΠΈΠ·Π΅ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ YouTrack ΠΎΡ JetBrains.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΠΈΠΌ Π·Π° Π²ΠΊΠ»Π°Π΄ ΠΠΎΡΠ°Ρ Π―ΡΡ
Π΅Π½Π° (
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π΄Π΅ΡΠ΅Π²Π° ΡΠ°ΠΉΠ»ΠΎΠ² ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ°
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΡΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ° ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π΅ΡΠ΅Π²Π° ΡΠ°ΠΉΠ»ΠΎΠ², ΡΡΠΎΠ±Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π΄Π»ΠΈΠ½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΌΠ΅ΡΡΠΎ Π½Π° Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΡΠΊΡΠ°Π½Π°Ρ .
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΊ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ΠΏΠ°Π½Π΅Π»ΡΠΌ Π·Π°Π΄Π°Ρ
(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)
ΠΠ°Π½Π΅Π»ΠΈ Π·Π°Π΄Π°Ρ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½Ρ, ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°Π½Π΅Π»Π΅ΠΉ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ Π³ΡΡΠΏΠΏΡ. ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΏΠ°Π½Π΅Π»Ρ ΠΏΠΎΠΈΡΠΊΠ°, ΡΡΠΎΠ±Ρ Π±ΡΡΡΡΠΎ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡΠΈΠ΅ Π²Π°Ρ ΠΏΠ°Π½Π΅Π»ΠΈ.
Π GitLab 11.9 ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠ°Π·Π΄Π΅Π» Recent Π² Π²ΡΠΏΠ°Π΄Π°ΡΡΠ΅ΠΌ ΡΠΏΠΈΡΠΊΠ΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΏΠ°Π½Π΅Π»ΡΠΌ, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π²Ρ Π½Π΅Π΄Π°Π²Π½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π»ΠΈ.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΠ²Π΅ΠΉ
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΠ°ΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π²Π΅ΡΠ²ΠΈ Π½Π΅ Π΄Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠ΄ΠΆΠΈΡΡ Π½Π΅ΡΠ΅ΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄. ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π½ΠΈΠΊΠΎΠΌΡ Π½Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π²Π΅ΡΠ²ΠΈ, ΡΠΎ Π½ΠΈΠΊΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΠ²Ρ: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π΅ΡΠ²Ρ ΡΠ΅Π»ΠΈΠ·Π°.
Π GitLab 11.9 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π²Π΅ΡΠ²ΠΈ ΠΈΠ· ΡΠΆΠ΅ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΠ²Π΅ΠΉ ΡΠ΅ΡΠ΅Π· GitLab ΠΈΠ»ΠΈ API. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Git Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ Π²ΡΠ΅ Π΅ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ β ΡΡΠΎΠ±Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π²Π΅ΡΠ²ΠΈ.
ΠΠ΅Π΄ΡΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Git Π΄Π»Ρ ΠΎΡΠΊΡΡΡΡΡ ΡΠ°Π·Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠΉ (Beta)
(CORE, STARTER, PREMIUM, ULTIMATE)
Π Π°Π·Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»ΡΠ±ΠΎΠΌΡ Π»ΠΈΡΡ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ: Π±Π΅Π· ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π° Π·Π°ΠΏΠΈΡΡ, ΠΏΡΠΎΡΡΠΎ ΠΊΠΎΠΏΠΈΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ. Π₯ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΡΡ
ΠΊΠΎΠΏΠΈΠΉ ΡΠ°ΡΡΠΎ ΡΠ°Π·Π²Π΅ΡΠ²Π»ΡΠ΅ΠΌΡΡ
ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Git Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ. Π’Π΅ΠΏΠ΅ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Git alternatives
ΡΠ°Π·Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΎΠ±ΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ· Π²ΡΡΠ΅ΡΡΠΎΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² ΠΏΡΠ»Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΡΡΠΎΠ±Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠΌΡ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΡ.
ΠΡΠ»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π·Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠΉ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΎΡΠΊΡΡΡΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π΅ΡΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΎ Ρ
Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅. ΠΡΠ»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π²ΠΊΠ»ΡΡΠ°ΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΠΈ object_pools
.
Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΡΠΏΠΈΡΠΊΠ° ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠΎΠ² ΠΏΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΌ ΡΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡΠΈΠΌ Π»ΠΈΡΠ°ΠΌ
(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)
Π Π΅ΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° β ΠΎΠ±ΡΡΠ½Π°Ρ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°, Π½ΠΎ ΡΠ΅ΡΠ΅Π½Π·Π΅Π½ΡΡ Π±ΡΠ²Π°Π΅Ρ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΡ.
Π GitLab 11.9 ΡΠΏΠΈΡΠΎΠΊ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠΎΠ² ΡΠΈΠ»ΡΡΡΡΠ΅ΡΡΡ ΠΏΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠΌΡ ΡΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡΠ΅ΠΌΡ Π»ΠΈΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΡ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠ΅ Π²Π°ΠΌ ΠΊΠ°ΠΊ ΡΠ΅ΡΠ΅Π½Π·Π΅Π½ΡΡ.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΠΈΠΌ Π·Π° Π²Π½Π΅ΡΠ΅Π½Π½ΡΠΉ Π²ΠΊΠ»Π°Π΄ ΠΠ»Π΅Π²ΠΈΠ½Π° ΠΠΈΡ
Π΅ΡΡΠ° (
ΠΡΡΡΡΡΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈ Π΄Π»Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠ°ΠΉΠ»Π° Π² ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ΅
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΌΠ΅ΡΠ΄ΠΆ-ΡΠ΅ΠΊΠ²Π΅ΡΡΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ]
ΠΈΠ»ΠΈ j
Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΡΠ°ΠΉΠ»Ρ ΠΈ [
ΠΈΠ»ΠΈ k
Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° ΠΊ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌΡ ΡΠ°ΠΉΠ»Ρ.
Π£ΠΏΡΠΎΡΠ΅Π½ΠΈΠ΅ .gitlab-ci.yml
Π΄Π»Ρ serverless ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ²
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Π‘ΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π° include
gitlab-ci.yml
Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ΅Π½. Π§ΡΠΎΠ±Ρ Π² Π±ΡΠ΄ΡΡΠΈΡ
ΡΠ΅Π»ΠΈΠ·Π°Ρ
Π²Π²Π΅ΡΡΠΈ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΡΠΎΡ ΡΠ°ΠΉΠ» Π²Π½ΠΎΡΠΈΡΡ Π½Π΅ Π½Π°Π΄ΠΎ.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΈΠΌΠ΅Π½ Ρ ΠΎΡΡΠΎΠ² Ingress
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΠΎ Π²ΡΠ΅ΠΌΡ Π΄Π΅ΠΏΠ»ΠΎΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Kubernetes Ingress Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ IP-Π°Π΄ΡΠ΅ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, GKE ΠΎΡ Google), Π° Π΄ΡΡΠ³ΠΈΠ΅ β ΠΊ DNS-ΠΈΠΌΠ΅Π½ΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, EKS ΠΎΡ AWS).
ΠΠ°ΡΠ° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Kubernetes ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΠ±Π° ΡΠΈΠΏΠ° ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ
ΡΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ clusters
ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΠΈΠΌ Π·Π° Π²ΠΊΠ»Π°Π΄ ΠΠ°ΡΠΎΠ½Π° Π£ΠΎΠΊΠ΅ΡΠ° (
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ° Π΄Π»Ρ Π²Ρ ΠΎΠ΄Π° Π² JupyterHub ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ² Π³ΡΡΠΏΠΏΡ/ΠΏΡΠΎΠ΅ΠΊΡΠ°
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΠ΅ΠΏΠ»ΠΎΠΉ JupyterHub Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ GitLab Ρ Kubernetes β ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Jupyter Notebook Π² Π±ΠΎΠ»ΡΡΠΈΡ Π³ΡΡΠΏΠΏΠ°Ρ . Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π½ΠΈΠΌ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΈΠ»ΠΈ Π»ΠΈΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ .
Π GitLab 11.9 Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²Ρ ΠΎΠ΄Π° Π² ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ JupyterHub, ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡΠ΅ ΡΠ΅ΡΠ΅Π· Kubernetes, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Ρ ΡΡΠΎΠ²Π½Π΅ΠΌ Π΄ΠΎΡΡΡΠΏΠ° βΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊβ (ΡΠ΅ΡΠ΅Π· Π³ΡΡΠΏΠΏΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ).
ΠΠ°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π΄Π»Ρ ΡΡ Π΅ΠΌ ΠΏΠ°Π½Π΅Π»ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ
(ULTIMATE, GOLD)
ΠΠ°Π½Π΅Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π³ΡΡΠΏΠΏΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΡ Π΅ΠΌΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΠΎΠ±Π·ΠΎΡΠ° ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΡΠ°ΡΡΡΠ° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π³ΡΡΠΏΠΏΡ. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΎΠ² ΠΏΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° ΡΠ°Π±ΠΎΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
Π GitLab 11.9 ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΡΠΎΠΉ ΡΡ Π΅ΠΌΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ 90 Π΄Π½Π΅ΠΉ, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΠΊ Π² 60 ΠΈΠ»ΠΈ 30 Π΄Π½Π΅ΠΉ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
ΠΡΠΎ Π½Π΅ Π²Π»ΠΈΡΠ΅Ρ Π½Π° Π΄Π°Π½Π½ΡΠ΅ Π² ΡΡΠ΅ΡΡΠΈΠΊΠ°Ρ ΠΈΠ»ΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅, ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ , ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΠ΅ Π½Π° ΡΡ Π΅ΠΌΠ΅.
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΆΠΎΠ±Π° ΠΏΠΎ ΡΠ±ΠΎΡΠΊΠ΅ Auto DevOps Π΄Π»Ρ ΡΠ΅Π³ΠΎΠ²
(CORE, STARTER,PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΡΠ°ΠΏ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΈ Auto DevOps ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠ±ΠΎΡΠΊΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Dockerfile ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈΠ»ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° ΡΠ±ΠΎΡΠΊΠΈ Heroku.
Π GitLab 11.9 ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Docker image, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π² ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ ΡΠ΅Π³ΠΎΠ², ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠΌ Π½Π°Π·Π²Π°Π½ΠΈΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° tag Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° SHA.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΠΈΠΌ Π·Π° Π²ΠΊΠ»Π°Π΄ ΠΠ°ΡΠΎΠ½Π° Π£ΠΎΠΊΠ΅ΡΠ° (Aaron Walker)!
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Code Climate Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 0.83.0
(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)
GitLab
Π GitLab 11.9 ΠΌΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»ΠΈ Π΄Π²ΠΈΠΆΠΎΠΊ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ (
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΠΈΠΌ Π·Π° Π²ΠΊΠ»Π°Π΄ ΡΠ»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ GitLab Core Π’Π°ΠΊΡΠΉΡ ΠΠΎΠ³ΡΡΠΈ (
ΠΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΊΠ° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠ΅ΡΡΠΈΠΊ
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΠΎΠ³Π΄Π° ΠΈΡΡΠ»Π΅Π΄ΡΠ΅ΡΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠ°ΡΡΠΎ Π±ΡΠ²Π°Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½Π΅Π΅ Π²Π·Π³Π»ΡΠ½ΡΡΡ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ°ΡΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΌΠ΅ΡΡΠΈΠΊΠΈ.
Π‘ GitLab 11.9 ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠΌΠΎΠ³ΡΡ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠΈΠΎΠ΄Ρ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠ΅ΡΡΠΈΠΊ, ΠΏΡΠΎΠΊΡΡΡΠΈΠ²Π°ΡΡ Π²Π΅ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΠΊ, Π° ΡΠ°ΠΊΠΆΠ΅ Π»Π΅Π³ΠΊΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π²ΠΈΠ΄Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π°. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΠΈ Π±ΡΡΡΡΠΎ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ.
SAST Π΄Π»Ρ TypeScript
(ULTIMATE, GOLD)
Π GitLab 11.9 ΡΡΠ½ΠΊΡΠΈΡ Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (SAST) Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΊΠΎΠ΄Π° TypeScript, Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡ ΠΈΡ
Π² Π²ΠΈΠ΄ΠΆΠ΅ΡΠ΅ ΠΌΠ΅ΡΠ΄ΠΆ-Π·Π°ΠΏΡΠΎΡΠ°, Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π° ΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. Π’Π΅ΠΊΡΡΠ΅Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄ΠΆΠΎΠ±Π° sast
ΠΌΠ΅Π½ΡΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ, ΠΈ ΠΎΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π²
SAST Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Maven
(ULTIMATE, GOLD)
ΠΡΠΎΠ΅ΠΊΡΡ Maven ΡΠ°ΡΡΠΎ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ
GitLab 11.9 ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΡΠ½ΠΊΡΠΈΠΈ SAST Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ
Π½Π° ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π² ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠ² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΡΠΎ-ΡΠΎ ΠΌΠ΅Π½ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΠΏΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ Maven. ΠΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² ΡΠ°ΠΌΠΊΠ°Ρ
GitLab Runner 11.9
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠΏΡΡΡΠΈΠ»ΠΈ GitLab Runner 11.9! GitLab Runner β ΡΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π·Π°Π΄Π°Π½ΠΈΠΉ CI/CD ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² GitLab.
ΠΠΈΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² GitLab Runner 11.9:
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ alpine images Π΄ΠΎ alpine 3.9 .ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ windows Dockerfiles Π΄Π»Ρ gitlab-runner-helper ΠΈΠ΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠ° Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ windows image helper .ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ docker API . ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ΠΈΡΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Ρ Docker Π² CentOS 6 .ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΡΠ»Π΅Π΄Π΅ Π»ΠΎΠ³Π° Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈΠΏΡΠΎΡΡΠΎΠΉ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² Π»ΠΎΠ³Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΠ²ΡΡΡΡ Π² GitLab 11.10.ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄Π»Ρ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΡ ΡΠΈΡ OS, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΠ²ΡΡΡΡ Π² 12.0 .ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ SNTP, ΡΡΠΎΠ±Ρ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π² Parallels executor .- ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² β Π²ΠΊΠ»ΡΡΠ°Ρ
ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠ° ΠΈΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ bash β Π² Go. ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ helper image .ΠΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΈΠ· ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ refspecs .Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ LFS, ΠΏΡΠ΅Π²ΡΡΠ°ΡΡΠΈΠΌΠΈ ΡΠ°Π·ΠΌΠ΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ .
ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΠΆΡΡΠ½Π°Π»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ GitLab Runner:
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ ΡΡ Π΅ΠΌΡ GitLab
(CORE, STARTER, PREMIUM, ULTIMATE)
Π GitLab chart Π²Π½Π΅ΡΠ΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Google Cloud Memorystore.
- ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ Cron job
ΡΠ΅ΠΏΠ΅ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ , ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ. - Π Π΅Π΅ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 2.7.1.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ ΡΠ΅Π΅ΡΡΡΠ° GitLab Ρ Π²Π΅ΡΡΠΈΡΠΌΠΈ Docker Π΄ΠΎ 1.10. ΠΠ»Ρ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅
registry.compatibility.schema1.enabled: true
.
Π£Π»ΡΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
ΠΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ GitLab Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π²ΡΠΏΡΡΠΊΠΎΠΌ Π΄Π»Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² GitLab Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°. ΠΠΎΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² GitLab 11.9:
Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ SQL-Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠ΅ API todos .ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π²ΡΠΏΠ°Π΄Π°ΡΡΠΈΡ ΠΌΠ΅ΡΠΎΠΊ Π² Π·Π°Π΄Π°ΡΠ°Ρ .ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ SQL-Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π΄Π»Ρ ΠΏΠΎΠ΄ΡΡΠ΅ΡΠ° Π·Π°Π΄Π°Ρ Π³ΡΡΠΏΠΏΡ ΠΏΡΠΈ ΠΏΠΎΠΈΡΠΊΠ΅ .ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΠΎΠΊ Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ .
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ Omnibus
(CORE, STARTER, PREMIUM, ULTIMATE)
Π GitLab 11.9 Π²Π½Π΅ΡΠ΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Omnibus:
- GitLab 11.9 Π²ΠΊΠ»ΡΡΠ°Π΅Ρ
Mattermost 5.8 ,Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Slack Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ , Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ΅Π»ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄ΡΡ MFA Π΄Π»Ρ Team Edition, ΠΏΠΎΠ²ΡΡΠ΅Π½Π½Π°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. ΠΡΠ° Π²Π΅ΡΡΠΈΡ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ; ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅. - ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ ΡΠ΅Π΅ΡΡΡΠ° GitLab Ρ Π²Π΅ΡΡΠΈΡΠΌΠΈ Docker Π΄ΠΎ 1.10. ΠΠ»Ρ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅
registry['compatibility_schema1_enabled'] = true Π² gitlab.rb
. - Π Π΅Π΅ΡΡΡ GitLab ΡΠ΅ΠΏΠ΅ΡΡ ΡΠΊΡΠΏΠΎΡΡΠΈΡΡΠ΅Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Prometheus ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΡΡΡ Π²Ρ
ΠΎΠ΄ΡΡΠΈΠΌ Π²
ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ Prometheus . - ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Google Cloud Memorystore, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΠ΅Π±ΡΠ΅Ρ
.ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ redis_enable_client
openssl
ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 1.0.2r,nginx
β Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 1.14.2,python
β Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 3.4.9,jemalloc
β Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 5.1.0,docutils
β Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 0.13.1,gitlab-monitor
β Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 3.2.0.
Π£ΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅ ΡΠΈΡΠΈ
GitLab Geo ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡ Ρ ΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π² GitLab 12.0
GitLab Geo ΡΡΠ΅Π±ΡΠ΅ΡΡΡ
Π GitLab
Π GitLab sudo gitlab-rake gitlab: geo: check
ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π»ΠΈ Ρ
ΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΈ Π²ΡΠ΅ Π»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΡΡΡΡ. Π‘ΠΌ.
Π GitLab
Π GitLab
12.0 Geo Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Ρ ΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΡ. Π‘ΠΌ.gitlab-ee#8690 .
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Hipchat
Hipchat
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΌΠ°ΡΡΠ° 2019 Π³.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° CentOS 6 Π΄Π»Ρ GitLab Runner Ρ ΠΏΠΎΠΌΠΎΡΡΡ Docker executor
GitLab Runner Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ CentOS 6, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Docker Π² GitLab 11.9. ΠΡΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Docker, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ CentOS 6. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠΌΠΎΡΡΠΈΡΠ΅ Π²
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 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 Π³.
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ΅Π³ΠΈ Git Π² GitLab 11.10
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠΉ ΠΊ Π²Π΅ΡΡΠΈΠΈ Π΄Π»Ρ ΡΠ΅Π³ΠΎΠ² Git Π² Π½Π΅Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΡ
Π²Π΅ΡΠ²ΡΡ
ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠ΅Π³ΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π½Π΅Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π²Π΅ΡΠ²ΠΈ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΄Π°Π»ΡΡΡ ΡΠ΅Π³ΠΈ Git. Π GitLab 11.10
ΠΡΠ»ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΡΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°ΡΡΠΈΡ
ΠΈ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅Π², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 Π°ΠΏΡΠ΅Π»Ρ 2019 Π³.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Prometheus 1.x Π² Omnibus GitLab
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ GitLab
Π GitLab Π²Π΅ΡΡΠΈΠΈ
12.0 Π±ΡΠ΄Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Prometheus 2.0, Π΅ΡΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π΅ΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΎ. ΠΠ°Π½Π½ΡΠ΅ ΠΈΠ· Prometheus 1.0 Π±ΡΠ΄ΡΡ ΡΡΠ΅ΡΡΠ½Ρ, Ρ.ΠΊ. Π½Π΅ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΡΡΡΡ.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
TLS v1.1
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ GitLab
Π§ΡΠΎΠ±Ρ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ TLS v1.1, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ nginx['ssl_protocols'] = "TLSv1.2"
Π² gitlab.rband
ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ gitlab-ctl reconfigure
.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
Π¨Π°Π±Π»ΠΎΠ½ OpenShift Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ GitLab
ΠΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ gitlab
helm chart
Π¨Π°Π±Π»ΠΎΠ½ OpenShift Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ GitLab ΡΡΡΠ°ΡΠ΅Π» ΠΈ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π²GitLab 12.0 .
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ security jobs
Π‘ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ
ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄ΠΆΠΎΠ±ΠΎΠ², ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π²ΡΠ΅ΠΌΠΈ Π½ΠΎΠ²ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΌΠΈ GitLab.
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
Π Π°Π·Π΄Π΅Π» System Info Π² ΠΏΠ°Π½Π΅Π»ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°
GitLab ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²Π°ΡΠ΅ΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ΅ GitLab Π² admin/system_info
, Π½ΠΎ ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΎΡΠ½ΠΎΠΉ.
ΠΡ
ΠΠ°ΡΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ: 22 ΠΈΡΠ½Ρ 2019 Π³.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com