GitLab рдФрд░ Pantheon рдХреЛ рдХреИрд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ Drupal рдФрд░ WordPress рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдХреЛ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝ рдХрд░реЗрдВ


рд╣рдорд╛рд░реЗ рдЕрддрд┐рдерд┐, рдкреЗрдВрдЯреАрд╣реЙрди рдбреЗрд╡рд▓рдкрд░ рдЯреВрд▓ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛, рдЧреАрддрд╛рд▓рд╛рдм рд╕реАрдЖрдИ / рд╕реАрдбреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрдбрдкреНрд░реЗрд╕ рддреИрдирд╛рддреА рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред


Pantheon рдореЗрдВ, рдореИрдВ рдбреЗрд╡рд▓рдкрд░ рд╕рдВрдмрдВрдзреЛрдВ рдХреЗ рд╕рд╛рде рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рд╣рдореЗрд╢рд╛ рд╡рд░реНрдбрдкреНрд░реЗрд╕ рдФрд░ рдбреНрд░реБрдкрд▓ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЕрдкрдиреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдореЗрдВ рд╕реНрд╡рдЪрд╛рд▓рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП рддрд░реАрдХреЗ рдЦреЛрдЬ рд░рд╣рд╛ рд╣реВрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдирдП рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдирд╛ рдФрд░ рдкреНрд░рднрд╛рд╡реА рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВред


рдореИрдВ рдЕрдХреНрд╕рд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдПрдХ рдПрдХрд▓ рд╡рд┐рдХрд╛рд╕ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рддрд╛рдпрд╛ рд╣реБрдЖ рджреЗрдЦрддрд╛ рд╣реВрдВред


рдЗрддрдиреЗ рдордЬрд╝реЗрджрд╛рд░ - рдПрдХ рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдмрд╛рд░реА рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдиреЗ рдпрд╛ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдПрдХ рдиреЛрдЯ рдХреЗ рд╕рд╛рде рдПрдХ URL рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП: "рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдирд╣реАрдВ рджреЗрдЦреЗрдВред"


рдмрд╣реБрджреЗрд╡ рд╡рд╛рддрд╛рд╡рд░рдг - рдкрдВрдерд┐рдпрди рдХреЗ рд╢рд╛рдВрдд рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ - рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдХреЗ рд╕рд╛рде рдЖрдк рдЕрдиреБрд░реЛрдз рдкрд░ рдЧрд┐рдЯ рд╢рд╛рдЦрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдмрд╣реБрджреЗрд╡ рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдЕрдкрдирд╛ URL рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЪреБрдкрдЪрд╛рдк рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдЧреБрдгрд╡рддреНрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рджреВрд╕рд░реЗ рдХреА рдПрдбрд╝реА рдкрд░ рдХрджрдо рд░рдЦреЗ рдмрд┐рдирд╛ рдЕрдиреБрдореЛрджрди рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред


рд▓реЗрдХрд┐рди Pantheon рдХреЗ рдкрд╛рд╕ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдпрд╛ рдирд┐рд░рдВрддрд░ рдПрдХреАрдХрд░рдг рдФрд░ рддреИрдирд╛рддреА (CI / CD) рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЙрдкрдХрд░рдг рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рд▓рдЪреАрд▓рд╛ рдордВрдЪ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдХрд┐рд╕реА рднреА рдЙрдкрдХрд░рдг рдХреЛ рдПрдХреАрдХреГрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдореИрдВрдиреЗ рдпрд╣ рднреА рджреЗрдЦрд╛ рдХрд┐ рдЯреАрдо рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╡реЗ рдПрдХ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдФрд░ рддреИрдирд╛рддреА рдХреЗ рд▓рд┐рдП - рдЕрдиреНрдпред


рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрдирдХреЗ рдкрд╛рд╕ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдФрд░ CI / CD рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЙрдкрдХрд░рдг рд╣реИрдВред рдЖрдкрдХреЛ рдХреЛрдб рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдФрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдирд┐рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ рдЧрдбрд╝рдмрдбрд╝ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред


GitLab рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдПрдХ рдкреВрд░реНрдг рд╕реЗрдЯ рд╣реИ: рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг, рдЯрд┐рдХрдЯ, рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз, рдХрдХреНрд╖рд╛ рдореЗрдВ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда CI / CD рдкрд╛рдЗрдкрд▓рд╛рдЗрди, рдХрдВрдЯреЗрдирд░реЛрдВ рдХрд╛ рдПрдХ рд░рдЬрд┐рд╕реНрдЯрд░ рдФрд░ рдЙрд╕ рд╕рднреА рд╕рд╛рдорд╛рди рдХреЗ рд▓рд┐рдПред рдореИрдВ рдЙрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛ рд╣реВрдВ рдЬрд┐рдирдореЗрдВ рд╡рд┐рдХрд╛рд╕ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ рд╣реЛрдЧрд╛ред


