рд░рд┐рд▓реАрдЬ 13.4 CI рдЪрд░, Kubernetes рдПрдЬреЗрдиреНрдЯ рд░ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗрдиреНрджреНрд░рдХреЛ рд▓рд╛рдЧрд┐ HashiCorp рднрдгреНрдбрд╛рд░рдг, рд╕рд╛рдереИ рд╕реНрдЯрд╛рд░реНрдЯрд░рдорд╛ рд╕реНрд╡рд┐рдЪ рдЧрд░реНрди рдорд┐рд▓реНрдиреЗ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд╕рд╣рд┐рдд рдЬрд╛рд░реА рдЧрд░рд┐рдПрдХреЛ рдЫред
GitLab рдорд╛, рд╣рд╛рдореА рд╕рдзреИрдБ рд╕реЛрдЪрд┐рд░рд╣реЗрдХрд╛ рд╣реБрдиреНрдЫреМрдВ рдХрд┐ рдХрд╕рд░реА рд╣рд╛рдореА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рдЬреЛрдЦрд┐рдо рдХрдо рдЧрд░реНрди, рджрдХреНрд╖рддрд╛ рд╕реБрдзрд╛рд░ рдЧрд░реНрди, рд░ рддрдкрд╛рдИрдВрдХреЛ рдордирдкрд░реНрдиреЗ рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рдбреЗрд▓рд┐рднрд░реА рдЧрддрд┐ рд╕реБрдзрд╛рд░ рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрди рд╕рдХреНрдЫреМрдВред рдпреЛ рдорд╣рд┐рдирд╛ рд╣рд╛рдореАрд▓реЗ рдзреЗрд░реИ рдЙрдкрдпреЛрдЧреА рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдердкреЗрдХрд╛ рдЫреМрдВ рдЬрд╕рд▓реЗ рд╕реБрд░рдХреНрд╖рд╛ рдХреНрд╖рдорддрд╛рд╣рд░реВ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрджрдЫ, рдЬреЛрдЦрд┐рдорд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдШрдЯрд╛рдЙрдБрдЫ, рджрдХреНрд╖рддрд╛ рдмрдврд╛рдЙрдБрдЫ, GitLab рд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрдБрдЫ, рд░ рддрдкрд╛рдИрдВрдХреЛ рдЯреЛрд▓реАрд▓рд╛рдИ рдЕрдЭ рдЫрд┐рдЯреЛ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрджрдЫред рд╣рд╛рдореА рдЖрд╢рд╛ рдЧрд░реНрдЫреМрдВ рдХрд┐ рддрдкрд╛рдИрдВрд▓реЗ рд░рд┐рд▓реАрдЬрдХреЛ рдореБрдЦреНрдп рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЙрдкрдпреЛрдЧреА рдкрд╛рдЙрдиреБрд╣реБрдиреЗрдЫ, рд╕рд╛рдереИ 53 рдЕрдиреНрдп рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ, рдпреЛ рд╡рд┐рдЬреНрдЮрдкреНрддрд┐рдорд╛ рдердкрд┐рдпреЛред
рдЙрдиреНрдирдд рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ
рд╣рд╛рдореА рд╣рд░реЗрдХ рдорд╣рд┐рдирд╛ GitLab DevSecOps рдорд╛ рдзреЗрд░реИ рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдердкреНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдЫреМрдВ, рд░ рдпреЛ рд░рд┐рд▓реАрдЬ рдХреБрдиреИ рдЕрдкрд╡рд╛рдж рдЫреИрдиред
рдЬреЛрдЦрд┐рдо рдХрдо рдЧрд░реНрдиреЗ рдЕрд░реНрдХреЛ рддрд░рд┐рдХрд╛ рдирдпрд╛рдБ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБ рд╣реЛ
GitLab рдХреЛ рд╕рд╛рде рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд░ рдХреБрд╢рд▓ рдХрд╛рдо
рд╣рд╛рдореАрд▓реЗ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрди рд╣рд╛рдореНрд░реЛ рд╡рд┐рд╢реНрд╡рд╡реНрдпрд╛рдкреА рдЦреЛрдЬрд▓рд╛рдИ рд╕реБрдзрд╛рд░ рдЧрд░реЗрдХрд╛ рдЫреМрдВ
рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдпреЛрдЧрджрд╛рдирд╣рд░реВ
рд╣рд╛рдореА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдЧрд░реНрдЫреМрдВ
рд░ рдпреЛ рдХреЗрд╡рд▓ рд╕реБрд░реБрд╡рд╛рдд рд╣реЛ!
рд╕рдзреИрдВрдХреЛ рд░реВрдкрдорд╛, рд╕рд╛рдорд╛рдиреНрдп рд╕рд┐рдВрд╣рд╛рд╡рд▓реЛрдХрдирдорд╛ рдзреЗрд░реИ рдереЛрд░реИ рдард╛рдЙрдБ рдЫ, рддрд░ рддреНрдпрд╣рд╛рдБ 13.4 рд░рд┐рд▓реАрдЬрдорд╛ рдзреЗрд░реИ рд░рд╛рдореНрд░реЛ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЫрдиреНред рдпрд╣рд╛рдБ рдХреЗрд╣рд┐ рдердк рдЫрдиреН:
рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╣реБрдБрдЪ рдЯреЛрдХрдирд╣рд░реВрдХреЛ рд╕реВрдЪреА рд╣реЗрд░реНрдиреБрд╣реЛрд╕реН рд░ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ API рдорд╛рд░реНрдлрдд рд░рджреНрдж рдЧрд░реНрдиреБрд╣реЛрд╕реН рд╕реНрд╡-рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдкреНрд░рдорд╛рдг рднрдгреНрдбрд╛рд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╣реБрдБрдЪ рдЯреЛрдХрдирд╣рд░реВ рд░рджреНрдж рдЧрд░реНрдиреБрд╣реЛрд╕реН рдбрд┐рдЬрд╛рдЗрди рдкреГрд╖реНрдардорд╛ рдкреВрд░рд╛ рдЧрд░реНрдиреБрдкрд░реНрдиреЗ рдХрд╛рд░реНрдпрд╣рд░реВ рдЪрд┐рдиреНрд╣ рд▓рдЧрд╛рдЙрдиреБрд╣реЛрд╕реН рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ (GitLab "рдПрд╕реЗрдореНрдмрд▓реА рд▓рд╛рдЗрдирд╣рд░реВ" рдХреЛ рд░реВрд╕реА рд╕реНрдерд╛рдиреАрдпрдХрд░рдгрдорд╛) рдЕрдм рдЖрдлреНрдиреИ рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рдЪрд▓рд╛рдЙрди рд╕рдХреНрдЫрдиреНред рд╣реЗрд▓реНрдо рдЪрд╛рд░реНрдЯ GitLab рдХреЛ рд▓рд╛рдЧреА рд╕реНрдорд╛рд░реНрдЯ рдХрд╛рд░реНрдб рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рдорд░реНрдерди .
рдпрджрд┐ рддрдкрд╛рдЗрдБ рдЕрдЧреНрд░рд┐рдо рдЬрд╛рдиреНрди рдЪрд╛рд╣рд╛рдиреБрд╣реБрдиреНрдЫ рднрдиреЗ рддрдкрд╛рдЗрдБ рдХреЗ рдкрд░реНрдЦрд┐рд░рд╣реЗрдХреЛ рдЫ рдЕрд░реНрдХреЛ рд░рд┐рд▓реАрдЬ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рдПрдХ рдирдЬрд░ рд▓рд┐рдиреБрд╣реЛрд╕реН
рдПрдорднрд┐рдкрд┐ рдпреЛ рдорд╣рд┐рдирд╛ - Fabio Huser
Fabio рд▓реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдпреЛрдЧрджрд╛рди рдкреБрд░реНрдпрд╛рдпреЛ
GitLab 13.4 рд░рд┐рд▓реАрдЬ рдХреЛ рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рд╣рд░реБ
CI рдХрд╛рд░реНрдпрд╣рд░реВрдорд╛ HashiCorp Vault рдХреБрдЮреНрдЬреАрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН
(рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рд░рд┐рд▓реАрдЬ 12.10 рдорд╛, GitLab рд▓реЗ GitLab рдХрд╛рд░реНрдп рд╣реНрдпрд╛рдиреНрдбрд▓рд░ (GitLab рдзрд╛рд╡рдХ) рдХреЛ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ CI рдХрд╛рд░реНрдпрд╣рд░реВрдорд╛ рдХреБрдЮреНрдЬреАрд╣рд░реВ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗ рд░ рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдг рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдкреНрд░рд╕реНрддреБрдд рдЧрд░реНтАНрдпреЛред рдЕрдм рд╣рд╛рдореА рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрджреИрдЫреМрдВ secrets
рдлрд╛рдЗрд▓ рдЧрд░реНрди .gitlab-ci.yml
ред рдпрд╕рд▓реЗ GitLab рдХреЛ рд╕рд╛рде HashiCorp рднрдгреНрдбрд╛рд░ рд╕реЗрдЯрдЕрдк рдЧрд░реНрди рд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрдиреЗрдЫред
GitLab Kubernetes рдПрдЬреЗрдиреНрдЯ рдкрд░рд┐рдЪрдп
(рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ)
Kubernetes рд╕рдБрдЧ GitLab рдХреЛ рдПрдХреАрдХрд░рдгрд▓реЗ рдореНрдпрд╛рдиреБрдЕрд▓ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдмрд┐рдирд╛ рдиреИ Kubernetes рдХреНрд▓рд╕реНрдЯрд░рд╣рд░реВрдорд╛ рддреИрдирд╛рде рдЧрд░реНрди рд╕рдореНрднрд╡ рдмрдирд╛рдПрдХреЛ рдЫред рдзреЗрд░реИ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдпрд╕ рдмрдиреНрдбрд▓рдХреЛ рдкреНрд░рдпреЛрдЧрдХреЛ рд╕рд╣рдЬрддрд╛рд▓рд╛рдИ рдорди рдкрд░рд╛рдП, рдЬрдмрдХрд┐ рдЕрд░реВрд▓реЗ рдХреЗрд╣реА рдХрдард┐рдирд╛рдЗрд╣рд░реВрдХреЛ рд╕рд╛рдордирд╛ рдЧрд░реЗред рд╣рд╛рд▓рдХреЛ рдПрдХреАрдХрд░рдгрдХреЛ рд▓рд╛рдЧрд┐, GitLab рд▓рд╛рдИ рдкрд╣реБрдБрдЪ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рддрдкрд╛рдИрдВрдХреЛ рдХреНрд▓рд╕реНрдЯрд░ рдЗрдиреНрдЯрд░рдиреЗрдЯрдмрд╛рдЯ рдкрд╣реБрдБрдЪрдпреЛрдЧреНрдп рд╣реБрдиреБрдкрд░реНрдЫред рдзреЗрд░реИ рд╕рдВрд╕реНрдерд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐, рдпреЛ рд╕рдореНрднрд╡ рдЫреИрди рдХрд┐рдирднрдиреЗ рддрд┐рдиреАрд╣рд░реВрд▓реЗ рд╕реБрд░рдХреНрд╖рд╛, рдЕрдиреБрдкрд╛рд▓рди, рд╡рд╛ рдирд┐рдпрд╛рдордХ рдХрд╛рд░рдгрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдХреНрд▓рд╕реНрдЯрд░рд╣рд░реВрдорд╛ рдкрд╣реБрдБрдЪ рдкреНрд░рддрд┐рдмрдиреНрдзрд┐рдд рдЧрд░реНрдЫрдиреНред рдпреА рдкреНрд░рддрд┐рдмрдиреНрдзрд╣рд░реВ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди, рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ GitLab рдХреЛ рд╢реАрд░реНрд╖рдорд╛ рдЖрдлреНрдиреЛ рдЙрдкрдХрд░рдгрд╣рд░реВ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рдЕрдиреНрдпрдерд╛ рддрд┐рдиреАрд╣рд░реВрд▓реЗ рдпреЛ рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрдиреЗрдЫреИрдирдиреНред
рдЖрдЬ рд╣рд╛рдореА GitLab Kubernetes Agent рдХреЛ рдкрд░рд┐рдЪрдп рджрд┐рджреИрдЫреМрдВ, Kubernetes рдХреНрд▓рд╕реНрдЯрд░рд╣рд░реВрдорд╛ рдбрд┐рдкреНрд▓реЛрдп рдЧрд░реНрдиреЗ рдирдпрд╛рдБ рддрд░рд┐рдХрд╛ред рдПрдЬреЗрдиреНрдЯ рддрдкрд╛рдИрдВрдХреЛ рдХреНрд▓рд╕реНрдЯрд░ рднрд┐рддреНрд░ рдЪрд▓реНрдЫ, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕рд▓рд╛рдИ рд╕рдореНрдкреВрд░реНрдг рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ рдЦреБрд▓рд╛рд╕рд╛ рдЧрд░реНрдиреБ рдкрд░реНрджреИрдиред рдПрдЬреЗрдиреНрдЯрд▓реЗ GitLab рдмрд╛рдЯ рдХреНрд▓рд╕реНрдЯрд░рдорд╛ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХрд╣рд░реВ рдкреБрд╢ рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛ GitLab рдмрд╛рдЯ рдирдпрд╛рдБ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдЕрдиреБрд░реЛрдз рдЧрд░реЗрд░ рддреИрдирд╛рддреА рд╕рдордиреНрд╡рдп рдЧрд░реНрджрдЫред рддрдкрд╛рдИрд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреЗ GitOps рд╡рд┐рдзрд┐ рдЬреЗ рднрдП рдкрдирд┐, GitLab рд▓реЗ рддрдкрд╛рдИрд▓рд╛рдИ рдХрднрд░ рдЧрд░реЗрдХреЛ рдЫред
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджрд┐рдиреБрд╣реЛрд╕реН рдХрд┐ рдпреЛ рдПрдЬреЗрдиреНрдЯрдХреЛ рдкрд╣рд┐рд▓реЛ рд░рд┐рд▓реАрдЬ рд╣реЛред GitLab Kubernetes рдПрдЬреЗрдиреНрдЯрдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореНрд░реЛ рд╣рд╛рд▓рдХреЛ рдлреЛрдХрд╕ рдХреЛрдб рдорд╛рд░реНрдлрдд рдкрд░рд┐рдирд┐рдпреЛрдЬрдирд╣рд░реВ рдХрдиреНрдлрд┐рдЧрд░ рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрдиреБ рд╣реЛред рдХреЗрд╣реА рдЕрд╡рд╕реНрдерд┐рдд Kubernetes рдПрдХреАрдХрд░рдг рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ, рдЬрд╕реНрддреИ рддреИрдирд╛рддреА рдмреЛрд░реНрдбрд╣рд░реВ рд░ GitLab рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ, рдЕрдЭреИ рд╕рдорд░реНрдерд┐рдд рдЫреИрдирдиреНред
рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рдХреЛрдб рдкрд╣реБрдБрдЪ рдмрд┐рдирд╛ рдбрд┐рдкреНрд▓реЛрдп рдЧрд░реНрдиреЗ рдЕрдиреБрдорддрд┐ рджрд┐рдиреБрд╣реЛрд╕реН
(рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдкрд╣рд┐рд▓реЗ, GitLab рдХреЛ рдЕрдиреБрдорддрд┐ рдкреНрд░рдгрд╛рд▓реАрд▓реЗ рд╡рд┐рдХрд╛рд╕рдХреЛ рд▓рд╛рдЧрд┐ рдЬрд┐рдореНрдореЗрд╡рд╛рд░ рд░ рддреИрдирд╛рддреАрдХрд╛ рд▓рд╛рдЧрд┐ рдЬрд┐рдореНрдореЗрд╡рд╛рд░рд╣рд░реВ рдмреАрдЪ рддрдкрд╛рдИрдВрдХреЛ рдЯреЛрд▓реА рднрд┐рддреНрд░ рдЬрд┐рдореНрдореЗрд╡рд╛рд░реАрд╣рд░реВ рдареАрдХрд╕рдБрдЧ рдмрд╛рдБрдбрдлрд╛рдБрдб рдЧрд░реНрди рдЧрд╛рд╣реНрд░реЛ рдмрдирд╛рдпреЛред GitLab 13.4 рдХреЛ рд░рд┐рд▓реАрдЬ рд╕рдВрдЧ, рддрдкрд╛рдИрд▓реЗ рдбрд┐рдкреНрд▓реЛрдпрдореЗрдиреНрдЯрдХреЛ рд▓рд╛рдЧрд┐ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдЕрдиреБрдореЛрджрди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд╕рд╛рдереИ рдХреЛрдб рдирд▓реЗрдЦреНрдиреЗ рд╡реНрдпрдХреНрддрд┐рд╣рд░реВрд▓рд╛рдИ рдХреЛрдб рдирд▓реЗрдЦреНрдиреЗрд╣рд░реВрд▓рд╛рдИ рдХреЛрдб рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди, рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдорд░реНрдорддрдХрд░реНрддрд╛ рдкрд╣реБрдБрдЪ рдЕрдзрд┐рдХрд╛рд░ рдирджрд┐рдИрдХрди рдЕрдиреБрдорддрд┐ рджрд┐рди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ (GitLab рдХреЛ рд░реВрд╕реА рд╕реНрдерд╛рдиреАрдпрдХрд░рдгрдорд╛ "рдореЗрдиреНрдЯреЗрдирд░"ред )ред
рдХреЗрдиреНрджреНрд░ рдмреЗрдЬреЛрдкрд╛рд╕реНрдиреЛрд╕реНрдЯреА
(рдЕрдиреНрддрд┐рдо, рд╕реБрди)
рдкрд╣рд┐рд▓реЗ, рдЙрджрд╛рд╣рд░рдг-рд╕реНрддрд░ рдЬреЛрдЦрд┐рдо рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рджреБрд╡реИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд░ рд▓рдЪрд┐рд▓реЛрдкрдирдорд╛ рд╕реАрдорд┐рдд рдерд┐рдпреЛред рдЗрдиреНрдЯрд░рдлреЗрд╕ рдПрдХрд▓ рдкреГрд╖реНрда рдерд┐рдпреЛ рдЬрд╕рд▓реЗ рдХрдордЬреЛрд░реАрд╣рд░реВ, рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдЧреНрд░рд╛рдлрд╣рд░реВ, рд░ рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдХреЛ рд╡рд┐рд╡рд░рдгрд╣рд░реВ рд╕рдВрдпреЛрдЬрди рдЧрд░реНрджрдЫред рдпреА рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд╡рд┐рдХрд╛рд╕ рдЧрд░реНрди рд╡рд╛ рдЕрдиреНрдп рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдзреЗрд░реИ рдард╛рдЙрдБ рдЫреИрдиред
рд╣рд╛рдореАрд▓реЗ GitLab рдорд╛ рд╕реБрд░рдХреНрд╖рд╛ рд░ рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрдиреЗ рддрд░рд┐рдХрд╛рдорд╛ рдЖрдзрд╛рд░рднреВрдд рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдЧрд░реЗрдХрд╛ рдЫреМрдВред рдЙрджрд╛рд╣рд░рдг рд╕реБрд░рдХреНрд╖рд╛ рдкреНрдпрд╛рдирд▓ рд╕рдореНрдкреВрд░реНрдг рд╕реБрд░рдХреНрд╖рд╛ рдХреЗрдиреНрджреНрд░рдорд╛ рдкрд░рд┐рдгрдд рднрдПрдХреЛ рдЫред рд╕рдмреИрднрдиреНрджрд╛ рдареВрд▓реЛ рдкрд░рд┐рд╡рд░реНрддрди рднрдиреЗрдХреЛ рдирдпрд╛рдБ рдореЗрдиреБ рд╕рдВрд░рдЪрдирд╛рдХреЛ рдкрд░рд┐рдЪрдп рд╣реЛ: рдПрдХ рдкреГрд╖реНрдардХреЛ рд╕рдЯреНрдЯрд╛, рддрдкрд╛рдИрдВрд▓реЗ рдЕрдм рд╕реБрд░рдХреНрд╖рд╛ рдбреНрдпрд╛рд╕рдмреЛрд░реНрдб, рднреЗрджреНрдпрддрд╛ рд░рд┐рдкреЛрд░реНрдЯ, рд░ рд╕реЗрдЯрд┐рдЩрд╣рд░реВ рдЦрдгреНрдб рдЫреБрдЯреНрдЯреИ рджреЗрдЦреНрдиреБрд╣реБрдиреНрдЫред рдЬрдмрдХрд┐ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкрд░рд┐рд╡рд░реНрддрди рднрдПрдХреЛ рдЫреИрди, рдпрд╕рд▓рд╛рдИ рднрд╛рдЧрд╣рд░реВрдорд╛ рд╡рд┐рднрд╛рдЬрди рдЧрд░реНрдирд╛рд▓реЗ рдпреЛ рдЦрдгреНрдбрдорд╛ рд╕реБрдзрд╛рд░ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗрдЫ рдЬреБрди рдЕрдиреНрдпрдерд╛ рдЧрд╛рд╣реНрд░реЛ рд╣реБрдиреЗрдЫред рдпрд╕рд▓реЗ рднрд╡рд┐рд╖реНрдпрдорд╛ рдЕрдиреНрдп рд╕реБрд░рдХреНрд╖рд╛ рд╕рдореНрдмрдиреНрдзреА рдХреНрд╖рдорддрд╛рд╣рд░реВ рдердкреНрдиреЗ рдЪрд░рдг рдкрдирд┐ рд╕реЗрдЯ рдЧрд░реНрджрдЫред
рд╕рдорд░реНрдкрд┐рдд рдЬреЛрдЦрд┐рдо рдкреНрд░рддрд┐рд╡реЗрджрди рдЦрдгреНрдбрдорд╛ рдЕрдм рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд╡рд┐рд╡рд░рдгрд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди рдердк рдард╛рдЙрдБ рдЫред рдпрд╣рд╛рдБ рдХрдордЬреЛрд░реАрд╣рд░реВ рдЫрдиреН рдЬреБрди рд╣рд╛рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рдХрдордЬреЛрд░реАрд╣рд░реВрдХреЛ рд╕реВрдЪреАрдорд╛ рдЫрдиреНред рдХрдордЬреЛрд░реА рдореЗрдЯреНрд░рд┐рдХреНрд╕рдХрд╛ рд╕рд╛рде рд╡рд┐рдЬреЗрдЯрд╣рд░реВрд▓рд╛рдИ рдЫреБрдЯреНрдЯреИ рдЦрдгреНрдбрдорд╛ рд╕рд╛рд░реНрджрд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕реБрд░рдХреНрд╖рд╛ рдирд┐рдпрдиреНрддреНрд░рдг рдкреНрдпрд╛рдирд▓ рд╕рд┐рд░реНрдЬрдирд╛ рд╣реБрдиреНрдЫред рдпреЛ рдЕрдм рднрд╡рд┐рд╖реНрдпрдХреЛ рднрд┐рдЬреБрдЕрд▓рд╛рдЗрдЬреЗрд╕рдирдХреЛ рд▓рд╛рдЧрд┐ рдХреНрдпрд╛рдирднрд╛рд╕ рд╣реЛ - рдХреЗрд╡рд▓ рдЬреЛрдЦрд┐рдо рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдирдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рддреНрд░ рд╣реЛрдЗрди, рддрд░ рдХреБрдиреИ рдкрдирд┐ рд╕реБрд░рдХреНрд╖рд╛-рд╕рдореНрдмрдиреНрдзрд┐рдд рдореЗрдЯреНрд░рд┐рдХреНрд╕рдХрд╛ рд▓рд╛рдЧрд┐ред рдЕрдиреНрддрдорд╛, рдПрдХ рдЕрд▓рдЧ рд╕реЗрдЯрд┐рдЩ рдХреНрд╖реЗрддреНрд░рд▓реЗ рд╕рдмреИ рдЙрджрд╛рд╣рд░рдг-рд╕реНрддрд░ рд╕реБрд░рдХреНрд╖рд╛ рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рд╛рдЭрд╛ рдард╛рдЙрдБ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджрдЫ, рди рдХреЗрд╡рд▓ рдЬреЛрдЦрд┐рдо рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдиред
рд╕реНрд╡рд┐рдЪ рдЧрд░реНрди рдорд┐рд▓реНрдиреЗ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЕрдм GitLab Starter рдорд╛ рдЫрдиреН
(рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдХрд╛рдВрд╕реНрдп, рд░рдЬрдд, рд╕реБрди)
GitLab 11.4 рдЬрд╛рд░реА рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ
рдпрд╕ рд╡рд░реНрд╖рдХреЛ рд╕реБрд░реБрдорд╛, GitLab рд▓реЗ рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдЬрдирд╛рдпреЛ
рдЦреЛрдЬ рдкрдЯреНрдЯреАрдмрд╛рдЯ рджреНрд░реБрдд рдиреЗрднрд┐рдЧреЗрд╕рди
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдБ GitLab рдиреЗрднрд┐рдЧреЗрдЯ рдЧрд░реНрджрд╛ рддрдкрд╛рдИрдВ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рдкреГрд╖реНрдардХреЛ рд╕рдЯреНрдЯрд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкрд░рд┐рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдЬрд╛рди рдЪрд╛рд╣рдиреБрд╣реБрдиреНрдЫред
рд╡рд┐рд╢реНрд╡рд╡реНрдпрд╛рдкреА рдЦреЛрдЬ рдкрдЯреНрдЯреА рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░, рддрдкрд╛рдИрдВ рджреНрд░реБрдд рд░реВрдкрдорд╛ рдирд╡реАрдирддрдо рдЯрд┐рдХрдЯрд╣рд░реВ, рд╕рдореВрд╣рд╣рд░реВ, рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ, рд╕реЗрдЯрд┐рдЩрд╣рд░реВ, рд░ рдорджреНрджрдд рд╢реАрд░реНрд╖рдХрд╣рд░реВрдорд╛ рдиреЗрднрд┐рдЧреЗрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рддрдкрд╛рдИрдВ рд╣рдЯ рдХреБрдЮреНрдЬреА рдкрдирд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ /
GitLab рд▓рд╛рдИ рдЕрдЭ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдиреЗрднрд┐рдЧреЗрдЯ рдЧрд░реНрди рдЦреЛрдЬ рдкрдЯреНрдЯреАрдорд╛ рдЖрдлреНрдиреЛ рдХрд░реНрд╕рд░ рд╕рд╛рд░реНрдирдХреЛ рд▓рд╛рдЧрд┐!
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рднрд┐рдиреНрдирддрд╛рд╣рд░реВрдорд╛ рдХреЛрдб рдХрднрд░реЗрдЬ рджреЗрдЦрд╛рдЙрдБрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрдХреЛ рд╕рдореАрдХреНрд╖рд╛ рдЧрд░реНрджрд╛, рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░рд┐рдПрдХреЛ рдХреЛрдб рдПрдХрд╛рдЗ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрджреНрд╡рд╛рд░рд╛ рдХрднрд░ рдЧрд░рд┐рдПрдХреЛ рдЫ рдХрд┐ рдЫреИрди рднрдиреЗрд░ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрди рдЧрд╛рд╣реНрд░реЛ рд╣реБрди рд╕рдХреНрдЫред рдпрд╕рдХреЛ рд╕рдЯреНрдЯрд╛, рд╕рдореАрдХреНрд╖рдХрд╣рд░реВрд▓реЗ рд╕рдордЧреНрд░ рдХрднрд░реЗрдЬрдорд╛ рднрд░ рдкрд░реНрди рд╕рдХреНрдЫрдиреН рд░ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд▓рд╛рдИ рдЕрдиреБрдореЛрджрди рдЧрд░реНрдиреБ рдЕрдШрд┐ рдпрд╕рд▓рд╛рдИ рдмрдврд╛рдЙрди рдЕрдиреБрд░реЛрдз рдЧрд░реНрди рд╕рдХреНрдЫрдиреНред рдпрд╕рд▓реЗ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рд▓реЗрдЦреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рдЕрд╡реНрдпрд╡рд╕реНрдерд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдгрдХреЛ рдиреЗрддреГрддреНрд╡ рдЧрд░реНрди рд╕рдХреНрдЫ, рдЬрд╕рд▓реЗ рд╡рд╛рд╕реНрддрд╡рдорд╛ рдХреЛрдб рдЧреБрдгрд╕реНрддрд░ рд╡рд╛ рдкрд░реАрдХреНрд╖рдг рдХрднрд░реЗрдЬ рд╕реБрдзрд╛рд░ рдЧрд░реНрджреИрдиред
рдЕрдм, рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рднрд┐рдиреНрдирддрд╛ рд╣реЗрд░реНрджрд╛, рддрдкрд╛рдИрдВрд▓реЗ рдХреЛрдб рдХрднрд░реЗрдЬрдХреЛ рджреГрд╢реНрдп рдкреНрд░рджрд░реНрд╢рди рджреЗрдЦреНрдиреБрд╣реБрдиреЗрдЫред рдирдпрд╛рдБ рдЕрдВрдХрд╣рд░реВрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░рд┐рдПрдХреЛ рдХреЛрдб рдПрдХрд╛рдЗ рдкрд░реАрдХреНрд╖рдгрджреНрд╡рд╛рд░рд╛ рдХрднрд░ рдЧрд░рд┐рдПрдХреЛ рдЫ рдХрд┐ рдЫреИрди рднрдиреЗрд░ рджреНрд░реБрдд рд░реВрдкрдорд╛ рдмреБрдЭреНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗрдЫ, рдЬрд╕рд▓реЗ рдХреЛрдб рд╕рдореАрдХреНрд╖рд╛ рд░ рдирдпрд╛рдБ рдХреЛрдб рдорд░реНрдЬ рд░ рдбрд┐рдкреНрд▓реЛрдЗ рдЧрд░реНрдиреЗ рд╕рдордпрд▓рд╛рдИ рдЧрддрд┐ рджрд┐рди рдорджреНрджрдд рдЧрд░реНрдиреЗрдЫред
╨б╨┐╨░╤Б╨╕╨▒╨╛
рд╡рд╛рддрд╛рд╡рд░рдг рдкреНрдпрд╛рдирд▓рдорд╛ рдердк рд╡рд╛рддрд╛рд╡рд░рдг рд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ
(рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
GitLab 12.5 рдХреЛ рдкреНрд░рдпреЛрдЧ рдХреЛ рд░рд┐рд▓реАрдЬ рджреЗрдЦрд┐
GitLab рд▓реЗ GitLab Terraform рдкреНрд░рджрд╛рдпрдХрдХреЛ рдирд┐рдпрдиреНрддреНрд░рдг рд▓рд┐рдиреНрдЫ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рд╣рд╛рд▓реИ рд╣рд╛рдореА
OpenAPI рдирд┐рд░реНрджрд┐рд╖реНрдЯреАрдХрд░рдг рд╡рд╛ HAR рдлрд╛рдЗрд▓рдХреЛ рд╕рд╛рде рдлрдЬрд┐рдВрдЧ API рдкрд░реАрдХреНрд╖рдг
(рдЕрдиреНрддрд┐рдо, рд╕реБрди)
API рдлрдЬрд┐рдЩ рдкрд░реАрдХреНрд╖рдг рддрдкрд╛рдИрдХреЛ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рд░ API рд╣рд░реВрдорд╛ рдмрдЧрд╣рд░реВ рд░ рдХрдордЬреЛрд░реАрд╣рд░реВ рдлреЗрд▓рд╛ рдкрд╛рд░реНрдиреЗ рдЙрддреНрдХреГрд╖реНрдЯ рддрд░рд┐рдХрд╛ рд╣реЛ рдЬреБрди рдЕрдиреНрдп рд╕реНрдХреНрдпрд╛рдирд░рд╣рд░реВ рд░ рдкрд░реАрдХреНрд╖рдг рд╡рд┐рдзрд┐рд╣рд░реВрд▓реЗ рдЫреБрдЯреЗрдХрд╛ рд╣реБрди рд╕рдХреНрдЫрдиреНред
GitLab рдорд╛ API рдлрдЬреНрдЬрд┐рдЩ рдкрд░реАрдХреНрд╖рдгрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкреНрд░рджрд╛рди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ
рдпреЛ рд╣рд╛рдореНрд░реЛ рдкрд╣рд┐рд▓реЛ рдПрдкреАрдЖрдИ рдлрдЬ рдкрд░реАрдХреНрд╖рдг рд░рд┐рд▓реАрдЬ рд╣реЛ рд░ рд╣рд╛рдореА рддрдкрд╛рдИ рдХреЗ рд╕реЛрдЪреНрдиреБрд╣реБрдиреНрдЫ рд╕реБрдиреНрди рдЪрд╛рд╣рдиреНрдЫреМрдВред рд╣рд╛рдореАрд╕рдБрдЧ рдлрдЬ рдкрд░реАрдХреНрд╖рдгрдХреЛ рд▓рд╛рдЧрд┐ рдердк рд╕реНрдЯрдХ рдЫ
рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдкреНрдпрд╛рдирд▓рдорд╛ рдирдпрд╛рдБ рдЧреНрд░рд╛рдлрд╣рд░реВ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдЧрд░реНрдиреБрд╣реЛрд╕реН
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдкрд╣рд┐рд▓реЗ, GitLab рдорд╛ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдбреНрдпрд╛рд╕рдмреЛрд░реНрдбрдорд╛ рдЧреНрд░рд╛рдл рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдХрд╛рдо рдерд┐рдПрдиред рддрдкрд╛рдИрдВрд▓реЗ рдбреНрдпрд╛рд╕рдмреЛрд░реНрдб YAML рдлрд╛рдЗрд▓рдорд╛ рдореЗрдЯреНрд░рд┐рдХ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реЗрдкрдЫрд┐, рддрдкрд╛рдИрдВрд▓реЗ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдЧрд░реНрдиреБрднрдпреЛ master
, рднрд░реНрдЦрд░реИ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХреЛ рдЧреНрд░рд╛рдлрд▓реЗ рддрдкрд╛рдИрд▓рд╛рдИ рдЖрд╡рд╢реНрдпрдХ рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ рднрдиреЗрд░ рдкреНрд░рдорд╛рдгрд┐рдд рдЧрд░реНрди рд╕рдХреНрд╖рдо рдирднрдПрдХреЛред рдпрд╕ рд╡рд┐рдореЛрдЪрдирдХреЛ рд╕рд╛рде рд╕реБрд░реВ рдЧрд░реНрджреИ, рддрдкрд╛рдИрдВрд▓реЗ рдЧреНрд░рд╛рдл рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджрд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдбреНрдпрд╛рд╕рдмреЛрд░реНрдб YAML рдлрд╛рдЗрд▓рдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдкрдард╛рдЙрдиреБ рдЕрдШрд┐ рдкрд░рд┐рдгрд╛рдордХреЛ рдПрдХ рд╡рд┐рдЪрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрджреИред
рд╕рдореВрд╣рдХрд╛ рд╕рдмреИ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реАрдХреНрд╖рдгрджреНрд╡рд╛рд░рд╛ рдХреЛрдб рдХрднрд░реЗрдЬрдорд╛ рдбреЗрдЯрд╛
(рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдЬрдм рддрдкрд╛рдЗрдБ GitLab рдорд╛ рдзреЗрд░реИ рд╕рдВрдЦреНрдпрд╛рдорд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ, рддрдкрд╛рдЗрдБрд▓рд╛рдИ рд╕рдмреИ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдорд╛ рдХреЛрдб рдХрднрд░реЗрдЬ рдХрд╕рд░реА рдкрд░рд┐рд╡рд░реНрддрди рд╣реБрдБрджреИрдЫ рднрдиреНрдиреЗ рдмрд╛рд░реЗ рдЬрд╛рдирдХрд╛рд░реАрдХреЛ рдПрдХрд▓ рд╕реНрд░реЛрдд рдЪрд╛рд╣рд┐рдиреНрдЫред рдкрд╣рд┐рд▓реЗ, рдпреЛ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди рдХрдард┐рди рд░ рд╕рдордп-рдЙрдкрднреЛрдЧ рдЧрд░реНрдиреЗ рдореНрдпрд╛рдиреБрдЕрд▓ рдХрд╛рдо рдЖрд╡рд╢реНрдпрдХ рдерд┐рдпреЛ: рддрдкрд╛рдИрдВрд▓реЗ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдмрд╛рдЯ рдХреЛрдб рдХрднрд░реЗрдЬ рдбрд╛рдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрдиреБрдкрд░реНрдереНрдпреЛ рд░ рдпрд╕рд▓рд╛рдИ рддрд╛рд▓рд┐рдХрд╛рдорд╛ рдЬреЛрдбреНрдиреБрдкрд░реНрдЫред
рд░рд┐рд▓реАрдЬ 13.4 рдорд╛, рдпреЛ рдЫрд┐рдЯреЛ рд░ рд╕рдЬрд┐рд▓реИ рд╕рдВрдЧ рднреЗрд▓рд╛ рдЧрд░реНрди рд╕рдореНрднрд╡ рднрдпреЛ .csv
рд╕рдореВрд╣рдХрд╛ рд╕рдмреИ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ рд╡рд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдХреЛ рдЪрдпрдирдХреЛ рд▓рд╛рдЧрд┐ рдХреЛрдб рдХрднрд░реЗрдЬрдорд╛ рд╕рдмреИ рдбреЗрдЯрд╛рдХреЛ рд╕рд╛рде рдлрд╛рдЗрд▓ред рдпреЛ рд╕реБрд╡рд┐рдзрд╛ MVC рд╣реЛ, рдпреЛ рдХреНрд╖рдорддрд╛ рдкрдЫрд┐ рд╣реБрдиреЗрдЫ
рдкреВрд░реНрдг рдлрдЬ рдкрд░реАрдХреНрд╖рдгрдХреЛ рд▓рд╛рдЧрд┐ рдирдпрд╛рдБ рднрд╛рд╖рд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди
(рдЕрдиреНрддрд┐рдо, рд╕реБрди)
рдпреЛ рд░рд┐рд▓реАрдЬрд▓реЗ рдкреВрд░реНрдг рдХрднрд░реЗрдЬрдХреЛ рдЙрджреНрджреЗрд╢реНрдпрд▓реЗ рдлрдЬ рдкрд░реАрдХреНрд╖рдгрдХреЛ рд▓рд╛рдЧрд┐ рдзреЗрд░реИ рдирдпрд╛рдБ рднрд╛рд╖рд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдкрд░рд┐рдЪрдп рдЧрд░рд╛рдЙрдБрдЫред
рдЕрдм рддрдкрд╛рдЗрдБ рддрдкрд╛рдЗрдБрдХреЛ Java, Rust, рд░ Swift рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдорд╛ рдлрдЬрд┐рдЩ рдкрд░реАрдХреНрд╖рдгрдХреЛ рдкреВрд░реНрдг рдХреНрд╖рдорддрд╛рд╣рд░реВрдХреЛ рдореВрд▓реНрдпрд╛рдЩреНрдХрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рддреНрд░реБрдЯрд┐рд╣рд░реВ рд░ рдХрдордЬреЛрд░реАрд╣рд░реВ рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдЬреБрди рдЕрдиреНрдп рд╕реНрдХреНрдпрд╛рдирд░рд╣рд░реВ рд░ рдкрд░реАрдХреНрд╖рдг рд╡рд┐рдзрд┐рд╣рд░реВрд▓реЗ рдЫреБрдЯреЗрдХреЛ рд╣реБрди рд╕рдХреНрдЫред
рдореБрдЦреНрдп рд╡рд╛рддрд╛рд╡рд░рдг рдкреГрд╖реНрдардорд╛ рдЕрд▓рд░реНрдЯрд╣рд░реВ
(рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рд╡рд╛рддрд╛рд╡рд░рдг рдкреГрд╖реНрдард▓реЗ рддрдкрд╛рдИрдВрдХреЛ рд╡рд╛рддрд╛рд╡рд░рдгрдХреЛ рд╕рдордЧреНрд░ рдЕрд╡рд╕реНрдерд╛ рджреЗрдЦрд╛рдЙрдБрдЫред рдпрд╕ рд╡рд┐рдореЛрдЪрдирдорд╛ рд╣рд╛рдореАрд▓реЗ рдЕрд▓рд░реНрдЯ рдбрд┐рд╕реНрдкреНрд▓реЗ рдердкреЗрд░ рдпрд╕ рдкреГрд╖реНрдард▓рд╛рдИ рд╕реБрдзрд╛рд░ рдЧрд░реЗрдХрд╛ рдЫреМрдВред рддрдкрд╛рдИрдВрдХреЛ рд╡рд╛рддрд╛рд╡рд░рдгрдХреЛ рд╕реНрдерд┐рддрд┐рдХреЛ рд╕рд╛рде рдЯреНрд░рд┐рдЧрд░ рдЧрд░рд┐рдПрдХрд╛ рдЕрд▓рд░реНрдЯрд╣рд░реВрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЙрддреНрдкрдиреНрди рд╣реБрдиреЗ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рд╣рд░реВ рд╕реБрдзрд╛рд░ рдЧрд░реНрди рджреНрд░реБрдд рд░реВрдкрдорд╛ рдХрд╛рд░реНрдп рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрдиреЗрдЫред
рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВрд▓реЗ рдЕрдм рдЖрдлреНрдиреИ рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рдЪрд▓рд╛рдЙрди рд╕рдХреНрдЫрдиреН
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░, рдЕрдм рдмрдЪреНрдЪрд╛ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рднрд┐рддреНрд░ рдирдпрд╛рдБ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рдЪрд▓рд╛рдЙрди рд╕рдореНрднрд╡ рдЫред рдпрджрд┐ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВрдХреЛ рдЪрд░ рд╕рдВрдЦреНрдпрд╛ рдЙрддреНрдкрдиреНрди рдЧрд░реНрди рд▓рдЪрд┐рд▓реЛрдкрди рдЪрд╛рд╣рд┐рдиреНрдЫ рднрдиреЗ рдЧрд╣рд┐рд░рд╛рдЗрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрддрд░ рдЙрдкрдпреЛрдЧреА рд╣реБрди рд╕рдХреНрдЫред
рдкрд╣рд┐рд▓реЗ, рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрд╛, рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рд▓ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд▓рд╛рдИ рдЕрднрд┐рднрд╛рд╡рдХ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдорд╛ рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрди рдЯреНрд░рд┐рдЧрд░ рдХрд╛рд░реНрдп рдЪрд╛рд╣рд┐рдиреНрдЫред рдЕрдм рддрдкрд╛рдИрд▓реЗ рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдЬрд╕рд▓реЗ рдЧрддрд┐рд╢реАрд▓ рд░реВрдкрдорд╛ рдХреБрдиреИ рдкрдирд┐ рдирдпрд╛рдБ рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рд╕реБрд░реВ рдЧрд░реНрдиреЗрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдпрджрд┐ рддрдкрд╛рдЗрдБрд╕рдБрдЧ рдореЛрдиреЛрд░реЗрдкреЛрдЬрд┐рдЯрд░реА рдЫ рднрдиреЗ, рддрдкрд╛рдЗрдБ рдЧрддрд┐рд╢реАрд▓ рд░реВрдкрдорд╛ рдкрд╣рд┐рд▓реЛ рдЙрдкрдкрд╛рдЗрдкрд▓рд╛рдЗрди рдЙрддреНрдкрдиреНрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдЬрд╕рд▓реЗ рд╢рд╛рдЦрд╛рдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрдХреЛ рдЖрдзрд╛рд░рдорд╛ рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдЦреНрдпрд╛рдорд╛ рдирдпрд╛рдБ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗрдЫред
рдЕрднрд┐рднрд╛рд╡рдХ рд░ рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рдмреАрдЪ рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдиреЗрднрд┐рдЧреЗрд╕рди
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдкрд╣рд┐рд▓реЗ, рдЕрднрд┐рднрд╛рд╡рдХ рд░ рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рдмреАрдЪ рдиреЗрднрд┐рдЧреЗрдЯ рдЧрд░реНрди рдзреЗрд░реИ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдерд┐рдПрди - рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЗрдЪреНрдЫрд┐рдд рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдорд╛ рдкреБрдЧреНрди рдзреЗрд░реИ рдХреНрд▓рд┐рдХрд╣рд░реВ рдЪрд╛рд╣рд┐рдиреНрдЫред рдХреБрди рдХрд╛рдорд▓реЗ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╕реБрд░реБ рдЧрд░реНрдпреЛ рднрдиреЗрд░ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрди рдкрдирд┐ рд╕рдЬрд┐рд▓реЛ рдерд┐рдПрдиред рдЕрдм рдЕрднрд┐рднрд╛рд╡рдХ рд░ рдиреЗрд╕реНрдЯреЗрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рдмреАрдЪрдХреЛ рдЬрдбрд╛рдирд╣рд░реВ рд╣реЗрд░реНрди рдзреЗрд░реИ рд╕рдЬрд┐рд▓реЛ рд╣реБрдиреЗрдЫред
рд╕рдорд╛рдирд╛рдиреНрддрд░ рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕ рдХрд╛рд░реНрдпрд╣рд░реВрд▓реЗ рд░реЛрдЬрдЧрд╛рд░ рд╢реАрд░реНрд╖рдХрдорд╛ рд╕рд╛рдиреНрджрд░реНрднрд┐рдХ рдЪрд░рд╣рд░реВ рджреЗрдЦрд╛рдЙрдБрдЫрдиреН
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрднрдпреЛ рднрдиреЗ matrix 1/4
ред рд░рд┐рд▓реАрдЬ 13.4 рдорд╛, рддрдкрд╛рдИрд▓реЗ рд╕рд╛рдиреНрджрд░реНрднрд┐рдХ рдЪрд░ рдорд╛рдирд╣рд░реВ рджреЗрдЦреНрдиреБрд╣реБрдиреЗрдЫ рдЬреБрди рдХрд╛рдордорд╛ рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рдордХреЛ рдирд╛рдордХреЛ рд╕рдЯреНрдЯрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдпрджрд┐ рддрдкрд╛рдИрдВрдХреЛ рд▓рдХреНрд╖реНрдп x86 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдбрд┐рдмрдЧ рдЧрд░реНрдиреЗ рд╣реЛ рднрдиреЗ, рддреНрдпрд╕рдкрдЫрд┐ рдХрд╛рдо рдмреЛрд▓рд╛рдЗрдиреЗрдЫ matrix: debug x86
.
GitLab 13.4 рдорд╛ рдЕрдиреНрдп рд╕реБрдзрд╛рд░рд╣рд░реВ
рдПрдЯрд▓рд╛рд╕рд┐рдпрди рдЦрд╛рддрд╛ рдЬрдбрд╛рди рдЧрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ)
GitLab рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдЕрдм рддрд┐рдиреАрд╣рд░реВрдХреЛ GitLab рдЦрд╛рддрд╛рд╣рд░реВ рддрд┐рдиреАрд╣рд░реВрдХреЛ Atlassian Cloud рдЦрд╛рддрд╛рдорд╛ рдЬрдбрд╛рди рдЧрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрдиреЗрдЫрдиреНред рдпрд╕рд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рддрдкрд╛рдЗрдБрдХреЛ рдПрдЯрд▓рд╛рд╕рд┐рдпрди рдкреНрд░рдорд╛рдг рдкрддреНрд░рд╣рд░реБ рд╕рдВрдЧ GitLab рдорд╛ рд▓рдЧ рдЗрди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗрдЫ, рд░ рднрд╡рд┐рд╖реНрдпрдХреЛ рдПрдХреАрдХрд░рдг рд╕реБрдзрд╛рд░рд╣рд░реБ рдХреЛ рд▓рд╛рдЧреА рдЖрдзрд╛рд░ рдмрдирд╛рдЙрдБрдЫред
рд╕рдмреИ рдорд░реНрдЬ рдХрдорд┐рдЯрд╣рд░реВрдХреЛ рд╕реВрдЪреА рдирд┐рд░реНрдпрд╛рдд рдЧрд░реНрджреИ
(рдЕрдиреНрддрд┐рдо, рд╕реБрди)
рдЕрдиреБрдкрд╛рд▓рди-рдХреЗрдиреНрджреНрд░рд┐рдд рд╕рдВрд╕реНрдерд╛рд╣рд░реВрд▓рд╛рдИ рд▓реЗрдЦрд╛ рдкрд░реАрдХреНрд╖рдХрд╣рд░реВрд▓рд╛рдИ рдЙрддреНрдкрд╛рджрдирдорд╛ рджрд┐рдЗрдПрдХреЛ рдХреБрдиреИ рдкрдирд┐ рдкрд░рд┐рд╡рд░реНрддрдирд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдШрдЯрдХрд╣рд░реВрдХреЛ рд╕рдордЧреНрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рджреЗрдЦрд╛рдЙрдиреЗ рддрд░рд┐рдХрд╛ рдЪрд╛рд╣рд┐рдиреНрдЫред GitLab рдорд╛, рдпрд╕рдХреЛ рдорддрд▓рдм рд╕рдмреИ рдХреБрд░рд╛ рдПрдХреИ рдард╛рдЙрдБрдорд╛ рд╕рдЩреНрдХрд▓рди рдЧрд░реНрдиреБ рд╣реЛ: рдЕрдиреБрд░реЛрдзрд╣рд░реВ, рдЯрд┐рдХрдЯрд╣рд░реВ, рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ, рд╕реБрд░рдХреНрд╖рд╛ рд╕реНрдХреНрдпрд╛рдирд╣рд░реВ, рд░ рдЕрдиреНрдп рдкреНрд░рддрд┐рдмрджреНрдз рдбреЗрдЯрд╛рд╣рд░реВ рдорд░реНрдЬ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдЕрд╣рд┐рд▓реЗ рд╕рдореНрдо, рддрдкрд╛рдИрдВрд▓реЗ рдпрд╛ рдд рдпрд╕рд▓рд╛рдИ рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ GitLab рдорд╛ рд╕рдЩреНрдХрд▓рди рдЧрд░реНрдиреБрдкрд░реНрдереНрдпреЛ рд╡рд╛ рдЬрд╛рдирдХрд╛рд░реА рд╕рдЩреНрдХрд▓рди рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдЖрдлреНрдиреЛ рдЙрдкрдХрд░рдгрд╣рд░реВ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрдиреБрдкрд░реНрдереНрдпреЛ, рдЬреБрди рдзреЗрд░реИ рдкреНрд░рднрд╛рд╡рдХрд╛рд░реА рдерд┐рдПрдиред
рддрдкрд╛рдИрдВ рдЕрдм рдЕрдбрд┐рдЯ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВ рдкреВрд░рд╛ рдЧрд░реНрди рд╡рд╛ рдЕрдиреНрдп рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╣рд░реВ рдЧрд░реНрди рдпреЛ рдбрд╛рдЯрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдкрдорд╛ рд╕рдЩреНрдХрд▓рди рд░ рдирд┐рд░реНрдпрд╛рдд рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рд╣рд╛рд▓рдХреЛ рд╕рдореВрд╣рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдмреИ рдорд░реНрдЬ рдХрдорд┐рдЯрд╣рд░реВрдХреЛ рд╕реВрдЪреА рдирд┐рд░реНрдпрд╛рдд рдЧрд░реНрди, рддрдкрд╛рдИрдВрд▓реЗ рдЬрд╛рдиреБ рдкрд░реНрдЫ
API рдорд╛рд░реНрдлрдд рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╣реБрдБрдЪ рдЯреЛрдХрдирд╣рд░реВ рд╕реВрдЪреА рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрдиреБрд╣реЛрд╕реН
(рдЕрдиреНрддрд┐рдо, рд╕реБрди)
GitLab рдиреЗрдорд╕реНрдкреЗрд╕рдорд╛ рдкрд╣реБрдБрдЪ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрдиреБ рдЕрдиреБрдкрд╛рд▓рди рдкреНрд░рдпрд╛рд╕рд╣рд░реВрдХреЛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рднрд╛рдЧ рд╣реЛред рдХрдореНрддрд┐рдорд╛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░рдХреЛ рд╕рд┐рджреНрдзрд╛рдиреНрддрд╣рд░реВ рджреЗрдЦрд┐ рд╕рдордпрдмрджреНрдз рдкрд╣реБрдБрдЪ рдЕрд╕рдХреНрд╖рдо рдЧрд░реНрди, GitLab рдорд╛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╣реБрдБрдЪ рдЯреЛрдХрдирд╣рд░реВрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдзреЗрд░реИ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВ рд╣реБрди рд╕рдХреНрдЫред рддрдкрд╛рдИрдВрдХреЛ рдиреЗрдорд╕реНрдкреЗрд╕ рднрд┐рддреНрд░ рдпреА рд╕рдмреИ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдорд╛рдгрд╣рд░реВ рдХрд╛рдпрдо рд░рд╛рдЦреНрди рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрди, рд╣рд╛рдореАрд▓реЗ рд╕рдмреИ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╣реБрдБрдЪ рдЯреЛрдХрдирд╣рд░реВ рд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдкрдорд╛ рд╕реВрдЪреАрдмрджреНрдз рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдЧрд░реЗрдХрд╛ рдЫреМрдВред
GitLab API рдорд╛ рдпреА рд╕реБрдзрд╛рд░рд╣рд░реВрд▓реЗ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдЖрдлреНрдиреИ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╣реБрдБрдЪ рдЯреЛрдХрдирд╣рд░реВ рд╕реВрдЪреАрдмрджреНрдз рдЧрд░реНрди рд░ рд░рджреНрдж рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ, рд░ рдкреНрд░рд╢рд╛рд╕рдХрд╣рд░реВрд▓рд╛рдИ рддрд┐рдиреАрд╣рд░реВрдХрд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рдЯреЛрдХрдирд╣рд░реВ рд╕реВрдЪреАрдмрджреНрдз рдЧрд░реНрди рд░ рд░рджреНрдж рдЧрд░реНрдиред рдЕрдм рдкреНрд░рд╢рд╛рд╕рдХрд╣рд░реВрд▓рд╛рдИ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдирд╛рдо рд╕реНрдерд╛рдирдорд╛ рдХрд╕рдХреЛ рдкрд╣реБрдБрдЪ рдЫ рднрдиреЗрд░ рд╣реЗрд░реНрди, рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛рдХреЛ рдЖрдзрд╛рд░рдорд╛ рдкрд╣реБрдБрдЪ рдирд┐рд░реНрдгрдпрд╣рд░реВ рд▓рд┐рди, рд░ рд╕рдореНрдЭреМрддрд╛ рдЧрд░рд┐рдПрдХреЛ рд╡рд╛ рдХрдореНрдкрдиреАрдХреЛ рдкрд╣реБрдБрдЪ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдиреАрддрд┐рд╣рд░реВ рдмрд╛рд╣рд┐рд░ рдкрд░реНрди рд╕рдХреНрдиреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╣реБрдБрдЪ рдЯреЛрдХрдирд╣рд░реВ рд░рджреНрдж рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рд╣реБрдиреЗрдЫред
рд╕рдореНрдмрдиреНрдзрд┐рдд рдореБрджреНрджрд╛рд╣рд░реВ рд░ рдЕрдиреНрдп рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЕрдм GitLab Core рдорд╛ рдЫрдиреН
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдХреЗрд╣реА рдорд╣рд┐рдирд╛рдЕрдШрд┐ рд╣рд╛рдореАрд▓реЗ рдпреЛрдЬрдирд╛ рдШреЛрд╖рдгрд╛ рдЧрд░реЗрдХрд╛ рдерд┐рдпреМрдВ
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рд╕рд╛рдЗрдбрдмрд╛рд░рдорд╛ рдореВрд▓ рд╢рд╛рдЦрд╛ рдирд╛рдо рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдХреЛрдб рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ, рдЫрд▓рдлрд▓рд╣рд░реВ, рд░ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рд╕рдореАрдХреНрд╖рд╛ рдЧрд░реНрджрд╛, рдЧрд╣рд┐рд░реЛ рд╕рдореАрдХреНрд╖рд╛рдХреЛ рд▓рд╛рдЧрд┐ рд╢рд╛рдЦрд╛рдХреЛ рд╕реНрдерд╛рдиреАрдп рдЪреЗрдХрдЖрдЙрдЯ рдЧрд░реНрди рдЕрдХреНрд╕рд░ рд╡рд╛рдВрдЫрдиреАрдп рд╣реБрдиреНрдЫред рдпрджреНрдпрдкрд┐, рдереНрд░реЗрдб рдирд╛рдо рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рдЭрдиреНрдЭрдЯрд┐рд▓реЛ рд╣реБрдиреНрдЫ рдХрд┐рдирдХрд┐ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рд╡рд┐рд╡рд░рдгрдорд╛ рдердк рд╕рд╛рдордЧреНрд░реА рдердкрд┐рдПрдХреЛ рдЫ рд░ рддрдкрд╛рдИрдВрд▓реЗ рдкреГрд╖реНрдард▓рд╛рдИ рддрд▓ рд╕реНрдХреНрд░реЛрд▓ рдЧрд░реНрдиреБрдкрд░реНрдиреЗрдЫред
рд╣рд╛рдореАрд▓реЗ рд╢рд╛рдЦрд╛рдХреЛ рдирд╛рдорд▓рд╛рдИ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рд╕рд╛рдЗрдбрдмрд╛рд░рдорд╛ рдердкреЗрдХрд╛ рдЫреМрдВ, рдпрд╕рд▓рд╛рдИ рдХреБрдиреИ рдкрдирд┐ рд╕рдордпрдорд╛ рдкрд╣реБрдБрдЪрдпреЛрдЧреНрдп рдмрдирд╛рдЙрдБрджреИ рд░ рд╕рдореНрдкреВрд░реНрдг рдкреГрд╖реНрдардорд╛ рд╕реНрдХреНрд░реЛрд▓ рдЧрд░реНрдиреБрдкрд░реНрдиреЗ рдЖрд╡рд╢реНрдпрдХрддрд╛рд▓рд╛рдИ рд╣рдЯрд╛рдЙрдБрджреИред рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрдХреЛ рд▓рд┐рдЩреНрдХ рдЬрд╕реНрддреИ, рд╕реНрд░реЛрдд рд╢рд╛рдЦрд╛ рдЦрдгреНрдбрд▓реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ "рдкреНрд░рддрд┐рд▓рд┐рдкрд┐" рдмрдЯрди рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫред
╨б╨┐╨░╤Б╨╕╨▒╨╛
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рднрд┐рдиреНрдирд╣рд░реВрдорд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐рдХреЛ рд╕рдЩреНрдХреЗрдд
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдЬрд╕рд▓реЗ рдзреЗрд░реИ рдлрд╛рдЗрд▓рд╣рд░реВрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдердкреНрдЫрдиреН рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдБ рд░реЗрдиреНрдбрд░рд┐рдЩ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рд╕реБрдзрд╛рд░ рдЧрд░реНрди рдареВрд▓рд╛ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рднрд┐рдиреНрдирддрд╛рд╣рд░реВ рдкрддрди рдЧрд░реНрджрдЫред рдЬрдм рдпреЛ рд╣реБрдиреНрдЫ, рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рдареВрд▓реЛ рд╕рдВрдЦреНрдпрд╛рд╕рдБрдЧ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдорд╛, рд╕рдореАрдХреНрд╖рд╛рдХреЛ рдХреНрд░рдордорд╛ рдЧрд▓рдд рд░реВрдкрдорд╛ рдлрд╛рдЗрд▓ рдЫреЛрдбреНрди рд╕рдореНрднрд╡ рдЫред рд╕рдВрд╕реНрдХрд░рдг 13.4 рдмрд╛рдЯ рд╕реБрд░реБ рдЧрд░реНрджреИ, рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВрд▓реЗ рдлреЛрд▓реНрдб рдЧрд░рд┐рдПрдХрд╛ рдлрд╛рдЗрд▓рд╣рд░реВ рднрдПрдХрд╛ рдбрд┐рдлрд╣рд░реВрд▓рд╛рдИ рдлреНрд▓реНрдпрд╛рдЧ рдЧрд░реНрдиреЗрдЫ, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рдХреЛрдб рд╕рдореАрдХреНрд╖рд╛рдХреЛ рдХреНрд░рдордорд╛ рдпреА рдлрд╛рдЗрд▓рд╣рд░реВ рдЫреБрдЯрд╛рдЙрдиреБрд╣реБрдиреЗ рдЫреИрдиред рдЕрдЭ рдареВрд▓реЛ рд╕реНрдкрд╖реНрдЯрддрд╛рдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореА рднрд╡рд┐рд╖реНрдпрдХреЛ рд░рд┐рд▓реАрдЬрдорд╛ рдпреА рдлрд╛рдЗрд▓рд╣рд░реВрдорд╛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдЩ рдердкреНрдиреЗ рдпреЛрдЬрдирд╛ рдЧрд░реНрдЫреМрдВред рдЕрдкрдбреЗрдЯрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдореНрдкрд░реНрдХрдорд╛ рд░рд╣рдиреБрд╣реЛрд╕реН
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрдХреЛ рднрд┐рдиреНрдирддрд╛рдорд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐рдХреЛ рдмрд╛рд░реЗрдорд╛ рдЪреЗрддрд╛рд╡рдиреА
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдбрд┐рдл рд╕реЗрдХреНрд╕рдирдорд╛, рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рд╕реБрдзрд╛рд░ рдЧрд░реНрди рдареВрд▓рд╛ рдлрд╛рдЗрд▓рд╣рд░реВ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╣реБрдиреНрдЫрдиреНред рдпрджреНрдпрдкрд┐, рдХреЛрдбрдХреЛ рд╕рдореАрдХреНрд╖рд╛ рдЧрд░реНрджрд╛, рд╕рдмреИ рдареВрд▓рд╛ рдлрд╛рдЗрд▓рд╣рд░реВ рднрддреНрдХрд┐рдПрдХрд╛ рд╣реБрдирд╛рд▓реЗ, рд╕рдореАрдХреНрд╖рдХрд▓реЗ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рд╕реВрдЪреАрдорд╛ рд╕реНрдХреНрд░реЛрд▓ рдЧрд░реНрджрд╛ рдХреЗрд╣реА рдлрд╛рдЗрд▓рд╣рд░реВ рдЫреБрдЯреЗрдХрд╛ рд╣реБрди рд╕рдХреНрдЫрдиреНред
рдпрд╕ рдЦрдгреНрдбрдорд╛ рдорд░реНрдЬ рдЧрд░рд┐рдПрдХреЛ рдлрд╛рдЗрд▓ рдЫ рднрдиреА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рд╕реВрдЪрд┐рдд рдЧрд░реНрди рд╣рд╛рдореАрд▓реЗ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рднрд┐рдиреНрди рдкреГрд╖реНрдардХреЛ рд╢реАрд░реНрд╖рдорд╛ рджреЗрдЦрд┐рдиреЗ рдЪреЗрддрд╛рд╡рдиреА рдердкреЗрдХрд╛ рдЫреМрдВред рдпрд╕ рддрд░рд┐рдХрд╛рд▓реЗ, рддрдкрд╛рдИрдВрд▓реЗ рд╕рдореАрдХреНрд╖рд╛рдХреЛ рдХреНрд░рдордорд╛ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрдорд╛ рдХреБрдиреИ рдкрдирд┐ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдЫреБрдЯрд╛рдЙрдиреБрд╣реБрдиреЗ рдЫреИрдиред
Gitaly рдХреНрд▓рд╕реНрдЯрд░ рднрдгреНрдбрд╛рд░ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░рд┐рдХрднрд░реА
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдкрд╣рд┐рд▓реЗ, рдЬрдм Gitaly рдХреНрд▓рд╕реНрдЯрд░рдХреЛ рдкреНрд░рд╛рдердорд┐рдХ рдиреЛрдб рдЕрдлрд▓рд╛рдЗрди рдЧрдпреЛ, рддреНрдпреЛ рдиреЛрдбрдорд╛ рднрдгреНрдбрд╛рд░рд╣рд░реВ рдкрдвреНрди-рдорд╛рддреНрд░рдХреЛ рд░реВрдкрдорд╛ рдЪрд┐рдиреНрд╣ рд▓рдЧрд╛рдЗрдпреЛред рдпрд╕рд▓реЗ рдиреЛрдбрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рднрдПрдХреЛ рдЕрд╡рд╕реНрдерд╛рд╣рд░реВрдорд╛ рдбреЗрдЯрд╛ рд╣рд╛рдирд┐рд▓рд╛рдИ рд░реЛрдХреНрдпреЛ рдЬреБрди рдЕрдЭреИ рдирдХреНрдХрд▓ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдПрдиред рдЬрдм рдиреЛрдб рдЕрдирд▓рд╛рдЗрди рдлрд┐рд░реНрддрд╛ рдЖрдпреЛ, GitLab рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рднрдПрдХреЛ рдерд┐рдПрди, рд░ рдкреНрд░рд╢рд╛рд╕рдХрд╣рд░реВрд▓реЗ рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ рд╕рд┐рдЩреНрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╕рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реБрд░реБ рдЧрд░реНрди рд╡рд╛ рдбреЗрдЯрд╛ рд╣рд╛рдирд┐ рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрдиреБрдкрд░реНтАНрдпреЛред рдЕрдиреНрдп рдЕрд╡рд╕реНрдерд╛рд╣рд░реВ, рдЬрд╕реНрддреИ рдорд╛рдзреНрдпрдорд┐рдХ рдиреЛрдбрдорд╛ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХрд╛рд░реНрдпрдХреЛ рд╡рд┐рдлрд▓рддрд╛рд▓реЗ рдкрдирд┐ рдмрд╛рд╕реА рд╡рд╛ рдкрдвреНрдиреЗ-рдорд╛рддреНрд░ рднрдгреНрдбрд╛рд░рд╣рд░реВрдХреЛ рдкрд░рд┐рдгрд╛рдо рд╣реБрди рд╕рдХреНрдЫред рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдЕрд░реНрдХреЛ рд▓реЗрдЦрди рдХрд╛рд░реНрдп рдирднрдПрд╕рдореНрдо рднрдгреНрдбрд╛рд░ рдмрд╛рд╕реА рд░рд╣реНрдпреЛ, рдЬрд╕рд▓реЗ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХрд╛рд░реНрдп рд╕реБрд░реБ рдЧрд░реНрдиреЗрдЫред
рдпреЛ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди
рдердк рд░реВрдкрдорд╛, рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдорд░реНрдорддрд▓реЗ рдХреНрд▓рд╕реНрдЯрд░рдорд╛ рдердкрд┐рдПрдХреЛ рдХреБрдиреИ рдкрдирд┐ рдирдпрд╛рдБ рдЧрд┐рдЯрд╛рд▓реА рдиреЛрдбрдорд╛ рднрдгреНрдбрд╛рд░рд╣рд░реВрдХреЛ рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕реБрд░реБ рдЧрд░реНрджрдЫ, рдирдпрд╛рдБ рдиреЛрдбрд╣рд░реВ рдердкреНрджрд╛ рдореНрдпрд╛рдиреБрдЕрд▓ рдХрд╛рд░реНрдп рд╣рдЯрд╛рдЙрдБрджреИред
рдбрд┐рдЬрд╛рдИрди рдкреГрд╖реНрдардорд╛ рд╕рдореНрдкрдиреНрди рднрдПрдХреЛ рдХрд╛рд░реНрдпрд▓рд╛рдИ рдЪрд┐рдиреНрд╣ рд▓рдЧрд╛рдЙрдиреБрд╣реЛрд╕реН
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
GitLab рдорд╛ рдкреНрд░рднрд╛рд╡рдХрд╛рд░реА рд╕рдВрдЪрд╛рд░ рдЧрд░реНрди рдХреЛ рд▓рд╛рдЧреА рд╕реВрдЪреА рдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЫред рдпрджрд┐ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рдЯрд┐рдкреНрдкрдгреАрдорд╛ рдЙрд▓реНрд▓реЗрдЦ рдЧрд░рд┐рдПрдХреЛ рдЫ рднрдиреЗ, рдпреЛ рдХрд╛рд░реНрдпрдорд╛ рд╣рд╛рдо рдлрд╛рд▓реНрди рд░ рдХреЗрд╣рд┐ рдЧрд░реНрди рд╕реБрд░реБ рдЧрд░реНрди рд╡рд╛ рдкреВрд░рд╛ рднрдПрдХреЛ рд░реВрдкрдорд╛ рдЪрд┐рдиреНрд╣ рд▓рдЧрд╛рдЙрди рд╕рдХреНрд╖рдо рд╣реБрдиреБ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫред рдпреЛ рдкрдирд┐ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫ рдХрд┐ рддрдкрд╛рдИрд▓рд╛рдИ рдХреБрдиреИ рдХрд╛рд░реНрдпрдорд╛ рдХрд╛рдо рдЧрд░реНрди рд╡рд╛ рдкрдЫрд┐ рдлрд┐рд░реНрддрд╛ рдЖрдЙрди рдЖрд╡рд╢реНрдпрдХ рд╣реБрдБрджрд╛ рдЖрдлреИрд▓рд╛рдИ рдХрд╛рд░реНрдп рддреЛрдХреНрди рд╕рдХреНрд╖рдо рд╣реБрдиреБ рдкрдирд┐ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫред
рдкрд╣рд┐рд▓реЗ, рддрдкрд╛рдИрдВрд▓реЗ рдХрд╛рд░реНрдпрд╣рд░реВ рдердкреНрди рд╡рд╛ рдбрд┐рдЬрд╛рдЗрдирд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрджрд╛ рдкреВрд░рд╛ рднрдПрдХреЛ рд░реВрдкрдорд╛ рдЪрд┐рдиреНрд╣ рд▓рдЧрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдиред рдпрд╕рд▓реЗ рдЙрддреНрдкрд╛рджрди рдЯреЛрд▓реАрд╣рд░реВ рдмреАрдЪрдХреЛ рд╕рдЮреНрдЪрд╛рд░рдХреЛ рджрдХреНрд╖рддрд╛рд▓рд╛рдИ рдЧрдореНрднреАрд░ рд░реВрдкрдорд╛ рдмрд╛рдзрд╛ рдкреБрд░реНтАНрдпрд╛рдпреЛ, рдХрд┐рдирдХрд┐ рдЧрд░реНрдиреБрдкрд░реНрдиреЗ рдХрд╛рд░реНрдпрд╣рд░реВ GitLab рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣рдХреЛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рддрддреНрд╡ рд╣реЛред
рд░рд┐рд▓рд┐рдЬ 13.4 рдорд╛, рдбрд┐рдЬрд╛рдЗрдирд╣рд░реВрд▓реЗ рдХрд╛рд░реНрдпрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрд╛ рдЯрд┐рдХрдЯ рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВ рд╕рдорд╛рддреНрдЫрдиреН, рдЬрд╕рд▓реЗ рддрд┐рдиреАрд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрди рдЕрдЭ рд╕реБрд╕рдВрдЧрдд рд░ рдкреНрд░рднрд╛рд╡рдХрд╛рд░реА рдмрдирд╛рдЙрдБрдЫред
CI/CD рдХреЛ рд▓рд╛рдЧрд┐ рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рдЧрд╛рдЗрдб
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рд╣рд╛рдореАрд▓реЗ GitLab CI/CD рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рдЧрд╛рдЗрдбрд▓рд╛рдИ рд╕реБрдзрд╛рд░ рдЧрд░реЗрдХрд╛ рдЫреМрдБ рдЬрд╕рдорд╛ рддрдкрд╛рдИрд▓реЗ рд╕рд╛рдордирд╛ рдЧрд░реНрди рд╕рдХреНрдиреЗ рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд╕реНрдпрд╛рд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдердк рдЬрд╛рдирдХрд╛рд░реА рдЫред рд╣рд╛рдореА рдЖрд╢рд╛ рдЧрд░реНрдЫреМрдВ рдХрд┐ рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдХрд╛рдЧрдЬрд╛рддрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЙрдареНрди рд░ GitLab CI/CD рдЫрд┐рдЯреЛ рд░ рд╕рдЬрд┐рд▓реИрд╕рдБрдЧ рдЪрд▓рд╛рдЙрди рдорджреНрджрдд рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рдмрд╣реБрдореВрд▓реНрдп рд╕реНрд░реЛрдд рд╣реБрдиреЗрдЫред
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдЕрдм рдорд░реНрдЬ рд▓рд╛рдордмрд╛рдЯ рдмрд╛рд╣рд┐рд░ рдЖрдЙрдБрджреИрдирдиреН
(рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдкрд╣рд┐рд▓реЗ, рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдврд┐рд▓реЛ рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВрдХреЛ рдХрд╛рд░рдг рджреБрд░реНрдШрдЯрдирд╛рд╡рд╢ рдорд░реНрдЬ рд▓рд╛рдордмрд╛рдЯ рдмрд╛рд╣рд┐рд░ рдЬрд╛рди рд╕рдХреНрдЫред рдпрджрд┐ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдкрд╣рд┐рд▓реЗ рдиреИ рд▓рд╛рдордорд╛ рдерд┐рдпреЛ рд░ рдХрд╕реИрд▓реЗ рдпрд╕рдорд╛ рдЯрд┐рдкреНрдкрдгреА рдердкреНрдпреЛ рдЬрд╕рд▓реЗ рдирдпрд╛рдБ рд╕рдорд╛рдзрд╛рди рдирднрдПрдХреЛ рдЫрд▓рдлрд▓ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдпреЛ рднрдиреЗ, рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд▓рд╛рдИ рдорд░реНрдЬрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдпреЛрдЧреНрдп рдорд╛рдирд┐рдиреНрдЫ рд░ рд▓рд╛рдордмрд╛рдЯ рдмрд╛рд╣рд┐рд░рд┐рдиреЗрдЫред рдЕрдм, рдорд░реНрдЬ рд▓рд╛рдордорд╛ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдердкрд┐рдПрдкрдЫрд┐, рдорд░реНрдЬ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдорд╛ рдмрд╛рдзрд╛ рдирдкрд░реНрдиреЗ рдбрд░ рдмрд┐рдирд╛ рдирдпрд╛рдБ рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВ рдердкреНрди рд╕рдХрд┐рдиреНрдЫред
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрдорд╛ рдХрд╛рдордХреЛ рд▓рд╛рдЧрд┐ рдХреЛрдб рдХрднрд░реЗрдЬ рдорд╛рди рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдкреВрд░рд╛ рднрдПрдкрдЫрд┐ рдХреЛрдб рдХрднрд░реЗрдЬ рдорд╛рди рд╣реЗрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрдиреБрдкрд░реНрджрдЫ - рдХрднрд░реЗрдЬ рдореВрд▓реНрдп рдЧрдгрдирд╛ рдЧрд░реНрди рдкрд╛рд░реНрд╕ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдмрд╣реБ тАЛтАЛрдХрд╛рд░реНрдпрд╣рд░реВрд╕рдБрдЧ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдЪрд▓рд╛рдЙрдиреЗ рдЬрд╕реНрддрд╛ рдЬрдЯрд┐рд▓ рдкрд░рд┐рджреГрд╢реНрдпрд╣рд░реВрдорд╛ рдкрдирд┐ред рдкрд╣рд┐рд▓реЗ, рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рд╡рд┐рдЬреЗрдЯрд▓реЗ рдпреА рдорд╛рдирд╣рд░реВрдХреЛ рдФрд╕рдд рдорд╛рддреНрд░ рджреЗрдЦрд╛рдПрдХреЛ рдерд┐рдпреЛ, рдЬрд╕рдХреЛ рдорддрд▓рдм рддрдкрд╛рдИрдВрд▓реЗ рдХрд╛рд░реНрдп рдкреГрд╖реНрдардорд╛ рдиреЗрднрд┐рдЧреЗрдЯ рдЧрд░реНрдиреБ рдкрд░реНрдиреЗ рдерд┐рдпреЛ рд░ рдордзреНрдпрд╡рд░реНрддреА рдХрднрд░реЗрдЬ рдорд╛рдирд╣рд░реВ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрдорд╛ рдлрд┐рд░реНрддрд╛ рдЬрд╛рдиреБрдкрд░реНрдереНрдпреЛред рддрдкрд╛рдЗрдБрдХреЛ рд╕рдордп рд░ рдпреА рдЕрддрд┐рд░рд┐рдХреНрдд рдЪрд░рдгрд╣рд░реВ рдмрдЪрдд рдЧрд░реНрди, рд╣рд╛рдореАрд▓реЗ рд╡рд┐рдЬреЗрдЯрд▓рд╛рдИ рдФрд╕рдд рдХрднрд░реЗрдЬ рдорд╛рди, рд▓рдХреНрд╖реНрдп рд░ рд╕реНрд░реЛрдд рд╢рд╛рдЦрд╛рд╣рд░реВ рдмреАрдЪрдХреЛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ, рд░ рдФрд╕рдд рдЧрдгрдирд╛ рдЧрд░рд┐рдПрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрдпрдХреЛ рдХрднрд░реЗрдЬ рдорд╛рди рджреЗрдЦрд╛рдЙрдиреЗ рдЯреБрд▓рдЯрд┐рдк рдмрдирд╛рдпреМрдВред
рд╕рдореВрд╣ рд╣реЗрд░реНрджрд╛ рдкреНрдпрд╛рдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдмрд╛рдЯ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рд╣рдЯрд╛рдЙрдБрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
GitLab рдкреНрдпрд╛рдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рд╡рд┐рднрд┐рдиреНрди рдврд╛рдБрдЪрд╛рд╣рд░реВрдорд╛ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рднрдгреНрдбрд╛рд░рдг рд░ рд╡рд┐рддрд░рдг рдЧрд░реНрдиреЗ рдард╛рдЙрдБ рд╣реЛред рдЬрдм рддрдкрд╛рдЗрдБрд╕рдБрдЧ рддрдкрд╛рдЗрдБрдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╡рд╛ рд╕рдореВрд╣рдорд╛ рдзреЗрд░реИ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдЫрдиреН, рддрдкрд╛рдЗрдБрд▓реЗ рдЫрд┐рдЯреЛ рдкреНрд░рдпреЛрдЧ рдирдЧрд░рд┐рдПрдХрд╛ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдкрд╣рд┐рдЪрд╛рди рдЧрд░реНрди рд░ рдорд╛рдирд┐рд╕рд╣рд░реВрд▓рд╛рдИ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрдирдмрд╛рдЯ рд░реЛрдХреНрди рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рд╣рдЯрд╛рдЙрди рдЖрд╡рд╢реНрдпрдХ рдЫред рддрдкрд╛рдИрдВ рдорд╛рд░реНрдлрдд рдЖрдлреНрдиреЛ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдмрд╛рдЯ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рд╣рдЯрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ
рддрдкрд╛рдИрдВрд▓реЗ рдЕрдм рд╕рдореВрд╣рдХреЛ рдкреНрдпрд╛рдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рд╣реЗрд░реНрджрд╛ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рд╣рдЯрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдХреЗрд╡рд▓ рд╕рдореВрд╣рдХреЛ рдкреНрдпрд╛рдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдкреГрд╖реНрдардорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реН, рдирд╛рдорджреНрд╡рд╛рд░рд╛ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдлрд┐рд▓реНрдЯрд░ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рд░ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЖрд╡рд╢реНрдпрдХ рдирдкрд░реНрдиреЗ рдХреБрдиреИ рдкрдирд┐ рд╣рдЯрд╛рдЙрдиреБрд╣реЛрд╕реНред
Conan рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реНрддрд░рдорд╛ рд╕реНрдХреЗрд▓ рдЧрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рддрдкрд╛рдИрдВрд▓реЗ C/C++ рдирд┐рд░реНрднрд░рддрд╛рд╣рд░реВ рдкреНрд░рдХрд╛рд╢рд┐рдд рд░ рд╡рд┐рддрд░рдг рдЧрд░реНрди GitLab рдорд╛ Conan рднрдгреНрдбрд╛рд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдпрджреНрдпрдкрд┐, рдкрд╣рд┐рд▓реЗрдХрд╛ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВрд▓реЗ рдЙрджрд╛рд╣рд░рдг рд╕реНрддрд░рдорд╛ рдорд╛рддреНрд░ рдорд╛рдкрди рдЧрд░реНрди рд╕рдХреНрдереЗ, рдХрд┐рдирдХреА рдХреЛрдирди рдкреНрдпрд╛рдХреЗрдЬ рдирд╛рдо рдорд╛рддреНрд░ рдЕрдзрд┐рдХрддрдо 51 рд╡рд░реНрдгрд╣рд░реВ рд╣реБрди рд╕рдХреНрдЫред рдпрджрд┐ рддрдкрд╛рдЗрдБ рдЙрдкрд╕рдореВрд╣рдмрд╛рдЯ рдкреНрдпрд╛рдХреЗрдЬ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░реНрди рдЪрд╛рд╣рдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐ gitlab-org/ci-cd/package-stage/feature-testing/conan
, рдпреЛ рдЧрд░реНрди рд▓рдЧрднрдЧ рдЕрд╕рдореНрднрд╡ рдерд┐рдпреЛред
рддрдкрд╛рдЗрдБ рдЕрдм рддрдкрд╛рдЗрдБрдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░реНрди рд░ рд╡рд┐рддрд░рдг рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрдБрджреИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реНрддрд░рдорд╛ рдХреЛрдирди рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдорд╛рдкрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред
рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдХреНрдпрд╛рдирд┐рдЩрдХрд╛ рд▓рд╛рдЧрд┐ рдирдпрд╛рдБ рдкреНрдпрд╛рдХреЗрдЬ рдкреНрд░рдмрдиреНрдзрдХрд╣рд░реВ рд░ рднрд╛рд╖рд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди
(рдЕрдиреНрддрд┐рдо, рд╕реБрди)
рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рд╕реВрдЪреАрдорд╛ NuGet 4.9+ рд╡рд╛ Conan рдкреНрдпрд╛рдХреЗрдЬ рдкреНрд░рдмрдиреНрдзрдХрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ C, C++, C# рд░ рдиреЗрдЯ рдХреЛрдб рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдХреНрдпрд╛рдирд╣рд░реВ рдердкреНрди рдЙрддреНрд╕рд╛рд╣рд┐рдд рдЫреМрдВред
рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рд╕реЗрдЯрд┐рдЩрд▓рд╛рдИ 'рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реБрдБрджрд╛ рдорд░реНрдЬ рдЧрд░реНрдиреБрд╣реЛрд╕реН' рдорд╛ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрджрд╛ рд╕реВрдЪрдирд╛рд╣рд░реВ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдкрд╣рд┐рд▓реЗ, рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рд╕реЗрдЯрд┐рдЩрд╣рд░реВ рд╕реЗрдЯ рдЧрд░реНрджрд╛ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╕рдорд╛рдкреНрдд рднрдПрдкрдЫрд┐ рдорд░реНрдЬ рдЧрд░реНрдиреБрд╣реЛрд╕реН (рдорд░реНрдЬ рдЬрдм рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╕рдлрд▓ рд╣реБрдиреНрдЫ, MWPS) рдХреБрдиреИ рдЗрдореЗрд▓ рд╕реВрдЪрдирд╛ рдкрдард╛рдЗрдПрдХреЛ рдерд┐рдПрдиред рддрдкрд╛рдИрдВрд▓реЗ рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ рд╕реНрдерд┐рддрд┐ рдЬрд╛рдБрдЪ рдЧрд░реНрди рд╡рд╛ рдорд░реНрдЬ рд╕реВрдЪрдирд╛рдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдЦрдиреБ рдкрд░реНрдереНрдпреЛред рдпрд╕ рд░рд┐рд▓реАрдЬрдХреЛ рд╕рд╛рде рд╣рд╛рдореА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рдХреЛ рдпреЛрдЧрджрд╛рдирд╣рд░реВ рдлрд┐рдЪрд░ рдЧрд░реНрди рдкрд╛рдЙрдБрджрд╛ рдЦреБрд╕реА рдЫреМрдВ
Kubernetes рдХреЛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛-рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдгрдХреЛ рд╕рд╛рде EKS рдХреНрд▓рд╕реНрдЯрд░рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
GitLab рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдЕрдм Kubernetes рдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдЫрдиреМрдЯ рдЧрд░реНрди рд╕рдХреНрдЫрдиреН рдЬреБрди EKS рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдЧрд░рд┐рдиреЗрдЫ; рддрдкрд╛рдИрдВ рд╕рдВрд╕реНрдХрд░рдг 1.14-1.17 рдмреАрдЪ рдЫрдиреМрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред
рдЯрд┐рдХрдЯ рдкреНрд░рдХрд╛рд░рдХреЛ рд░реВрдкрдорд╛ рдШрдЯрдирд╛рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рддреБрд░реБрдиреНрддреИ рдЙрддреНрдкрдиреНрди рд╣реБрдиреЗ рд╣рд░реЗрдХ рд╕рдорд╕реНрдпрд╛рд▓реЗ рдЕрд▓рд░реНрдЯрд╣рд░реВ рдЯреНрд░рд┐рдЧрд░ рдЧрд░реНрджреИрди: рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдЖрдЙрдЯреЗрдЬ рд░рд┐рдкреЛрд░реНрдЯ рдЧрд░реНрдЫрдиреН рд░ рдЯреЛрд▓реАрдХрд╛ рд╕рджрд╕реНрдпрд╣рд░реВрд▓реЗ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рдореБрджреНрджрд╛рд╣рд░реВрдХреЛ рдЕрдиреБрд╕рдиреНрдзрд╛рди рдЧрд░реНрдЫрдиреНред рдШрдЯрдирд╛рд╣рд░реВ рдЕрдм рдЯрд┐рдХрдЯрдХреЛ рдПрдХ рдкреНрд░рдХрд╛рд░ рд╣реЛ, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВрдХреЛ рдЯреЛрд▓реАрд╣рд░реВрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдЙрдиреАрд╣рд░реВрдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣рдХреЛ рднрд╛рдЧрдХреЛ рд░реВрдкрдорд╛ рддреБрд░реБрдиреНрддреИ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдХреНрдЫрдиреНред рдХреНрд▓рд┐рдХ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдирдпрд╛рдБ рдХрд╛рд░реНрдп GitLab рдХреЛ рдХреБрдиреИ рдкрдирд┐ рдард╛рдЙрдБрдмрд╛рдЯ, рд░ рдлрд┐рд▓реНрдбрдорд╛ рдЯрд╛рдЗрдк рдЧрд░реНрдиреБрд╣реЛрд╕реН рдЪрдпрди рдШрдЯрдирд╛.
рдорд╛рд░реНрдХрдбрд╛рдЙрдирдорд╛ GitLab рдЕрд▓рд░реНрдЯрд╣рд░реВ рдЙрд▓реНрд▓реЗрдЦ рдЧрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рд╣рд╛рдореАрд▓реЗ GitLab рдорд╛ рдЕрд▓рд░реНрдЯрд╣рд░реВ рд╕рд╛рдЭрд╛ рдЧрд░реНрди рд░ рдЙрд▓реНрд▓реЗрдЦ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрдБрджреИ GitLab рдорд╛рд░реНрдХрдбрд╛рдЙрдирдорд╛ рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рддрд┐рдиреАрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдирдпрд╛рдБ рдЙрд▓реНрд▓реЗрдЦ рдкреНрд░рдХрд╛рд░ рдердкреЗрд░ рд╕реБрдзрд╛рд░ рдЧрд░реЗрдХрд╛ рдЫреМрдВред рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН ^alert#1234
рдХреБрдиреИ рдкрдирд┐ рдорд╛рд░реНрдХрдбрд╛рдЙрди рдлрд┐рд▓реНрдбрдорд╛ рдЕрд▓рд░реНрдЯ рдЙрд▓реНрд▓реЗрдЦ рдЧрд░реНрди: рдШрдЯрдирд╛рд╣рд░реВ, рдЯрд┐рдХрдЯрд╣рд░реВ, рд╡рд╛ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдорд╛ред рдпрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЯрд┐рдХрдЯрд╣рд░реВ рд╡рд╛ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рднрдиреНрджрд╛ рдЕрд▓рд░реНрдЯрд╣рд░реВрдмрд╛рдЯ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХрд╛ рд░реЛрдЬрдЧрд╛рд░рд╣рд░реВ рдкрд╣рд┐рдЪрд╛рди рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрдиреЗрдЫред
рдШрдЯрдирд╛ рджреНрд╡рд╛рд░рд╛ рдЕрд▓рд░реНрдЯ рд▓реЛрдб рд╣реЗрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рд╕рддрд░реНрдХрддрд╛ рд╡рд┐рд╡рд░рдгрд▓реЗ рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рд░ рд░рд┐рдХрднрд░реАрдХрд╛ рд▓рд╛рдЧрд┐ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЬрд╛рдирдХрд╛рд░реА рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫ, рд░ рдпреЛ рдЬрд╛рдирдХрд╛рд░реА рд╕рдЬрд┐рд▓реИрд╕рдБрдЧ рдкрд╣реБрдБрдЪрдпреЛрдЧреНрдп рд╣реБрдиреБрдкрд░реНрдЫ рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рдШрдЯрдирд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рдХрд╛рдо рдЧрд░реНрджрд╛ рдЙрдкрдХрд░рдг рд╡рд╛ рдЯреНрдпрд╛рдмрд╣рд░реВ рд╕реНрд╡рд┐рдЪ рдЧрд░реНрдиреБрдкрд░реНрджреИрдиред рдЕрд▓рд░реНрдЯрд╣рд░реВрдмрд╛рдЯ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХрд╛ рдШрдЯрдирд╛рд╣рд░реВрд▓реЗ рдЯреНрдпрд╛рдмрдорд╛ рдкреВрд░реНрдг рдЕрд▓рд░реНрдЯ рд╡рд┐рд╡рд░рдг рджреЗрдЦрд╛рдЙрдБрдЫрдиреН рдЕрд▓рд░реНрдЯ рд╡рд┐рд╡рд░рдгрд╣рд░реВ.
75% рдЫрд┐рдЯреЛ рдЙрдиреНрдирдд рдЦреЛрдЬ
(рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдХрд╛рдВрд╕реНрдп, рд░рдЬрдд, рд╕реБрди)
GitLab, рдПрдХрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╕рдирдХреЛ рд░реВрдкрдорд╛, рддрдкрд╛рдЗрдБрдХреЛ рд╕рдореНрдкреВрд░реНрдг DevOps рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣рдорд╛ рджреНрд░реБрдд рд╕рд╛рдордЧреНрд░реА рдЦреЛрдЬреНрдиреЗ рдЕрджреНрд╡рд┐рддреАрдп рдХреНрд╖рдорддрд╛ рдЫред GitLab 13.4 рдорд╛, рдЙрдиреНрдирдд рдЦреЛрдЬрд▓реЗ 75% рдЫрд┐рдЯреЛ рдкрд░рд┐рдгрд╛рдорд╣рд░реВ рдлрд░реНрдХрд╛рдЙрдБрдЫ
рдкреНрд░рд╢рд╛рд╕рдХрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдореЗрдЯрд╛рдЗрдПрдХрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ рд╣реЗрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ)
рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдЯрд╛рдЙрдиреЗ рдХрд╛рд░реНрдп рд╕реНрдердЧрд┐рдд рдЧрд░реНрдиреЗ рд╡рд┐рдХрд▓реНрдк рдерд┐рдпреЛ
рдпреЛ рд╕реБрд╡рд┐рдзрд╛рд▓реЗ рдкреНрд░рд╢рд╛рд╕рдХрд╣рд░реВрд▓рд╛рдИ рд╕рдмреИ рд╕рд╛рдиреНрджрд░реНрднрд┐рдХ рдЬрд╛рдирдХрд╛рд░реАрд╣рд░реВ рдПрдХреИ рдард╛рдЙрдБрдорд╛ рд╕рдЩреНрдХрд▓рди рдЧрд░реЗрд░ рд░ рдирдЪрд╛рд╣рд┐рдиреЗ рдореЗрдЯрд╛рдЙрдиреЗ рдХрд╛рд░реНрдпрд╣рд░реВрд▓рд╛рдИ рдЕрдиреНрдбреВ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдЧрд░реЗрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдЯрд╛рдЙрдиреЗ рдХрд╛рд░реНрдпрдорд╛ рдмрдвреА рдирд┐рдпрдиреНрддреНрд░рдг рджрд┐рдиреНрдЫред
╨б╨┐╨░╤Б╨╕╨▒╨╛
API рдорд╛ рд╕рдореВрд╣ рдкреБрд╢ рдирд┐рдпрдорд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛ
(рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдХрд╛рдВрд╕реНрдп, рд░рдЬрдд, рд╕реБрди)
рдкрд╣рд┐рд▓реЗ, рд╕рдореВрд╣ рдкреБрд╢ рдирд┐рдпрдорд╣рд░реВ GitLab UI рдорд╛рд░реНрдлрдд рдкреНрд░рддреНрдпреЗрдХ рд╕рдореВрд╣рд▓рд╛рдИ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдкрдорд╛ рднреНрд░рдордг рдЧрд░реЗрд░ рд░ рддреА рдирд┐рдпрдорд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░реЗрд░ рдорд╛рддреНрд░ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рддрдкрд╛рдЗрдБ рдЕрдм рддрдкрд╛рдЗрдБрдХреЛ рдЕрдиреБрдХреВрд▓рди рдЙрдкрдХрд░рдг рд░ GitLab рд╕реНрд╡рдЪрд╛рд▓рди рд╕рдорд░реНрдерди рдЧрд░реНрди API рдорд╛рд░реНрдлрдд рдпреА рдирд┐рдпрдорд╣рд░реВ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред
рд╕реНрд╡-рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдкреНрд░рдорд╛рдг рднрдгреНрдбрд╛рд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╣реБрдБрдЪ рдЯреЛрдХрдирд╣рд░реВ рд░рджреНрдж рдЧрд░реНрджреИ
(рдЕрдиреНрддрд┐рдо)
рд╕реНрдерд┐рд░ рд╕рд╛рдЗрдЯ рд╕рдореНрдкрд╛рджрдХрдХреЛ рд▓рд╛рдЧрд┐ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдлрд╛рдЗрд▓
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
GitLab 13.4 рдорд╛, рд╣рд╛рдореА рд╕реНрдереИрддрд┐рдХ рд╕рд╛рдЗрдЯ рд╕рдореНрдкрд╛рджрдХрд▓рд╛рдИ рдЕрдиреБрдХреВрд▓рди рдЧрд░реНрдиреЗ рдирдпрд╛рдБ рддрд░рд┐рдХрд╛ рдкреНрд░рд╕реНрддреБрдд рдЧрд░реНрджреИрдЫреМрдВред рдпрджреНрдпрдкрд┐ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдлрд╛рдЗрд▓рд▓реЗ рдпрд╕ рд░рд┐рд▓реАрдЬрдорд╛ рдХреБрдиреИ рд╕реЗрдЯрд┐рдЩрд╣рд░реВ рдмрдЪрдд рд╡рд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрджреИрди, рд╣рд╛рдореА рд╕рдореНрдкрд╛рджрдХ рд╡реНрдпрд╡рд╣рд╛рд░рдХреЛ рднрд╡рд┐рд╖реНрдп рдЕрдиреБрдХреВрд▓рдирдХреЛ рд▓рд╛рдЧрд┐ рдЖрдзрд╛рд░ рддрдпрд╛рд░ рдЧрд░реНрджреИрдЫреМрдВред рднрд╡рд┐рд╖реНрдпрдХрд╛ рд░рд┐рд▓реАрдЬрд╣рд░реВрдорд╛ рд╣рд╛рдореА рдлрд╛рдЗрд▓рдорд╛ рдердкреНрдиреЗрдЫреМрдВ .gitlab/static-site-editor.yml
рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВ
рд╕реНрдерд┐рд░ рд╕рд╛рдЗрдЯ рд╕рдореНрдкрд╛рджрдХ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдлрд╛рдЗрд▓рдХреЛ рдкрд░рд┐рдЪрдпрд╛рддреНрдордХ рднрд╛рдЧ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрджреИ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдлреНрд░рдиреНрдЯ рдкрджрд╛рд░реНрде рд╕реНрдерд┐рд░ рд╕рд╛рдЗрдЯ рдЬрдирд░реЗрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдбрд╛рдЯрд╛ рдлрд╛рдЗрд▓рд╣рд░реВрдорд╛ рдкреГрд╖реНрда рдЪрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрди рд▓рдЪрд┐рд▓реЛ рд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддрд░рд┐рдХрд╛ рд╣реЛред рдпреЛ рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛ рдкреГрд╖реНрда рд╢реАрд░реНрд╖рдХ, рд▓реЗрдЖрдЙрдЯ рдЯреЗрдореНрдкреНрд▓реЗрдЯ, рд╡рд╛ рд▓реЗрдЦрдХ рд╕реЗрдЯ рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рддрд░ HTML рдорд╛ рдкреГрд╖реНрда рд░реЗрдиреНрдбрд░ рдЧрд░реНрджрд╛ рдЬреЗрдиреЗрд░реЗрдЯрд░рдорд╛ рдХреБрдиреИ рдкрдирд┐ рдкреНрд░рдХрд╛рд░рдХреЛ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдкрд╛рд╕ рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛ рдлрд╛рдЗрд▓рдХреЛ рд╢реАрд░реНрд╖рдорд╛ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░рд┐рдПрдХреЛ, рдкрд░рд┐рдЪрдпрд╛рддреНрдордХ рднрд╛рдЧ рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛ YAML рд╡рд╛ JSON рдХреЛ рд░реВрдкрдорд╛ рдврд╛рдБрдЪрд╛рдорд╛ рд░рд╛рдЦрд┐рдПрдХреЛ рд╣реБрдиреНрдЫ рд░ рд▓рдЧрд╛рддрд╛рд░ рд░ рд╕рдЯреАрдХ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдЪрд╛рд╣рд┐рдиреНрдЫред рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдирд┐рдпрдорд╣рд░реВрд╕рдБрдЧ рдЕрдкрд░рд┐рдЪрд┐рдд рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдЕрдирдЬрд╛рдиреЗ рд░реВрдкрдорд╛ рдЕрдорд╛рдиреНрдп рдорд╛рд░реНрдХрдЕрдк рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрди рд╕рдХреНрдЫрдиреН, рдЬрд╕рд▓реЗ рдлрд▓рд╕реНрд╡рд░реВрдк рдврд╛рдБрдЪрд╛ рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рд╡рд╛ рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдлрд▓рддрд╛рд╣рд░реВ рдирд┐рдореНрддреНрдпрд╛рдЙрди рд╕рдХреНрдЫред
рдпреА рдврд╛рдБрдЪрд╛ рддреНрд░реБрдЯрд┐рд╣рд░реВ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕реНрдерд┐рд░ рд╕рд╛рдЗрдЯ рд╕рдореНрдкрд╛рджрдХрдХреЛ WYSIWYG рд╕рдореНрдкрд╛рджрди рдореЛрдбрд▓реЗ рдкрд╣рд┐рд▓реЗ рдиреИ рд╕рдореНрдкрд╛рджрдХрдмрд╛рдЯ рдкрд░рд┐рдЪрдп рд╣рдЯрд╛рдЙрдБрдЫред рдЬреЗ рд╣реЛрд╕реН, рдпрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕реНрд░реЛрдд рдореЛрдбрдорд╛ рд╕рдореНрдкрд╛рджрдирдорд╛ рдирдлрд░реНрдХреА рдпрд╕ рднрд╛рдЧрдорд╛ рднрдгреНрдбрд╛рд░рдг рдЧрд░рд┐рдПрдХрд╛ рдорд╛рдирд╣рд░реВ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрдирдмрд╛рдЯ рд░реЛрдХреНрдЫред GitLab 13.4 рдорд╛, рддрдкрд╛рдЗрдБ рдХреБрдиреИ рдкрдирд┐ рдХреНрд╖реЗрддреНрд░ рдкрд╣реБрдБрдЪ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рдкрд░рд┐рдЪрд┐рдд рдлрд╛рд░рдо-рдЖрдзрд╛рд░рд┐рдд рдЗрдиреНрдЯрд░рдлреЗрд╕рдорд╛ рдпрд╕рдХреЛ рдорд╛рди рд╕рдореНрдкрд╛рджрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдЬрдм рдмрдЯрди рдерд┐рдЪрд┐рдиреНрдЫ рд╕реЗрдЯрд┐рдЩреНрд╣рд░реВ (рд╕реЗрдЯрд┐рдЩ) рд╕реБрд░реБрдорд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдкреНрд░рддреНрдпреЗрдХ рдХреБрдЮреНрдЬреАрдХреЛ рд▓рд╛рдЧрд┐ рдлрд╛рд░рдо рдлрд┐рд▓реНрдб рджреЗрдЦрд╛рдЙрдиреЗ рдкреНрдпрд╛рдирд▓ рдЦреБрд▓реНрдиреЗрдЫред рдлрд┐рд▓реНрдбрд╣рд░реВ рд╣рд╛рд▓рдХреЛ рдорд╛рдирд╕рдБрдЧ рднрд░рд┐рдПрдХрд╛ рдЫрдиреН, рд░ рддрд┐рдиреАрд╣рд░реВрдордзреНрдпреЗ рдХреБрдиреИ рдкрдирд┐ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрдиреБ рд╡реЗрдм рдлрд╛рд░рдордорд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрдиреБ рдЬрддреНрддрд┐рдХреИ рд╕рд░рд▓ рдЫред рдпрд╕ рддрд░рд┐рдХрд╛рд▓реЗ рдкрд░рд┐рдЪрдп рд╕рдореНрдкрд╛рджрди рдЧрд░реНрджрд╛ рдЬрдЯрд┐рд▓ рд╕рд┐рдиреНрдЯреНрдпрд╛рдХреНрд╕рдмрд╛рдЯ рдмрдЪреНрди рд╕рдХрд┐рдиреНрдЫ рд░ рдЕрдиреНрддрд┐рдо рдирддрд┐рдЬрд╛ рдирд┐рд░рдиреНрддрд░ рд░реВрдкрдорд╛ рдврд╛рдБрдЪрд╛рдорд╛ рдЫ рднрдиреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрджреИ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕рд╛рдордЧреНрд░реАрдорд╛ рдкреВрд░реНрдг рдирд┐рдпрдиреНрддреНрд░рдг рджрд┐рдиреНрдЫред
рдЬрд┐рд░рд╛ рд░ DVCS рдХрдиреЗрдХреНрдЯрд░рдХреЛ рд▓рд╛рдЧрд┐ GitLab рдЕрдм рдХреЛрд░рдорд╛ рдЫ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
GitLab рдорд╛ Jira рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐:
рдпреА рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдкрд╣рд┐рд▓реЗ рд╣рд╛рдореНрд░реЛ рдкреНрд░рд┐рдорд┐рдпрдо рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдорд╛рддреНрд░ рдЙрдкрд▓рдмреНрдз рдерд┐рдП, рддрд░ рдЕрдм рд╕рдмреИ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдЙрдкрд▓рдмреНрдз рдЫрдиреН!
Gitaly рдХреНрд▓рд╕реНрдЯрд░ рд▓реЗрдирджреЗрди (рдмрд┐рдЯрд╛) рдХреЛ рд▓рд╛рдЧрд┐ рдмрд╣реБрдордд рдорддрджрд╛рди
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ)
Gitaly рдХреНрд▓рд╕реНрдЯрд░рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ Git рднрдгреНрдбрд╛рд░рд╣рд░реВ рдзреЗрд░реИ "рдиреНрдпрд╛рдиреЛ" Gitaly рдиреЛрдбрд╣рд░реВрдорд╛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдпрд╕рд▓реЗ рдЕрд╕рдлрд▓рддрд╛рдХреЛ рдПрдХрд▓ рдмрд┐рдиреНрджреБрд╣рд░реВ рд╣рдЯрд╛рдПрд░ рдЧрд▓реНрддреА рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдмрдврд╛рдЙрдБрдЫред
рдмрд╣реБрд╕рдВрдЦреНрдпрдХ рдорддрджрд╛рдирд▓реЗ рдбрд┐рд╕реНрдХрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдмрдЪрдд рдЧрд░реНрдиреБ рдЕрдШрд┐ рдмрд╣реБрд╕рдВрдЦреНрдпрдХ рдиреЛрдбрд╣рд░реВ (рд╕рдмреИ рд╣реЛрдЗрди) рдХреЛ рд╕рд╣рдорддрд┐ рдЖрд╡рд╢реНрдпрдХ рдЧрд░реА рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рд╕реБрдзрд╛рд░ рдЧрд░реНрджрдЫред рдпрджрд┐ рдпреЛ рдЯрдЧрд▓ рд╕реБрд╡рд┐рдзрд╛ рд╕рдХреНрд╖рдо рдЫ рднрдиреЗ, рд▓реЗрдЦрди рдзреЗрд░реИ рдиреЛрдбрд╣рд░реВрдорд╛ рд╕рдлрд▓ рд╣реБрдиреБрдкрд░реНрдЫред рдЕрд╕рд╣рдорддрд┐ рдиреЛрдбрд╣рд░реВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рддреА рдиреЛрдбрд╣рд░реВрдмрд╛рдЯ рдПрд╕рд┐рдиреНрдХреНрд░реЛрдирд╕ рдкреНрд░рддрд┐рдХреГрддрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕рд┐рдЩреНрдХреНрд░реЛрдирд╛рдЗрдЬ рд╣реБрдиреНрдЫрдиреН рдЬрд╕рд▓реЗ рдХреЛрд░рдо рдЧрдарди рдЧрд░реЗрдХреЛ рдЫред
рд╡реЗрдм IDE рдорд╛ JSON рдкреНрд░рдорд╛рдгреАрдХрд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдХреВрд▓рди рд╕реНрдХреАрдорд╛ рд╕рдорд░реНрдерди
(рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ рдЬрд╣рд╛рдБ рдорд╛рдирд┐рд╕рд╣рд░реВрд▓реЗ JSON рд╡рд╛ YAML рдорд╛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд╣рд░реВ рд▓реЗрдЦреНрдЫрдиреН рдкреНрд░рд╛рдпрдГ рд╕рдорд╕реНрдпрд╛рд╣рд░реВрдХреЛ рдЦрддрд░рд╛ рд╣реБрдиреНрдЫ рдХрд┐рдирднрдиреЗ рдпреЛ рдЯрд╛рдЗрдк рдЧрд░реНрди рд░ рдХреЗрд╣рд┐ рддреЛрдбреНрди рд╕рдЬрд┐рд▓реЛ рдЫред CI рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдорд╛ рдпреА рдореБрджреНрджрд╛рд╣рд░реВ рд╕рдорд╛рддреНрди рдирд┐рд░реАрдХреНрд╖рдг рдЙрдкрдХрд░рдгрд╣рд░реВ рд▓реЗрдЦреНрди рд╕рдореНрднрд╡ рдЫ, рддрд░ JSON рд╕реНрдХрд┐рдорд╛ рдлрд╛рдЗрд▓ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдХрд╛рдЧрдЬрд╛рдд рд░ рд╕рдВрдХреЗрддрд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрди рдЙрдкрдпреЛрдЧреА рд╣реБрди рд╕рдХреНрдЫред
рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рд╣рднрд╛рдЧреАрд╣рд░реВрд▓реЗ рддрд┐рдиреАрд╣рд░реВрдХреЛ рднрдгреНрдбрд╛рд░рдорд╛ рдлрд╛рдЗрд▓рдорд╛ рдЕрдиреБрдХреВрд▓рди рд╕реНрдХреАрдорд╛рдХреЛ рдорд╛рд░реНрдЧ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрди рд╕рдХреНрдЫрдиреН .gitlab/.gitlab-webide.yml
, рдЬрд╕рд▓реЗ рдЬрд╛рдБрдЪ рдЧрд░реНрди рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рд╕реНрдХрд┐рдорд╛ рд░ рдорд╛рд░реНрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрджрдЫред рдЬрдм рддрдкрд╛рдЗрдБ рд╡реЗрдм IDE рдорд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдлрд╛рдЗрд▓ рд▓реЛрдб рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ, рддрдкрд╛рдЗрдБ рдлрд╛рдЗрд▓ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдорджреНрджрддрдХреЛ рд▓рд╛рдЧрд┐ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рджреЗрдЦреНрдиреБрд╣реБрдиреЗрдЫред
рдбрд╛рдЗрд░реЗрдХреНрдЯреЗрдб рдПрд╕рд╛рдЗрдХреНрд▓рд┐рдХ рдЧреНрд░рд╛рдл (DAG) рд╢рд╛рдЦрд╛рдХреЛ рд╕реАрдорд╛ рдмрдвреЗрд░ релреж рдкреБрдЧреЗрдХреЛ рдЫ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдпрджрд┐ рддрдкрд╛рдЗрдБ рдХрдиреНрд╡реЗрдпрд░рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ рд╣реБрдиреБрд╣реБрдиреНрдЫ needs:
, рдзреЗрд░реИ рдХрдареЛрд░ред 13.4 рдорд╛, рдбрд┐рдлрд▓реНрдЯ рд╕реАрдорд╛ 10 рдмрд╛рдЯ рдмрдврд╛рдПрд░ 50 рдмрдирд╛рдЗрдПрдХреЛ рдерд┐рдпреЛ рддрдкрд╛рдИрдВрдХреЛ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВрдорд╛ рдХрд╛рдорд╣рд░реВ рдмреАрдЪрдХреЛ рд╕рдореНрдмрдиреНрдзрдХреЛ рдердк рдЬрдЯрд┐рд▓ рдиреЗрдЯрд╡рд░реНрдХрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдорддрд┐ рджрд┐рдиред
рдпрджрд┐ рддрдкрд╛рдИрдВ рдЖрдлреВ рдЕрдиреБрдХреВрд▓ GitLab рдЙрджрд╛рд╣рд░рдгрдХреЛ рдкреНрд░рд╢рд╛рд╕рдХ рд╣реБрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдИрдВрд▓реЗ рдЯрдЧрд▓ рд╕реБрд╡рд┐рдзрд╛ рд╕реЗрдЯрдЕрдк рдЧрд░реЗрд░ рдпреЛ рд╕реАрдорд╛ рдЕрдЭ рдорд╛рдерд┐ рдмрдврд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдпрджреНрдпрдкрд┐ рд╣рд╛рдореАрд▓реЗ рдпрд╕рдХреЛ рд▓рд╛рдЧрд┐ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд░реНрдерди рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░реНрджреИрдиреМрдВред
╨Ф╨╛╨║╤Г╨╝╨╡╨╜╤В╨░╤Ж╨╕╤П ╨┐╨╛ ╨╜╨░╤Б╤В╤А╨╛╨╣╨║╨╡ needs:
рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рд╡реНрдпрд╡рд╣рд╛рд░ needs
рдЫреБрдЯреЗрдХрд╛ рдХрд╛рд░реНрдпрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдХрддрд┐рдкрдп рдЕрд╡рд╕реНрдерд╛рдорд╛, рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдорд╛ рдЫреБрдЯреЗрдХреЛ рдХрд╛рдордорд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд┐рд░реНрднрд░рддрд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЧрд▓рдд рддрд░рд┐рдХрд╛рд▓реЗ рд╕рдлрд▓ рдорд╛рдиреНрди рд╕рдХрд┐рдиреНрдЫред needs
, рдЬрд╕рд▓реЗ рдкрдЫрд┐рдХрд╛ рдХрд╛рдорд╣рд░реВ рдЪрд▓рд╛рдЙрдирдХреЛ рд▓рд╛рдЧреА, рдЬреБрди рд╣реБрдиреБрд╣реБрдБрджреИрди рдерд┐рдпреЛред рдпреЛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рдВрд╕реНрдХрд░рдг 13.4 рдорд╛ рдирд┐рд╢реНрдЪрд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫ, рд░ needs
рдЕрдм рдЫреБрдЯреЗрдХрд╛ рдХрд╛рд░реНрдпрд╣рд░реВрдХреЛ рдХреЗрд╕рд╣рд░реВ рд╕рд╣реА рд░реВрдкрдорд╛ рд╣реНрдпрд╛рдиреНрдбрд▓ рдЧрд░реНрджрдЫред
╨Ф╨╛╨║╤Г╨╝╨╡╨╜╤В╨░╤Ж╨╕╤П ╨┐╨╛ ╨╜╨░╤Б╤В╤А╨╛╨╣╨║╨╡ needs
рдпрд╕рд▓рд╛рдИ рдореЗрдЯрд╛рдЙрдирдмрд╛рдЯ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреНрддрд┐рдо рдЦреЛрдЬ рдХрд▓рд╛рдХреГрддрд┐ рдкрд┐рди рдЧрд░реНрдиреБрд╣реЛрд╕реН
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
GitLab рд▓реЗ рдЕрдм рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдЕрдиреНрддрд┐рдо рд╕рдлрд▓ рдХрд╛рд░реНрдп рд░ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдЖрд░реНрдЯрд┐рдлреНрдпрд╛рдХреНрдЯрд▓рд╛рдИ рдХреБрдиреИ рдкрдирд┐ рд╕рдХреНрд░рд┐рдп рд╢рд╛рдЦрд╛, рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз, рд╡рд╛ рдореНрдпрд╛рдж рд╕рдорд╛рдкреНрдд рднрдПрдкрдЫрд┐ рдореЗрдЯрд╛рдЙрдирдмрд╛рдЯ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЯреНрдпрд╛рдЧрдорд╛ рд▓рдХ рдЧрд░реНрджрдЫред рдкреБрд░рд╛рдирд╛ рдХрд▓рд╛рдХреГрддрд┐рд╣рд░реВ рд╕рдлрд╛ рдЧрд░реНрди рдердк рдЖрдХреНрд░рд╛рдордХ рдореНрдпрд╛рдж рд╕рдорд╛рдкреНрддрд┐ рдирд┐рдпрдорд╣рд░реВ рд╕реЗрдЯ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рд╣реБрдиреНрдЫред рдпрд╕рд▓реЗ рдбрд┐рд╕реНрдХ рд╕реНрдкреЗрд╕ рдЦрдкрдд рдХрдо рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрджрдЫ рд░ рддрдкрд╛рдЗрдБрд╕рдБрдЧ рд╕рдзреИрдВ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдмрд╛рдЯ рдирд╡реАрдирддрдо рдХрд▓рд╛рдХреГрддрд┐рдХреЛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЫ рднрдиреЗрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрджрдЫред
CI/CD рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рди рдЧрд╛рдЗрдб
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рддрдкрд╛рдИрдВрдХреЛ CI/CD рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд▓рд╛рдИ рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬ рдЧрд░реНрдирд╛рд▓реЗ рдбреЗрд▓рд┐рднрд░реА рдЧрддрд┐ рд╕реБрдзрд╛рд░ рдЧрд░реНрди рд░ рдкреИрд╕рд╛ рдмрдЪрдд рдЧрд░реНрди рд╕рдХреНрдЫред рд╣рд╛рдореАрд▓реЗ рддрдкрд╛рдИрдВрдХреЛ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВ рдЕрдиреБрдХреВрд▓рдирдмрд╛рдЯ рдЕрдзрд┐рдХрддрдо рд▓рд╛рдн рд▓рд┐рдирдХреЛ рд▓рд╛рдЧрд┐ рджреНрд░реБрдд рдорд╛рд░реНрдЧрдирд┐рд░реНрджреЗрд╢рди рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрди рд╣рд╛рдореНрд░реЛ рдХрд╛рдЧрдЬрд╛рдд рд╕реБрдзрд╛рд░ рдЧрд░реЗрдХрд╛ рдЫреМрдВред
рдкрд░реАрдХреНрд╖рдг рд░рд┐рдкреЛрд░реНрдЯ рдкрд░реАрдХреНрд╖рдг рд╕реНрдерд┐рддрд┐ рджреНрд╡рд╛рд░рд╛ рдХреНрд░рдордмрджреНрдз
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдкреНрдпрд╛рдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдорд╛ рдЕрдкрд▓реЛрдб рдЧрд░рд┐рдПрдХрд╛ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рд╕рд╛рдЗрдЬрдорд╛ рд╕реАрдорд┐рддрддрд╛
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
GitLab рдкреНрдпрд╛рдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдорд╛ рдЕрдкрд▓реЛрдб рдЧрд░реНрди рд╕рдХрд┐рдиреЗ рдкреНрдпрд╛рдХреЗрдЬ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рд╕рд╛рдЗрдЬрдорд╛ рдЕрд╣рд┐рд▓реЗ рд╕реАрдорд╛рд╣рд░реВ рдЫрдиреНред рдкреНрдпрд╛рдХреЗрдЬ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирд▓рд╛рдИ рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬ рдЧрд░реНрди рд░ рджреБрд░реБрдкрдпреЛрдЧ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рддрд┐рдмрдиреНрдзрд╣рд░реВ рдердкрд┐рдПрдХрд╛ рдЫрдиреНред рдкреНрдпрд╛рдХреЗрдЬ рдврд╛рдБрдЪрд╛ рдЕрдиреБрд╕рд╛рд░ рд╕реАрдорд╛рд╣рд░реВ рднрд┐рдиреНрди рд╣реБрдиреНрдЫрдиреНред GitLab.com рдХреЛ рд▓рд╛рдЧрд┐, рдЕрдзрд┐рдХрддрдо рдлрд╛рдЗрд▓ рдЖрдХрд╛рд░рд╣рд░реВ рд╣реБрдиреН:
- Conan: 250MB
- Maven: 3GB
- NPM: 300MB
- NuGet: 250MB
- PyPI: 3GB
рдЕрдиреБрдХреВрд▓рди GitLab рдЙрджрд╛рд╣рд░рдгрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐, рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рддрд╣рд░реВ рд╕рдорд╛рди рдЫрдиреНред рдпрджреНрдпрдкрд┐, рдкреНрд░рд╢рд╛рд╕рдХрд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдкреНрд░рддрд┐рдмрдиреНрдзрд╣рд░реВ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрди рд╕рдХреНрдЫ
PyPI рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░реНрди CI_JOB_TOKEN рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рддрдкрд╛рдИрдВрд▓реЗ рд╕реНрд░реЛрдд рдХреЛрдб рд░ CI/CD рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд╣рд░реВрдХрд╛ рд╕рд╛рде рдкрд╛рдЗрдерди рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди, рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░реНрди рд░ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрди GitLab PyPI рднрдгреНрдбрд╛рд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдпрджреНрдпрдкрд┐, рдкрд╣рд┐рд▓реЗ рддрдкрд╛рдИрд▓реЗ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рднрдгреНрдбрд╛рд░рдорд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдЧрд░реНрди рд╕рдХреНрдиреБрднрдПрди CI_JOB_TOKEN
ред рдирддрд┐рдЬрд╛рдХреЛ рд░реВрдкрдорд╛, рддрдкрд╛рдИрдВрд▓реЗ PyPI рднрдгреНрдбрд╛рд░ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрди рдЖрдлреНрдиреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреНрд░рдорд╛рдгрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрдкрд░реНрдиреЗ рдерд┐рдпреЛ, рд╡рд╛ рддрдкрд╛рдИрдВрд▓реЗ рднрдгреНрдбрд╛рд░ рдкреНрд░рдпреЛрдЧ рдирдЧрд░реНрдиреЗ рдирд┐рд░реНрдгрдп рдЧрд░реНрдиреБрднрдПрдХреЛ рд╣реБрди рд╕рдХреНрдЫред
рдпреЛ рдЕрдм GitLab CI/CD рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдЫ рдПрдХ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реА PyPI рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдкреНрд░рдХрд╛рд╢рд┐рдд рд░ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиред CI_JOB_TOKEN
.
рдЕрдиреБрд░реЛрдзрдорд╛ DAST рд╕реНрдХреНрдпрд╛рдирд░ рдкреНрд░реЛрдлрд╛рдЗрд▓рд╣рд░реВ
(рдЕрдиреНрддрд┐рдо, рд╕реБрди)
рдорд╛рдЧ рдЕрдиреБрд╕рд╛рд░ DAST рд╕реНрдХреНрдпрд╛рди рддреНрдпреЛ рдерд┐рдпреЛ
GitLab рдкреГрд╖реНрдард╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд░рд┐рдбрд┐рд░реЗрдХреНрдЯ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдлрд╛рдЗрд▓
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдпрджрд┐ рддрдкрд╛рдЗрдБ GitLab рдкреГрд╖реНрдард╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рд░ URL рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрди рдЪрд╛рд╣рдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдЗрдБрд▓реЗ рддрдкрд╛рдЗрдБрдХреЛ GitLab рдкреГрд╖реНрдард╣рд░реВ рд╕рд╛рдЗрдЯрдорд╛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рдкреНрд░рдмрдиреНрдз рдЧрд░реНрди рд╕рдореНрднрд╡ рдерд┐рдПрди рднрдиреЗрд░ рдпрд╛рдж рдЧрд░реНрдиреБрднрдПрдХреЛ рд╣реБрди рд╕рдХреНрдЫред GitLab рд▓реЗ рдЕрдм рддрдкрд╛рдЗрдБрд▓рд╛рдИ рднрдгреНрдбрд╛рд░рдорд╛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдлрд╛рдЗрд▓ рдердкреЗрд░ рддрдкрд╛рдЗрдБрдХреЛ рдкреГрд╖реНрда рд╕рд╛рдЗрдЯрдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ URL рд▓рд╛рдИ рдЕрд░реНрдХреЛрдорд╛ рд░рд┐рдбрд┐рд░реЗрдХреНрдЯ рдЧрд░реНрди рдирд┐рдпрдорд╣рд░реВ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдХреЗрднрд┐рди рдмрд╛рд░реНрдиреЗрдЯрдХреЛ рдпреЛрдЧрджрд╛рдирдХреЛ рд▓рд╛рдЧрд┐ рдпреЛ рд╕реБрд╡рд┐рдзрд╛ рд╕рдореНрднрд╡ рднрдПрдХреЛ рд╣реЛ (
Terraform рд░рд╛рдЬреНрдп GitLab рджреНрд╡рд╛рд░рд╛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
Terraform рд░рд╛рдЬреНрдпрдХреЛ рдЕрдШрд┐рд▓реНрд▓реЛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВрдорд╛ рдкрд╣реБрдБрдЪ рджреБрд╡реИ рдЕрдиреБрдкрд╛рд▓рдирдХреЛ рд▓рд╛рдЧрд┐ рд░ рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛ рдбрд┐рдмрдЧрд┐рдЩрдХреЛ рд▓рд╛рдЧрд┐ рдЖрд╡рд╢реНрдпрдХ рдЫред GitLab рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдмрдиреНрдзрд┐рдд Terraform рд░рд╛рдЬреНрдп рд╕рдВрд╕реНрдХрд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди GitLab 13.4 рдмрд╛рдЯ рд╕реБрд░реБ рдЧрд░реА рдкреНрд░рджрд╛рди рдЧрд░рд┐рдПрдХреЛ рдЫред рдирдпрд╛рдБ Terraform рд░рд╛рдЬреНрдп рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдВрд╕реНрдХрд░рдг рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рд╕рдХреНрд╖рдо рдЫред рдЕрд╡рд╕реНрдерд┐рдд Terraform рд░рд╛рдЬреНрдп рдлрд╛рдЗрд▓рд╣рд░реВ рд╣реБрдиреЗрдЫ
рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдШрдЯрдирд╛ рд╕реВрдЪрдирд╛ рд╡рд┐рд╡рд░рдг
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдШрдЯрдирд╛рд╣рд░реВ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрджрд╛, рддрдкрд╛рдИрдВ рд╕рдЬрд┐рд▓реИрд╕рдБрдЧ рдЕрд▓рд░реНрдЯ рдХрддрд┐ рд╕рдордп рдЦреБрд▓рд╛ рдерд┐рдпреЛ рд░ рдШрдЯрдирд╛ рдХрддрд┐ рдкрдЯрдХ рдЯреНрд░рд┐рдЧрд░ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ рднрдиреЗрд░ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдпреА рд╡рд┐рд╡рд░рдгрд╣рд░реВ рдкреНрд░рд╛рдпрдГ рдЧреНрд░рд╛рд╣рдХрдорд╛ рдкрд░реНрдиреЗ рдкреНрд░рднрд╛рд╡ рд░ рддрдкрд╛рдЗрдБрдХреЛ рдЯреЛрд▓реАрд▓реЗ рдкрд╣рд┐рд▓реЗ рдХреЗ рд╕рдореНрдмреЛрдзрди рдЧрд░реНрдиреБрдкрд░реНрдЫ рднрдиреЗрд░ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрди рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реБрдиреНрдЫрдиреНред рдирдпрд╛рдБ рдШрдЯрдирд╛ рд╡рд┐рд╡рд░рдг рдкреНрдпрд╛рдирд▓рдорд╛, рд╣рд╛рдореА рд╕рддрд░реНрдХрддрд╛ рд╕реБрд░реБ рд╣реБрдиреЗ рд╕рдордп, рдШрдЯрдирд╛рд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛, рд░ рдореВрд▓ рдЕрд▓рд░реНрдЯрдХреЛ рд▓рд┐рдЩреНрдХ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрдЫреМрдВред рдпреЛ рдЬрд╛рдирдХрд╛рд░реА рдЕрд▓рд░реНрдЯрдмрд╛рдЯ рдЙрддреНрдкрдиреНрди рднрдПрдХрд╛ рдШрдЯрдирд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрд▓рдмреНрдз рдЫред
рдШрдЯрдирд╛ рдЧрдореНрднреАрд░рддрд╛ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░ рд╕реЗрдЯрд┐рдЩ рд░ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрдиреБрд╣реЛрд╕реН
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
рдШрдЯрдирд╛рдХреЛ рдЧрдореНрднреАрд░рддрд╛ рдЖрдпрд╛рдорд▓реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдХрд░реНрддрд╛ рд░ рд╕рд░реЛрдХрд╛рд░рд╡рд╛рд▓рд╛рд╣рд░реВрд▓рд╛рдИ рдЖрдЙрдЯреЗрдЬрдХреЛ рдкреНрд░рднрд╛рд╡, рд╕рд╛рдереИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдХреЛ рд╡рд┐рдзрд┐ рд░ рдЬрд░реБрд░реАрддрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рддрдкрд╛рдИрдВрдХреЛ рдЯреЛрд▓реАрд▓реЗ рдШрдЯрдирд╛ рд░рд┐рдЬреЛрд▓реНрдпреБрд╕рди рд░ рд░рд┐рдХрднрд░реАрдХреЛ рд╕рдордпрдорд╛ рдирддрд┐рдЬрд╛рд╣рд░реВ рд╕рд╛рдЭрд╛ рдЧрд░реНрджрд╛, рддрд┐рдиреАрд╣рд░реВрд▓реЗ рдпреЛ рд╕реЗрдЯрд┐рдЩ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рд╕рдХреНрдЫрдиреНред рддрдкрд╛рдИрдВ рдЕрдм рдШрдЯрдирд╛ рд╡рд┐рд╡рд░рдг рдкреГрд╖реНрдардХреЛ рджрд╛рдпрд╛рдБ рд╕рд╛рдЗрдбрдмрд╛рд░рдорд╛ рдШрдЯрдирд╛рдХреЛ рдЧрдореНрднреАрд░рддрд╛ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд░ рдШрдЯрдирд╛рд╣рд░реВрдХреЛ рд╕реВрдЪреАрдорд╛ рдЧрдореНрднреАрд░рддрд╛ рджреЗрдЦрд╛рдЗрдиреНрдЫред
рдХрдиреНрдЯреЗрдирд░ рдиреЗрдЯрд╡рд░реНрдХ рд╕реБрд░рдХреНрд╖рд╛ рдирд┐рдпрдорд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ, рд╕рдореНрдкрд╛рджрди рдЧрд░реНрдиреЗ рд░ рдореЗрдЯрд╛рдЙрдиреЗ
(рдЕрдиреНрддрд┐рдо, рд╕реБрди)
рдХрдиреНрдЯреЗрдирд░ рдиреЗрдЯрд╡рд░реНрдХ рд╕реБрд░рдХреНрд╖рд╛ рдирд┐рдпрдо рд╕рдореНрдкрд╛рджрдХрдорд╛ рдпреЛ рд╡реГрджреНрдзрд┐рд▓реЗ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рд╕рдЬрд┐рд▓реИрд╕рдБрдЧ GitLab рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдиреНрдЯрд░рдлреЗрд╕рдмрд╛рдЯ рддрд┐рдиреАрд╣рд░реВрдХрд╛ рдирд┐рдпрдорд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди, рд╕рдореНрдкрд╛рджрди рдЧрд░реНрди рд░ рдореЗрдЯрд╛рдЙрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рд╕рдореНрдкрд╛рджрдХ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЫрдиреН .yaml
рдЕрдиреБрднрд╡реА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВ рд░ рдиреЗрдЯрд╡рд░реНрдХ рдирд┐рдпрдорд╣рд░реВрдорд╛ рдирдпрд╛рдБ рднрдПрдХрд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рд╣рдЬ рдЗрдиреНрдЯрд░рдлреЗрд╕рдХреЛ рд╕рд╛рде рдирд┐рдпрдо рд╕рдореНрдкрд╛рджрдХрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ред рддрдкрд╛рдИрдВрд▓реЗ рдЦрдгреНрдбрдорд╛ рдирдпрд╛рдБ рдирд┐рдпрдо рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд╕реБрд░рдХреНрд╖рд╛ рд░ рдЕрдиреБрдкрд╛рд▓рди > рдЦрддрд░рд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди > рдирд┐рдпрдорд╣рд░реВ (рд╕реБрд░рдХреНрд╖рд╛ рд░ рдЕрдиреБрдкрд╛рд▓рди > рдЦрддрд░рд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди > рдиреАрддрд┐рд╣рд░реВ).
Azure рдмреНрд▓рдм рднрдгреНрдбрд╛рд░рдг рд╕рдорд░реНрдерди
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ, рдлреНрд░реА, рдмреНрд░реЛрдВрдЬ, рд╕рд┐рд▓реНрднрд░, рдЧреЛрд▓реНрдб)
GitLab рд░ GitLab рдзрд╛рд╡рдХ рджреБрдмреИрд▓реЗ рдЕрдм рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ
GitLab рдЙрджрд╛рд╣рд░рдгрд╣рд░реВрд▓реЗ LFS рдлрд╛рдЗрд▓рд╣рд░реВ, CI рдХрд▓рд╛рдХреГрддрд┐рд╣рд░реВ, рд░ рд╕рд╣рд┐рдд рд╕рдмреИ рдкреНрд░рдХрд╛рд░рдХрд╛ рд╡рд╕реНрддреБ рд╕реНрдЯреЛрд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ Azure рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред
GitLab рдХрд╛рд░реНрдп рдкреНрд░реЛрд╕реЗрд╕рд░рд╣рд░реВрд▓реЗ рдкрдирд┐ рднрдгреНрдбрд╛рд░рдгрдХреЛ рд▓рд╛рдЧрд┐ Azure рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ [runners.cache.azure]
Ubuntu рд░ OpenSUSE рдХреЛ рд▓рд╛рдЧрд┐ Omnibus ARM64 рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ
(рдХреЛрд░, рд╕реНрдЯрд╛рд░реНрдЯрд░, рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ)
64-bit ARM рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдорд╛ GitLab рдЪрд▓рд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдердирдХреЛ рд▓рд╛рдЧрд┐ рдмрдвреНрджреЛ рдорд╛рдЧрдХреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдорд╛, рд╣рд╛рдореА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ ARM64 Ubuntu 20.04 рдУрдореНрдирд┐рдмрд╕ рдкреНрдпрд╛рдХреЗрдЬрдХреЛ рдЙрдкрд▓рдмреНрдзрддрд╛ рдШреЛрд╖рдгрд╛ рдЧрд░реНрди рдкрд╛рдЙрдБрджрд╛ рдЦреБрд╕реА рдЫреМрдВред Zitai рдЪреЗрди рд░ Guillaume Gardet рд▓рд╛рдИ рдЙрдиреАрд╣рд░реВрд▓реЗ рдЧрд░реЗрдХреЛ рдареВрд▓реЛ рдпреЛрдЧрджрд╛рдирдХреЛ рд▓рд╛рдЧрд┐ рдзреЗрд░реИ рдзреЗрд░реИ рдзрдиреНрдпрд╡рд╛рдж - рддрд┐рдиреАрд╣рд░реВрдХреЛ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзрд╣рд░реВрд▓реЗ рдпрд╕рдорд╛ рдореБрдЦреНрдп рднреВрдорд┐рдХрд╛ рдЦреЗрд▓реЗрдХреЛ рдЫ!
Ubuntu 20.04 рдХреЛ рд▓рд╛рдЧрд┐ рдкреНрдпрд╛рдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рд░ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди, рд╣рд╛рдореНрд░реЛ рдорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реН Ubuntu
.
GitLab рд╣реЗрд▓реНрдо рдЪрд╛рд░реНрдЯрдХреЛ рд▓рд╛рдЧрд┐ рд╕реНрдорд╛рд░реНрдЯ рдХрд╛рд░реНрдб рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рдорд░реНрдерди
(рдкреНрд░рд┐рдорд┐рдпрдо, рдЕрд▓реНрдЯрд┐рдореЗрдЯ)
рд╕реНрдорд╛рд░реНрдЯ рдХрд╛рд░реНрдбрд╣рд░реВ, рдЬрд╕реНрддреИ рд╕рд╛рдЭрд╛ рдкрд╣реБрдБрдЪ рдХрд╛рд░реНрдбрд╣рд░реВ (CAC), рдЕрдм рд╣реЗрд▓реНрдо рдЪрд╛рд░реНрдЯ рдорд╛рд░реНрдлрдд рддреИрдирд╛рдд GitLab рдЙрджрд╛рд╣рд░рдгрдорд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рд╕реНрдорд╛рд░реНрдЯ рдХрд╛рд░реНрдбрд╣рд░реВ X.509 рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕реНрдерд╛рдиреАрдп рдбрд╛рдЯрд╛рдмреЗрд╕ рд╡рд┐рд░реБрджреНрдз рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдЧрд░рд┐рдиреНрдЫред рдпрд╕рд╕рдБрдЧреИ, рд╣реЗрд▓реНрдо рдЪрд╛рд░реНрдЯрдХреЛ рд╕рд╛рдердорд╛ рд╕реНрдорд╛рд░реНрдЯ рдХрд╛рд░реНрдб рд╕рдорд░реНрдерди рдЕрдм рдУрдореНрдирд┐рдмрд╕ рдбрд┐рдкреНрд▓реЛрдпрдореЗрдиреНрдЯрд╣рд░реВрдорд╛ рдЙрдкрд▓рдмреНрдз рд╕реНрдорд╛рд░реНрдЯ рдХрд╛рд░реНрдб рд╕рдорд░реНрдердирд╕рдБрдЧ рдорд┐рд▓реНрджреЛрдЬреБрд▓реНрджреЛ рдЫред
рд╡рд┐рд╕реНрддреГрдд рд░рд┐рд▓реАрдЬ рдиреЛрдЯрд╣рд░реВ рд░ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ/рд╕реНрдерд╛рдкрдирд╛ рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рдореВрд▓ рдЕрдВрдЧреНрд░реЗрдЬреА рдкреЛрд╕реНрдЯрдорд╛ рдкрдвреНрди рд╕рдХрд┐рдиреНрдЫ:
рд╣рд╛рдореА рдЕрдЩреНрдЧреНрд░реЗрдЬреАрдмрд╛рдЯ рдЕрдиреБрд╡рд╛рджрдорд╛ рдХрд╛рдо рдЧрд░рд┐рд░рд╣реЗрдХрд╛ рдерд┐рдпреМрдВ
рд╕реНрд░реЛрдд: www.habr.com