рдореБрдЭреЗ рдСрдЯреЛрдореЗрд╢рди рд╕реЗ рдкреНрдпрд╛рд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдпрд╣ рд╕реАрдЦрд╛ рдХрд┐ рдкрдВрдерд┐рдпрди рдХреЛ рдЧрд┐рдЯрд▓реИрдм рд╕реЗ рдХреИрд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдП, рддрд╛рдХрд┐ рдЧрд┐рдЯрд▓реИрдм рдкрд░ рдореБрдЦреНрдп рд╢рд╛рдЦрд╛ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рдкреИрдВрдЯрд╣реЛрди рдореЗрдВ рдореБрдЦреНрдп рд╡рд┐рдХрд╛рд╕ рдХреЗ рдорд╛рд╣реМрд▓ рдореЗрдВ рддреИрдирд╛рдд рд╣реЛрдВред рдФрд░ GitLab рдкрд░ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ Pantheon рдореЗрдВ рдмрд╣реБ-рд╕реНрддрд░реАрдп рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХреЛрдб рдмрдирд╛ рдФрд░ рддреИрдирд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдЗрд╕ рдЧрд╛рдЗрдб рдореЗрдВ, рдореИрдВ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реВрдБ рдХрд┐ рдХреИрд╕реЗ GitLab рдФрд░ Pantheon рдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдз рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реИ рдФрд░ рдЕрдкрдиреЗ рд╡рд░реНрдбрдкреНрд░реЗрд╕ рдФрд░ рдбреНрд░реВрдк рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдирд╛ рд╣реИред


рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЧрд┐рдЯрд▓реИрдм рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдорд┐рд░рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рдЧрд┐рдЯрд▓реИрдм рд╕реАрдЖрдИ рдореЗрдВ рдЦреБрджрд╛рдИ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреЗрди рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рдХрд░реЗрдВрдЧреЗ рдФрд░ рди рдХреЗрд╡рд▓ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рддреИрдирд╛рддреА рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред


рдкрд░рд┐рдЪрдп


рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ Pantheon рдкреНрд░рддреНрдпреЗрдХ рд╕рд╛рдЗрдЯ рдХреЛ рддреАрди рддрддреНрд╡реЛрдВ рдореЗрдВ рддреЛрдбрд╝рддрд╛ рд╣реИ: рдХреЛрдб, рдбреЗрдЯрд╛рдмреЗрд╕ рдФрд░ рдлрд╛рдЗрд▓реЗрдВред


рдХреЛрдб рдореЗрдВ CMS рдлрд╝рд╛рдЗрд▓, рдЬреИрд╕реЗ рдХрд░реНрдиреЗрд▓, рдкреНрд▓рдЧрдЗрдиреНрд╕ рдФрд░ рд╡рд░реНрдбрдкреНрд░реЗрд╕ рдереАрдо рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ Pantheon рджреНрд╡рд╛рд░рд╛ рд╣реЛрд╕реНрдЯ рдХрд┐рдП рдЧрдП Git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд, рд╣рдо GitLab рд╕реЗ Pantheon рдХреЛ Git рдХреЗ рд╕рд╛рде рдХреЛрдб рддреИрдирд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
Pantheon рдХреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдореАрдбрд┐рдпрд╛ рдлрд╛рдЗрд▓реНрд╕ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╛рдиреА рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рдЪрд┐рддреНрд░ред рдЖрдорддреМрд░ рдкрд░ рд╡реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ Git рдЙрдирдХреА рдЙрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВред


рдПрдХ рдирд┐: рд╢реБрд▓реНрдХ рдЦрд╛рддрд╛ рдмрдирд╛рдПрдВ , рдкреИрдВрдЯрд╣реЛрди рдХреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдиреЗрдВ , рдпрд╛ pantheon.io рдкрд░ рдПрдХ рдбреЗрдореЛ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрди рдЕрдк рдХрд░реЗрдВ ред


рдорд╛рдиреНрдпрддрд╛рдУрдВ


рдкрдВрдереЗрди рдФрд░ рдЧрд┐рдЯрд▓реИрдм рдкрд░ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдкреИрдирдереЙрди pantheon-gitlab-blog-demo рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдЕрджреНрд╡рд┐рддреАрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣рд╛рдВ рд╣рдо рд╡рд░реНрдбрдкреНрд░реЗрд╕ рд╕рд╛рдЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред рдЖрдк Drupal рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдХреБрдЫ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред


рдореИрдВ Git рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛, рдФрд░ рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ GUI рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ


рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ GitLab рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ (рд╣рдо рдЙрд╕ рдкрд░ рд╡рд╛рдкрд╕ рдЖрдПрдВрдЧреЗ)ред


рдЕрдм Pantheon рдкрд░ рд╡рд░реНрдбрдкреНрд░реЗрд╕ рд╕рд╛рдЗрдЯ рдмрдирд╛рдПрдВ ред рдлрд┐рд░ рдбреИрд╢рдмреЛрд░реНрдб рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рд╡рд░реНрдбрдкреНрд░реЗрд╕ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВред


рдпрджрд┐ рдЖрдкрдХреЗ рд╣рд╛рде рдЦреБрдЬрд▓реА рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХреБрдЫ рдмрджрд▓реЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреНрд▓рдЧрдЗрдиреНрд╕ рдирд┐рдХрд╛рд▓реЗрдВ рдФрд░ рдЬреЛрдбрд╝реЗрдВ, рдзреИрд░реНрдп рд░рдЦреЗрдВред рд╕рд╛рдЗрдЯ рдЕрднреА рддрдХ GitLab рд╕реЗ рдЬреБрдбрд╝реА рдирд╣реАрдВ рд╣реИ, рдФрд░ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ GitLab рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреЛрдб рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрдВред

рдЬрдм рд╣рдо рд╡рд░реНрдбрдкреНрд░реЗрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдкреИрдиреНрдерд┐рдпрди рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЗ рдбреИрд╢рдмреЛрд░реНрдб рдкрд░ рд▓реМрдЯрддреЗ рд╣реИрдВ рдФрд░ рд╡рд┐рдХрд╛рд╕ рдореЛрдб рдХреЛ рдЧрд┐рдЯ рдореЗрдВ рдмрджрд▓рддреЗ рд╣реИрдВред



GitLab рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛


рдЕрдм рдЖрдкрдХреЛ рдкреИрдирдереЙрди рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ GitLab рдкрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╡рд░реНрдбрдкреНрд░реЗрд╕ рдХреЛрдб рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ Pantheon рд╕рд╛рдЗрдЯ рдХреА Git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рдХреЛрдб рдХреЛ рдХреНрд▓реЛрди рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ GitLab рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рднреЗрдЬрддреЗ рд╣реИрдВред


рдЗрд╕реЗ рд╕рд░рд▓ рдФрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо Pantheon рдореЗрдВ рдПрдХ SSH рдХреБрдВрдЬреА рдЬреЛрдбрд╝реЗрдВрдЧреЗ рдФрд░ рдЬрдм рд╣рдо Pantheon Git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдХреНрд▓реЛрди рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдо рд╣рд░ рдмрд╛рд░ рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдЙрд╕реА рд╕рдордп, рд╣рдо GitLab рдореЗрдВ рдПрдХ SSH рдХреБрдВрдЬреА рдЬреЛрдбрд╝ рджреЗрдВрдЧреЗ ред


рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╕рд╛рдЗрдЯ рдбреИрд╢рдмреЛрд░реНрдб рдкрд░ Git рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рд╛рде рдХреНрд▓реЛрди рд╕реЗ рдХрдорд╛рдВрдб рдХреЙрдкреА рдХрд░рдХреЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ Pantheon рд╕рд╛рдЗрдЯ рдХреЛ рдХреНрд▓реЛрди рдХрд░рддреЗ рд╣реИрдВред



рдпрджрд┐ рдЖрдкрдХреЛ рд╕рд╣рд╛рдпрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ Pantheon рдХреЗ рд▓рд┐рдП Git Get Started рдкреНрд░рд▓реЗрдЦрди рдкрдврд╝реЗрдВред


рдЕрдм gitLab рдХреЛ Pantheon рдХреЗ git remote origin рдкрд░ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП git remote origin рдмрджрд▓реЗрдВред рдпрд╣ git remote рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдЪрд▓рд┐рдП GitLab рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡рд┐рд╡рд░рдг рдкреГрд╖реНрда рдкрд░ рдХреНрд▓реЛрди рдбреНрд░реЙрдк-рдбрд╛рдЙрди рд╕реВрдЪреА рд╕реЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА URL рдХреЙрдкреА рдХрд░рддреЗ рд╣реИрдВред рд╣рдо SSH рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдХреНрд▓реЛрди рдХрд╛ рдЪрдпрди рдХрд░реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╣реА SSH рдХреБрдВрдЬреА рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВред



рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдХреЛрдб рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рд╕реНрдерд╛рдиреАрдп рдкреНрд░рддрд┐ рдХреЗ рд▓рд┐рдП git remote origin ред рдЗрд╕реЗ git remote set-url origin [URL GitLab] рд╕рд╛рде рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд╣рд╛рдБ рдХреЛрд╖реНрдардХ рдХреЗ рдмрдЬрд╛рдп рд╣рдо рд╡рд╛рд╕реНрддрд╡рд┐рдХ URL рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВред


рдЕрдВрдд рдореЗрдВ, рдЕрдкрдиреЗ рд╡рд░реНрдбрдкреНрд░реЗрд╕ рдХреЛрдб рдХреЛ рдкреЗрдВрдерд┐рдпрди рд╕реЗ рдЧрд┐рдЯрд▓реИрдм рдореЗрдВ рд╕рдмрдорд┐рдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП git push origin master --force рдУрд░рд┐рдЬрдирд▓ рдорд╛рд╕реНрдЯрд░ --рдлреЛрд░реНрд╕ рдЪрд▓рд╛рдПрдВред


-рдлреЛрд░реНрд╕ рдСрдкреНрд╢рди рдХреА рдЬрд░реВрд░рдд рд╕рд┐рд░реНрдл рдПрдХ рдмрд╛рд░ рдкрдбрд╝рддреА рд╣реИред рдлрд┐рд░ GitLab рдкрд░ git push рдХрдорд╛рдВрдб рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдФрд░ рдЪрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ


рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдХреИрд╕реЗ рд╣рдордиреЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкреИрдиреНрдерд┐рдпреЛрди рдФрд░ рдЧрд┐рдЯрд▓реИрдм рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП SSH рдХреБрдВрдЬреА рдЬреЛрдбрд╝реА? SSH рдЯреЛрдХрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЧрд┐рдЯрд▓реИрдм рдФрд░ рдкреИрдирдерд┐рдпрди рдХреЛ рдЕрдзрд┐рдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


GitLab рдХреЗ рдкрд╛рд╕ рдХреБрдЫ рдмреЗрд╣рддрд░реАрди рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИрдВред рдЖрдЗрдП рдбреЙрдХреНрдпреВрдореЗрдВрдЯ рдХреЛ рдбреЙрдХрдЯрд░ рдирд┐рд╖реНрдкрд╛рджрдХ рдХреЛ GitLab CI / CD рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ SSH рдХреБрдВрдЬрд┐рдпреЛрдВ рдкрд░ рдЕрдиреБрднрд╛рдЧ рджреЗрдЦреЗрдВред


рдЕрдм рд╣рдо рдкрд╣рд▓реЗ рджреЛ рдЪрд░рдгреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░реЗрдВрдЧреЗ: рдПрд╕рдПрд╕рдПрдЪ рдХреБрдВрдЬреА рдХреА рдПрдХ рдирдИ рдЬреЛрдбрд╝реА рдХреЛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ ssh-keygen рдХреЗ рд╕рд╛рде рдмрдирд╛рдПрдВ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рдЬреА рдХреБрдВрдЬреА рдЬреЛрдбрд╝реЗрдВ ред


рдлрд┐рд░ рд╣рдо SSH_PRIVATE_KEY рдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ GitLab CI / CD рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред
рддреАрд╕рд░реЗ рдФрд░ рдЪреМрдереЗ рдЪрд░рдг рдореЗрдВ, рдирд┐рдореНрди рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде .gitlab-ci.yml рдмрдирд╛рдПрдБ:


 before_script: # See https://docs.gitlab.com/ee/ci/ssh_keys/README.html - eval $(ssh-agent -s) - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null - mkdir -p $HOME/.ssh && echo "StrictHostKeyChecking no" >> "$HOME/.ssh/config" - git config --global user.email "$GITLAB_USER_EMAIL" - git config --global user.name "Gitlab CI" 

рдЬрдм рддрдХ рд╣рдо .gitlab-ci.yml , рддрдм рддрдХ рдЗрд╕рдореЗрдВ рдХреБрдЫ рдФрд░ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред


рдЕрдм рд╣рдо рдкрд╛рдБрдЪрд╡рд╛рдБ рдЪрд░рдг рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрди рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдордиреЗ рдкрд╣рд▓реЗ рдЪрд░рдг рдореЗрдВ рдЙрди рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рдмрдирд╛рдпрд╛ рдерд╛ рдЬрд┐рдирдХреА рдЖрдкрдХреЛ рдирд┐рд░реНрдорд╛рдг рдкрд░рд┐рд╡реЗрд╢ рдореЗрдВ рдкрд╣реБрдБрдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ред


рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо GitLab рд╕реЗ Pantheon рддрдХ рдкрд╣реБрдБрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред Pantheon рдореЗрдВ SSH рдХреБрдВрдЬреА рдЬреЛрдбрд╝рдиреЗ рдФрд░ рдЗрд╕ рдЪрд░рдг рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Pantheon рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рджрд┐рдП рдЧрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВред


рдпрд╛рдж рд░рдЦреЗрдВ: GitLab рдореЗрдВ рдмрдВрдж SSH, рдкрдВрдерд┐рдпрди рдореЗрдВ рдЦреБрд▓рд╛ред

рдХреБрдЫ рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░реЗрдВред рдкрд╣рд▓реЗ рдХреЛ PANTHEON_SITE рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЕрд░реНрде рдЖрдкрдХреА рдорд╢реАрди рдкрд░ рдкрдВрдерд┐рдпрди рд╕рд╛рдЗрдЯ рдХрд╛ рдирд╛рдо рд╣реИред


рдорд╢реАрди рдкрд░ рдирд╛рдо рдХреНрд▓реЛрди рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде Git рдХрдорд╛рдВрдб рдХреЗ рдЕрдВрдд рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╣реА рд╕рд╛рдЗрдЯ рдХреЛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдХреНрд▓реЛрди рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕реНрдерд╛рдиреАрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХрд╛ рдирд╛рдо рд╣реЛрдЧрд╛ред



рдЗрд╕рдХреЗ рдмрд╛рдж, PANTHEON_GIT_URL рдкрд░реНрдпрд╛рд╡рд░рдг PANTHEON_GIT_URL рд╕реЗрдЯ рдХрд░реЗрдВред рдпрд╣ рдкреИрдирдереЙрди рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП Git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА URL рд╣реИ рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИред


рд╣рдо рдЕрдВрдд рдореЗрдВ рдХреЗрд╡рд▓ SSH рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХрд╛ URL рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ, рдмрд┐рдирд╛ git clone рдФрд░ рдорд╢реАрди рдкрд░ рд╕рд╛рдЗрдЯ рдХрд╛ рдирд╛рдоред

рдУрд╣ред рдпрд╣ рд╣реЛ рдЪреБрдХрд╛ рд╣реИ, рдЕрдм рд╣рдо рдЕрдкрдиреА .gitlab-ci.yml рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХрд╛рд░реНрдп рдмрдирд╛рдПрдБ


рд╣рдо рд╢реБрд░реВ рдореЗрдВ GitLab CI рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░реЗрдВрдЧреЗ, рд╣рдордиреЗ рдкрд╣рд▓реЗ Git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рдЬреЛ рдХрд┐рдпрд╛ рдерд╛, рд╡рд╣ рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕ рдмрд╛рд░, рджреВрд╕рд░реЗ рджреВрд░рд╕реНрде рдЧреАрдЯ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдкреИрдирдереЙрди рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдЬреЛрдбрд╝реЗрдВ, рдФрд░ рдлрд┐рд░ рдЧрд┐рдЯрд▓реИрдм рд╕реЗ рдкреЗрдВрдерд┐рдпрди рдХреЛ рдХреЛрдб рднреЗрдЬреЗрдВред


рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, deploy рдЪрд░рдг рдФрд░ deploy рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ deploy:dev рдХрд╛рд░реНрдп , рдХреНрдпреЛрдВрдХрд┐ рд╣рдо Pantheon рдкрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рддреИрдирд╛рдд рдХрд░реЗрдВрдЧреЗред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, .gitlab-ci.yml рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:


 stages: - deploy before_script: # See https://docs.gitlab.com/ee/ci/ssh_keys/README.html - eval $(ssh-agent -s) - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null - mkdir -p $HOME/.ssh && echo "StrictHostKeyChecking no" >> "$HOME/.ssh/config" - git config --global user.email "$GITLAB_USER_EMAIL" - git config --global user.name "Gitlab CI" deploy:dev: stage: deploy environment: name: dev url: https://dev-$PANTHEON_SITE.pantheonsite.io/ script: - git remote add pantheon $PANTHEON_GIT_URL - git push pantheon master --force only: - master 

рдЪрд░ SSH_PRIVATE_KEY, PANTHEON_SITE рдФрд░ PANTHEON_GIT_URL рдкрд░рд┐рдЪрд┐рдд рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП - рд╣рдо рдкрд╣рд▓реЗ рдЗрди рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдЗрди рдЪрд░ рдХреЗ рд╕рд╛рде, рд╣рдо рдХрдИ рдмрд╛рд░ .gitlab-ci.yml рдХреЗ рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕реНрдерд╛рди рдкрд░ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред


рдЕрдВрдд рдореЗрдВ, .gitlab-ci.yml рдХреЛ GitLab рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ, рдХрдорд┐рдЯ рдХрд░реЗрдВ рдФрд░ .gitlab-ci.yml ред


рдЪреЗрдХ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ


рдЕрдЧрд░ рд╣рдордиреЗ рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд┐рдпрд╛, рддреЛ deploy:dev рдХрд╛рд░реНрдп GitLab CI / CD рдореЗрдВ рд╕рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ .gitlab-ci.yml рдХреЛ .gitlab-ci.yml рднреЗрдЬ рджреЗрдВрдЧреЗред рдЖрдЗрдП рджреЗрдЦрддреЗ рд╣реИрдВред





рд╣рдо рдкреИрдВрдерд┐рдпрди рдореЗрдВ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╢рд╛рдЦрд╛рдПрдБ рднреЗрдЬрддреЗ рд╣реИрдВ


рдпрд╣рд╛рдВ рд╣рдо рдореЗрд░реА рдкрд╕рдВрджреАрджрд╛ рдкреИрдирдереЙрди рд╕реБрд╡рд┐рдзрд╛ - рдорд▓реНрдЯреАрджреЗрд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдЬрд╣рд╛рдВ рдЖрдк рдЕрдиреБрд░реЛрдз рдкрд░ рдЧрд┐рдЯ рд╢рд╛рдЦрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрдирдереЙрди рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред


рдорд▓реНрдЯреАрджреЗрд╡ рддрдХ рдкрд╣реБрдВрдЪ рд╕реАрдорд┐рдд рд╣реИ , рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЕрдиреБрднрд╛рдЧ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИ ред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣реБрдВрдЪ рд╣реИ, рддреЛ рдЖрдк рдЧреАрддрд╛рд▓рд╛рдм рдпреЛрдЧреНрдпрддрд╛ рдЕрдиреБрд░реЛрдзреЛрдВ рд╕реЗ рдкрдВрдерд┐рдпрди рдкрд░ рдорд▓реНрдЯреАрджреЗрд╡ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рд╕реНрд╡рдд: рдирд┐рд░реНрдорд╛рдг рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдХреЛ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВред


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, git checkout -b multidev-support рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдПрдХ рдирдИ Git рд╢рд╛рдЦрд╛ рдмрдирд╛рдПрдВред рдЕрдм, рдлрд┐рд░ рд╕реЗ, рдХреБрдЫ .gitlab-ci.yml рдореЗрдВ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред


рдореБрдЭреЗ рдкреИрдВрдЯрд╣реЛрди рдкрд░реНрдпрд╛рд╡рд░рдг рдирд╛рдо рдореЗрдВ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рдкрд╕рдВрдж рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓рд╛ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз mr-1 , рджреВрд╕рд░рд╛ mr-2 , рдЖрджрд┐ред


рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдмрджрд▓ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдкреИрдирдерд┐рдпрди рд╢рд╛рдЦрд╛ рдХреЗ рдирд╛рдореЛрдВ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдкрд╣рдЪрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЧрд┐рдЯрд▓реИрдм рдкрд░, рдпрд╣ рд╕рд░рд▓ рд╣реИ - рдЖрдкрдХреЛ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред


рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо $CI_MERGE_REQUEST_IID рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдЗрдП, рдпрд╣ рд╕рдм рд╣рдо рд╡реИрд╢реНрд╡рд┐рдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рд╕рд╛рде рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╣рдордиреЗ рдкрд╣рд▓реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдерд╛, рдФрд░ рдПрдХ рдирдИ рддреИрдирд╛рддреА рдЬреЛрдбрд╝реЗрдВ: .gitlab-ci.yml рдХреЗ рдЕрдВрдд рдореЗрдВ .gitlab-ci.yml ред


 deploy:multidev: stage: deploy environment: name: multidev/mr-$CI_MERGE_REQUEST_IID url: https://mr-$CI_MERGE_REQUEST_IID-$PANTHEON_SITE.pantheonsite.io/ script: # Checkout the merge request source branch - git checkout $CI_COMMIT_REF_NAME # Add the Pantheon git repository as an additional remote - git remote add pantheon $PANTHEON_GIT_URL # Push the merge request source branch to Pantheon - git push pantheon $CI_COMMIT_REF_NAME:mr-$CI_MERGE_REQUEST_IID --force only: - merge_requests 

рдпрд╣ рд╣рдорд╛рд░реА deploy:dev рд╕рдорд╛рди рд╣реЛрдЧрд╛ deploy:dev рдХрд╛рд░реНрдп, рдХреЗрд╡рд▓ рд╢рд╛рдЦрд╛ рдкрдВрдерд┐рдпрди рдХреЛ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ, рди рдХрд┐ master рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред


рд╣рдордиреЗ рдЕрджреНрдпрддрди .gitlab-ci.yml рдЬреЛрдбрд╝рд╛ рдФрд░ рдкреНрд░рддрд┐рдмрджреНрдз рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдЕрдм GitLab рдХреЗ рд╕рд╛рде рдПрдХ рдирдИ рд╢рд╛рдЦрд╛ рдХреЛ git push -u origin multidev-support original git push -u origin multidev-support рднреЗрдЬреЗрдВред


рдЕрдм Create рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ multidev-support рд╢рд╛рдЦрд╛ рд╕реЗ рдПрдХ рдирдпрд╛ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдПрдБ ред



рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдпрд╣ рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╕реАрдЖрдИ / рд╕реАрдбреА рдХреЛ рдХреИрд╕реЗ deploy:multidev ред



рджреЗрдЦреЗрдВ - рдПрдХ рдирдИ рд╢рд╛рдЦрд╛ рдкрдВрдерд┐рдпрди рдХреЛ рднреЗрдЬреА рдЧрдИ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдо рдкреИрдВрдЯрд╣реЛрди рд╕рд╛рдЗрдЯ рдХреЗ рдбреИрд╢рдмреЛрд░реНрдб рдкрд░ рдорд▓реНрдЯреАрдбреЗрд╡ рд╕реЗрдХреНрд╢рди рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рд╡рд╣рд╛рдВ рдирдпрд╛ рд╡рд╛рддрд╛рд╡рд░рдг рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред



Git Branches рдЕрдиреБрднрд╛рдЧ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред



рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдорд╛рд░реА mr-1 рд╢рд╛рдЦрд╛ рдкрдВрдерд┐рдпрди рдкрд╣реБрдВрдЪ рдЧрдИред mr-1 рд╢рд╛рдЦрд╛ рд╕реЗ рдПрдХ рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛рдПрдБред



рд╣рдордиреЗ рдПрдХ рдмрд╣реБ-рд╕реНрддрд░реАрдп рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛рдпрд╛, рдФрд░ рдЕрдм GitLab рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ рдФрд░ рд╕рдВрдЪрд╛рд▓рди> рд╡рд╛рддрд╛рд╡рд░рдг рдЕрдиреБрднрд╛рдЧ рджреЗрдЦреЗрдВред рд╣рдо dev рдФрд░ mr-1 рд▓рд┐рдП рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ рджреЗрдЦреЗрдВрдЧреЗред


рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдордиреЗ рдПрдХ environment рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдирд╛рдо рдЬреЛрдбрд╝рд╛ рдФрд░ CI / CD рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП url рдЬреЛрдбрд╝рд╛ред рдпрджрд┐ рд╣рдо рдЦреБрд▓реЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдЖрдЗрдХрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо Pantheon multidev рдкрд░реНрдпрд╛рд╡рд░рдг URL рдкрд░ рдЬрд╛рдПрдВрдЧреЗред


рдорд▓реНрдЯреАрджреЗрд╡ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░реЗрдВ


рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдЖрдк рдпрд╣рд╛рдВ рд░реБрдХ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБ-рд╕реНрддрд░реАрдп рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╣реЛ рд╕рдХрддреА рд╣реИред


Pantheon рдореЗрдВ рдПрдХ рдЯрд░реНрдорд┐рдирд╕ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЯреВрд▓ рд╣реИ, рдЬрд╣рд╛рдВ рдЖрдк рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд╕рд╛рде рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЯрд░реНрдорд┐рдирд╕ рдореЗрдВ, рдЖрдк рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ рдорд▓реНрдЯреАрд╡реЗрдб рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ - рдЧрд┐рдЯрд▓реИрдм рд╕реАрдЖрдИ рдХреЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ред


рд╣рдореЗрдВ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдЪрд╛рд╣рд┐рдПред git checkout -b auto-multidev-creation рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдирдИ рд╢рд╛рдЦрд╛ рдмрдирд╛рдПрдБред


рдЧрд┐рдЯрд▓реИрдм рд╕реАрдЖрдИ / рд╕реАрдбреА рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдЯрд░реНрдорд┐рдирд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЯрд░реНрдорд┐рдирд╕ рдореЗрдВ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдорд╢реАрди рдЯреЛрдХрди рдФрд░ рдЯрд░реНрдорд┐рдирд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдХрдВрдЯреЗрдирд░ рдЫрд╡рд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред


рдПрдХ рдкреИрдиреНрдерд┐рдпрди рдорд╢реАрди рдЯреЛрдХрди рдмрдирд╛рдПрдВ , рдЗрд╕реЗ рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕реНрдерд╛рди рдкрд░ рд╕рд╣реЗрдЬреЗрдВ, рдФрд░ рдЗрд╕реЗ GTHLab рдореЗрдВ PANTHEON_MACHINE_TOKEN рдирд╛рдо рдХреЗ рд╕рд╛рде рд╡реИрд╢реНрд╡рд┐рдХ рдкрд░рд┐рд╡реЗрд╢ рдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред


рдпрджрд┐ рдЖрдк рднреВрд▓ рдЧрдП рд╣реИрдВ рдХрд┐ GitLab рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреИрд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдЙрд╕ рд╕реНрдерд╛рди рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдБ рдЬрд╣рд╛рдБ рд╣рдордиреЗ PANTHEON_SITE рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдерд╛ред

рдЯрд░реНрдорд┐рдирд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдбреЙрдХрдлреЗрд░рд╛рдЗрд▓ рдмрдирд╛рдПрдВ


рдпрджрд┐ рдЖрдк Docker рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ Dockerfile рддрд░рд╣ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдореЗрд░реА registry.gitlab.com/ataylorme/pantheon-gitlab-blog-demo:latest рд▓реЗ рдЬрд╛рдПрдВред


GitLab рдХреЗ рдкрд╛рд╕ рдПрдХ рдХрдВрдЯреЗрдирд░ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рд╣реИ рдЬрд╣рд╛рдБ рдЖрдк рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП Dockerfile рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╣реЛрд╕реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЪрд▓реЛ рдкреЗрдВрдерд┐рди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд░реНрдорд┐рдирд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдбреЙрдХрдлреЗрд░реАрд▓ рдмрдирд╛рддреЗ рд╣реИрдВред


рдЯрд░реНрдорд┐рдирд╕ PHP рдореЗрдВ рдПрдХ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЯреВрд▓ рд╣реИ, рддреЛ рдЖрдЗрдП PHP рдЗрдореЗрдЬ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред рдореИрдВ рдХрдореНрдкреЛрдЬрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЯрд░реНрдорд┐рдирд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдбреЙрдХрд░ рдХрдВрдкреЛрдЬрд░ рдЫрд╡рд┐ рд▓реЗ рдЬрд╛рдКрдВрдЧрд╛ ред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдиреАрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ Dockerfile рдмрдирд╛рдПрдВ:


 # Use the official Composer image as a parent image FROM composer:1.8 # Update/upgrade apk RUN apk update RUN apk upgrade # Make the Terminus directory RUN mkdir -p /usr/local/share/terminus # Install Terminus 2.x with Composer RUN /usr/bin/env COMPOSER_BIN_DIR=/usr/local/bin composer -n --working-dir=/usr/local/share/terminus require pantheon-systems/terminus:"^2" 

Dockerfile рд╕реЗ рдЫрд╡рд┐ рдПрдХрддреНрд░ рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ GitLab рдкрд░ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрдВрдЯреЗрдирд░ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдмрд┐рд▓реНрдб рдФрд░ рдкреБрд╢ рдЗрдореЗрдЬ рд╕реЗрдХреНрд╢рди рд╕реЗ рдЪрд┐рддреНрд░ рднреЗрдЬрдиреЗ рдФрд░ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВред


GitLab рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рд╕реЗрдХреНрд╢рди рдЦреЛрд▓реЗрдВред рдЕрдЧрд░ рд╕рдм рдХреБрдЫ рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╣реБрдЖ, рддреЛ рд╣рдорд╛рд░реА рдЫрд╡рд┐ рдмрди рдЬрд╛рдПрдЧреАред рдЫрд╡рд┐ рдЯреИрдЧ рдХреЗ рд▓рд┐рдВрдХ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░реЗрдВ - рд╣рдореЗрдВ рдЗрд╕реЗ .gitlab-ci.yml ред



deploy:multidev рдореЗрдВ script рдЕрдиреБрднрд╛рдЧ deploy:multidev рдмрдврд╝рдиреЗ рд▓рдЧрддреЗ рд╣реИрдВ, рддреЛ рдЪрд▓рд┐рдП рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдПрдХ рдирдпрд╛ private/multidev-deploy.sh: рдмрдирд╛рдПрдБ private/multidev-deploy.sh:


 #!/bin/bash # Store the mr- environment name export PANTHEON_ENV=mr-$CI_MERGE_REQUEST_IID # Authenticate with Terminus terminus auth:login --machine-token=$PANTHEON_MACHINE_TOKEN # Checkout the merge request source branch git checkout $CI_COMMIT_REF_NAME # Add the Pantheon Git repository as an additional remote git remote add pantheon $PANTHEON_GIT_URL # Push the merge request source branch to Pantheon git push pantheon $CI_COMMIT_REF_NAME:$PANTHEON_ENV --force # Create a function for determining if a multidev exists TERMINUS_DOES_MULTIDEV_EXIST() { # Stash a list of Pantheon multidev environments PANTHEON_MULTIDEV_LIST="$(terminus multidev:list ${PANTHEON_SITE} --format=list --field=id)" while read -r multiDev; do if [[ "${multiDev}" == "$1" ]] then return 0; fi done <<< "$PANTHEON_MULTIDEV_LIST" return 1; } # If the mutltidev doesn't exist if ! TERMINUS_DOES_MULTIDEV_EXIST $PANTHEON_ENV then # Create it with Terminus echo "No multidev for $PANTHEON_ENV found, creating one..." terminus multidev:create $PANTHEON_SITE.dev $PANTHEON_ENV else echo "The multidev $PANTHEON_ENV already exists, skipping creating it..." fi 

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХ рдирд┐рдЬреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ рдФрд░ рдкреИрдирдереЙрди рдкрд░ рд╡реЗрдм рдПрдХреНрд╕реЗрд╕ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддреА рд╣реИ ред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдмрд╣реБрджреЗрд╡ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИред рдЪрд▓рд┐рдП рдЕрдм deploy:multidev рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ deploy:multidev рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП .gitlab-ci.yml рдлрд╝рд╛рдЗрд▓ deploy:multidev :


 deploy:multidev: stage: deploy environment: name: multidev/mr-$CI_MERGE_REQUEST_IID url: https://mr-$CI_MERGE_REQUEST_IID-$PANTHEON_SITE.pantheonsite.io/ script: # Run the multidev deploy script - "/bin/bash ./private/multidev-deploy.sh" only: - merge_requests 

рд╣рдореЗрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдп рдирд┐рд░реНрдорд┐рдд рдХрд╕реНрдЯрдо рдЫрд╡рд┐ рдореЗрдВ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рд░рдЬрд┐рд╕реНрдЯреНрд░реА URLред .gitlab-ci.yml рд╕рд╛рде рдкрд░рд┐рднрд╛рд╖рд╛ image .gitlab-ci.yml ред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдирд┐рдореНрди .gitlab-ci.yml :


 image: registry.gitlab.com/ataylorme/pantheon-gitlab-blog-demo:latest stages: - deploy before_script: # See https://docs.gitlab.com/ee/ci/ssh_keys/README.html - eval $(ssh-agent -s) - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null - mkdir -p $HOME/.ssh && echo "StrictHostKeyChecking no" >> "$HOME/.ssh/config" - git config --global user.email "$GITLAB_USER_EMAIL" - git config --global user.name "Gitlab CI" deploy:dev: stage: deploy environment: name: dev url: https://dev-$PANTHEON_SITE.pantheonsite.io/ script: - git remote add pantheon $PANTHEON_GIT_URL - git push pantheon master --force only: - master deploy:multidev: stage: deploy environment: name: multidev/mr-$CI_MERGE_REQUEST_IID url: https://mr-$CI_MERGE_REQUEST_IID-$PANTHEON_SITE.pantheonsite.io/ script: # Run the multidev deploy script - "/bin/bash ./private/multidev-deploy.sh" only: - merge_requests 

private/multidev-deploy.sh рдФрд░ .gitlab-ci.yml рдЬреЛрдбрд╝реЗрдВ, рдХрдорд┐рдЯ рдХрд░реЗрдВ рдФрд░ рднреЗрдЬреЗрдВред рдЕрдм рд╡рд╛рдкрд╕ GitLab рдкрд░ рдЬрд╛рдПрдВ рдФрд░ CI / CD рдХрд╛рд░реНрдп рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВред рдзреИрд░реНрдп рд░рдЦреЗрдВ: рдорд▓реНрдЯреАрджреЗрд╡ рдореЗрдВ рдХрдИ рдорд┐рдирдЯ рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВред


рдлрд┐рд░ рд╣рдо рдкрдВрдерд┐рдпрди рдкрд░ рдмрд╣реБрджреЗрд╡ рд╕реВрдЪреА рджреЗрдЦрддреЗ рд╣реИрдВред рдЕрд░реЗ рдЪрдорддреНрдХрд╛рд░! рдорд▓реНрдЯреАрджреЗрд╡ mr-2 рдкрд░реНрдпрд╛рд╡рд░рдг рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдпрд╣рд╛рдВ рд╣реИред



рдирд┐рд╖реНрдХрд░реНрд╖


рдЬрдм рд╣рдордиреЗ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдЦреЛрд▓рдиреЗ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реА рдЯреАрдо рдиреЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдордЬрд╝рд╛ рдЕрд░реНрдЬрд┐рдд рдХрд┐рдпрд╛ред


рд╢рдХреНрддрд┐рд╢рд╛рд▓реА GitLab рдФрд░ Pantheon рдЯреВрд▓ рдХреЗ рд╕рд╛рде, рдЖрдк GitLab рдХреЛ Pantheon рд╕реЗ рдЕрдкрдиреЗ рдЖрдк рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдПрдХ рдмрд╛рд░ рдЬрдм рд╣рдо GitLab CI / CD рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХрд╣рд╛рдБ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдВрдЧреЗред рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ:



рдЖрдк рдЧрд┐рдЯрд▓реИрдм, рдкреИрдирдереЙрди рдФрд░ рдСрдЯреЛрдореЗрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВ, рд▓рд┐рдЦреЗрдВред


PS рдХреНрдпрд╛ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЯрд░реНрдорд┐рдирд╕, рдкреИрдирдерд┐рдпрди рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдЯреВрд▓ рдХреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ?


рд╣рдо рдкреЗрдВрдерд┐рдпрди рдиреЗ рдЧреАрддрд╛рд▓реИрдм-рд╕рдХреНрд╖рдо рдЯрд░реНрдорд┐рдирд╕ рдмрд┐рд▓реНрдб рдЯреВрд▓реНрд╕ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рдВрд╕реНрдХрд░рдг 2 рдкрд░ рдХрдбрд╝реА рдореЗрд╣рдирдд рдХреАред рдпрджрд┐ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдЫреЗрдбрд╝рдЫрд╛рдбрд╝ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕ рдкреНрд▓рдЧрдЗрди рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рд╣рдореЗрдВ рдмреАрдЯрд╛ v2 рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВред рдЯрд░реНрдорд┐рдирд╕ build:project:create рдХрдорд╛рдВрдб build:project:create , рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдкреИрдирдерд┐рдпрди рдЯреЛрдХрди рдФрд░ рдЧрд┐рдЯрд▓реИрдм рдЯреЛрдХрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╡рд╣ рд╕рдВрдЧреАрддрдХрд╛рд░ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рддреИрдирд╛рдд рдХрд░реЗрдЧреА, рдЧреАрддрд╛рд▓рд╛рдм рдореЗрдВ рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛, рдирдИ рдкреИрдирдереЙрди рд╕рд╛рдЗрдЯ, рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдФрд░ рдПрд╕рдПрд╕рдПрдЪ рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрдиреНрд╣реЗрдВ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдЧреАред


рд▓реЗрдЦрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ


рдПрдВрдбреНрд░рдпреВ рдЯреЗрд▓рд░ Pantheon рдореЗрдВ рдбреЗрд╡рд▓рдкрд░ рдЙрдкрдХрд░рдг рдмрдирд╛рддрд╛ рд╣реИред

Source: https://habr.com/ru/post/hi447966/


All Articles