เดตเต†เตผเดซเต เด•เดณเด•เตเดŸเดฑเดฟเดฒเต† เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดŸเดพเด—เดฟเด‚เด—เต: เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต, เดŽเด™เตเด™เดจเต†เดฏเดพเดฃเต เด‡เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเต?

เดตเต†เตผเดซเต เด•เดณเด•เตเดŸเดฑเดฟเดฒเต† เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดŸเดพเด—เดฟเด‚เด—เต: เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต, เดŽเด™เตเด™เดจเต†เดฏเดพเดฃเต เด‡เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเต?

เดตเต†เตผเดซเต Kubernetes-เดฒเต‡เด•เตเด•เต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดฎเตเดณเตเดณ เดžเด™เตเด™เดณเตเดŸเต† เด“เดชเตเดชเตบ เดธเต‹เดดเตโ€Œเดธเต GitOps CLI เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟเดฏเดพเดฃเต. IN เดฑเดฟเดฒเต€เดธเต v1.1 เด‡เดฎเต‡เดœเต เด•เดณเด•เตเดŸเดฑเดฟเตฝ เด’เดฐเต เดชเตเดคเดฟเดฏ เดซเต€เดšเตเดšเตผ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเดšเตเดšเต: เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต เดšเดฟเดคเตเดฐเด™เตเด™เตพ เดŸเดพเด—เตเดšเต†เดฏเตเดฏเตเดจเตเดจเต เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดŸเดพเด—เดฟเด‚เด—เต. เด‡เดคเตเดตเดฐเต†, Git เดŸเดพเด—เต, Git เดฌเตเดฐเดพเดžเตเดšเต เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ Git เด•เดฎเตเดฎเดฟเดฑเตเดฑเต เดŽเดจเตเดจเดฟเดต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดกเต‹เด•เตเด•เตผ เด‡เดฎเต‡เดœเตเด•เตพ เดŸเดพเด—เตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดตเต†เตผเดซเดฟเดฒเต† เดธเดพเดงเดพเดฐเดฃ เดŸเดพเด—เดฟเด‚เด—เต เดธเตเด•เต€เดฎเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดŸเดฟเดฐเตเดจเตเดจเต. เดŽเดจเตเดจเดพเตฝ เดˆ เดธเตเด•เต€เดฎเตเด•เตพเด•เตเด•เต†เดฒเตเดฒเดพเด‚ เดชเต‹เดฐเดพเดฏเตเดฎเด•เดณเตเดฃเตเดŸเต, เด…เดคเต เดชเตเดคเดฟเดฏ เดŸเดพเด—เดฟเด‚เด—เต เดคเดจเตเดคเตเดฐเดคเตเดคเดฟเดฒเต‚เดŸเต† เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเด‚. เด…เดคเดฟเดจเต† เด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดตเดฟเดถเดฆเดพเด‚เดถเด™เตเด™เดณเตเด‚ เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เด‡เดคเต เดตเดณเดฐเต† เดจเดฒเตเดฒเดคเดพเดฃเต.

เด’เดฐเต Git เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด’เดฐเต เด•เต‚เดŸเตเดŸเด‚ เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเตเด•เตพ เดชเตเดฑเดคเตเดคเดฟเดฑเด•เตเด•เตเดจเตเดจเต

เด’เดฐเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเต† เด•เต‚เดŸเตเดคเดฒเต‹ เด•เตเดฑเดตเต‹ เดธเตเดตเดคเดจเตเดคเตเดฐเดฎเดพเดฏ เดธเต‡เดตเดจเด™เตเด™เดณเดพเดฏเดฟ เดตเดฟเดญเดœเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เด’เดฐเต เดธเดพเดนเดšเดฐเตเดฏเด‚ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเต. เดˆ เดธเต‡เดตเดจเด™เตเด™เดณเตเดŸเต† เดฑเดฟเดฒเต€เดธเตเด•เตพ เดธเตเดตเดคเดจเตเดคเตเดฐเดฎเดพเดฏเดฟ เดธเด‚เดญเดตเดฟเด•เตเด•เดพเด‚: เด’เดจเตเดจเต‹ เด…เดคเดฟเดฒเดงเดฟเด•เดฎเต‹ เดธเต‡เดตเดจเด™เตเด™เตพ เด’เดฐเต เดธเดฎเดฏเด‚ เดฑเดฟเดฒเต€เดธเต เดšเต†เดฏเตเดฏเดพเด‚, เดฌเดพเด•เตเด•เดฟเดฏเตเดณเตเดณเดต เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตŠเดจเตเดจเตเด‚ เด•เต‚เดŸเดพเดคเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเต เดคเตเดŸเดฐเดฃเด‚. เดŽเดจเตเดจเดพเตฝ เด•เต‹เดกเต เดธเด‚เดญเดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต†เดฏเตเด‚ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เดฎเดพเดจเต‡เดœเตเดฎเต†เดจเตเดฑเดฟเดจเตเดฑเต†เดฏเตเด‚ เดตเต€เด•เตเดทเดฃเด•เต‹เดฃเดฟเตฝ เดจเดฟเดจเตเดจเต, เด…เดคเตเดคเดฐเด‚ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดธเต‡เดตเดจเด™เตเด™เตพ เด’เดฐเตŠเดฑเตเดฑ เดถเต‡เด–เดฐเดคเตเดคเดฟเตฝ เดธเต‚เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเดคเต เด•เต‚เดŸเตเดคเตฝ เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฃเต.

เดธเต‡เดตเดจเด™เตเด™เตพ เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดธเตเดตเดคเดจเตเดคเตเดฐเดตเตเด‚ เด’เดฐเตŠเดฑเตเดฑ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดฎเดฟเดฒเตเดฒเดพเดคเตเดคเดคเตเดฎเดพเดฏ เดธเดพเดนเดšเดฐเตเดฏเด™เตเด™เดณเตเดฃเตเดŸเต. เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด…เดต เดชเตเดฐเดคเตเดฏเต‡เด• เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเตเด•เดณเดฟเตฝ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด“เดฐเต‹ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเตเด•เดณเดฟเดฒเตเด‚ เดชเตเดฐเดคเตเดฏเต‡เด• เดธเดฟเด/เดธเดฟเดกเดฟ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เดณเดฟเดฒเต‚เดŸเต† เด…เดตเดฏเตเดŸเต† เดฑเดฟเดฒเต€เดธเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚.

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เดกเดตเดฒเดชเตเดชเตผเดฎเดพเตผ เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เด’เดฐเตŠเดฑเตเดฑ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเต† เดจเดฟเดฐเดตเดงเดฟ เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเตเด•เดณเดพเดฏเดฟ เดตเดฟเดญเดœเดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เด“เดฐเต‹เดจเตเดจเดฟเดจเตเด‚ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดถเต‡เด–เดฐเดฃเดตเตเด‚ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเตเด‚ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏ เด’เดฐเต เด“เดตเตผเด•เดฟเดฒเตเดฒเดพเดฃเต. เดˆ เดธเดพเดนเดšเดฐเตเดฏเดฎเดพเดฃเต เด•เต‚เดŸเตเดคเตฝ เดšเตผเดšเตเดšเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต: เด…เดคเตเดคเดฐเด‚ เดจเดฟเดฐเดตเดงเดฟ เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเตเด•เตพ เด’เดฐเต เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเตฝ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† CI/CD-เดฏเดฟเดฒเต† เด’เดฐเตŠเดฑเตเดฑ เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเดฟเดฒเต‚เดŸเต† เดฑเดฟเดฒเต€เดธเตเด•เตพ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเต.

Git เดฌเตเดฐเดพเดžเตเดšเตเด‚ Git เดŸเดพเด—เตเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŸเดพเด—เดฟเด‚เด—เต

เดเดฑเตเดฑเดตเตเด‚ เดธเดพเดงเดพเดฐเดฃเดฎเดพเดฏ เดŸเดพเด—เดฟเด‚เด—เต เดคเดจเตเดคเตเดฐเดฎเดพเดฃเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต†เดจเตเดจเต เดจเดฎเตเด•เตเด•เต เดชเดฑเดฏเดพเด‚ - เดŸเดพเด—เต-เด“-เดฌเตเดฐเดพเดžเตเดšเต. Git เดถเดพเด–เด•เตพเด•เตเด•เดพเดฏเดฟ, เดถเดพเด–เดฏเตเดŸเต† เดชเต‡เดฐเดฟเดจเตŠเดชเตเดชเด‚ เดšเดฟเดคเตเดฐเด™เตเด™เตพ เดŸเดพเด—เต เดšเต†เดฏเตโ€Œเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด’เดฐเต เดฌเตเดฐเดพเดžเตเดšเดฟเดจเต เด’เดฐเต เดธเดฎเดฏเด‚ เด† เดถเดพเด–เดฏเตเดŸเต† เดชเต‡เดฐเดฟเตฝ เด’เดฐเต เดชเตเดฐเดธเดฟเดฆเตเดงเต€เด•เดฐเดฟเดšเตเดš เดšเดฟเดคเตเดฐเด‚ เดฎเดพเดคเตเดฐเดฎเต‡ เด‰เดฃเตเดŸเดพเด•เต‚. Git เดŸเดพเด—เตเด•เตพเด•เตเด•เดพเดฏเดฟ, เดŸเดพเด—เต เดจเดพเดฎเดคเตเดคเดฟเดจเดจเตเดธเดฐเดฟเดšเตเดšเต เดšเดฟเดคเตเดฐเด™เตเด™เตพ เดŸเดพเด—เต เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เด’เดฐเต เดชเตเดคเดฟเดฏ Git เดŸเดพเด—เต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดฎเตเดชเต‹เตพ-เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด’เดฐเต เดชเตเดคเดฟเดฏ เดชเดคเดฟเดชเตเดชเต เดชเตเดฑเดคเตเดคเดฟเดฑเด™เตเด™เตเดฎเตเดชเต‹เตพ-เดกเต‹เด•เตเด•เตผ เดฐเดœเดฟเดธเตเดŸเตเดฐเดฟเดฏเดฟเดฒเต† เดŽเดฒเตเดฒเดพ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เด‡เดฎเต‡เดœเตเด•เตพเด•เตเด•เตเดฎเดพเดฏเดฟ เด’เดฐเต เดชเตเดคเดฟเดฏ เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเด‚:

  • myregistry.org/myproject/frontend:v1.1.10
  • myregistry.org/myproject/myservice1:v1.1.10
  • myregistry.org/myproject/myservice2:v1.1.10
  • myregistry.org/myproject/myservice3:v1.1.10
  • myregistry.org/myproject/myservice4:v1.1.10
  • myregistry.org/myproject/myservice5:v1.1.10
  • myregistry.org/myproject/database:v1.1.10

เดˆ เดชเตเดคเดฟเดฏ เดšเดฟเดคเตเดฐ เดจเดพเดฎเด™เตเด™เตพ เดนเต†เตฝเด‚ เดŸเต†เด‚เดชเตเดฒเต‡เดฑเตเดฑเตเด•เดณเดฟเดฒเต‚เดŸเต† เด•เตเดฌเตผเดจเต†เดฑเตเดฑเดธเต เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเดฟเดฒเต‡เด•เตเด•เต เด•เตˆเดฎเดพเดฑเตเดจเตเดจเต. เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดตเดฟเดจเตเดฏเดพเดธเด‚ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ werf deploy เดซเต€เตฝเดกเต เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเด•เดฏเดพเดฃเต image Kubernetes เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดฎเดพเดจเดฟเดซเต†เดธเตโ€Œเดฑเตเดฑเตเดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด‡เดฎเต‡เดœเดฟเตปเตเดฑเต† เดชเต‡เดฐเต เดฎเดพเดฑเตเดฑเดฟเดฏเดคเดฟเดจเดพเตฝ เด…เดจเตเดฌเดจเตเดง เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดชเตเดฐเดถเตเดจเด‚: เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ, เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเตเดฑเต† เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เดฎเตเดฎเตเดชเดคเตเดคเต† เดฑเต‹เดณเต—เดŸเตเดŸเดฟเดจเต เดถเต‡เดทเด‚ (เดœเดฟเดฑเตเดฑเต เดŸเดพเด—เต) เดฎเดพเดฑเดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดŽเดจเตเดจเดพเตฝ เด…เดคเดฟเดจเตเดฑเต† เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เต เดฎเดพเดคเตเดฐเด‚, เด‡เดคเต เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเต เด…เดงเดฟเด• เดˆ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดจเตเดธเดฐเดฟเดšเตเดšเต, เด•เตเดฑเดšเตเดšเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเดฏ เดธเดฎเดฏเด‚ เดธเดพเดงเตเดฏเดฎเดพเดฃเต. เดˆ เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฏเดฅเดพเตผเดคเตเดฅ เด•เดพเดฐเดฃเด‚ เด‡เดฒเตเดฒเต†เด™เตเด•เดฟเดฒเตเด‚.

เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เดจเดฟเดฒเดตเดฟเดฒเต† เดŸเดพเด—เดฟเด‚เด—เต เดธเตเด•เต€เดฎเดฟเดจเตŠเดชเตเดชเด‚ เดจเดฟเดฐเดตเดงเดฟ เดตเตเดฏเดคเตเดฏเดธเตเดค เดœเดฟเดฑเตเดฑเต เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเด•เตพ เดตเต‡เดฒเดฟเดฏเดฟเดฑเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต, เด•เต‚เดŸเดพเดคเต† เดˆ เดจเดฟเดฐเดตเดงเดฟ เดถเต‡เด–เดฐเดฃเด™เตเด™เดณเตเดŸเต† เดฑเต‹เตพเด”เดŸเตเดŸเต เดธเด‚เด˜เดŸเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เดชเตเดฐเดถเตเดจเด‚ เด‰เดฏเตผเดจเตเดจเตเดตเดฐเตเดจเตเดจเต. เดชเตŠเดคเตเดตเต‡, เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดธเตเด•เต€เด‚ เด…เดฎเดฟเดคเดญเดพเดฐเดตเตเด‚ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดตเตเดฎเดพเดฏเดฟ เดฎเดพเดฑเตเดจเตเดจเต. เด…เดจเดพเดตเดถเตเดฏเดฎเดพเดฏ เดชเตเดจเดฐเดพเดฐเด‚เดญเด™เตเด™เตพ เด‰เดฃเตเดŸเดพเด•เดพเดคเดฟเดฐเดฟเด•เตเด•เดพเตป เดจเดฟเดฐเดตเดงเดฟ เดธเต‡เดตเดจเด™เตเด™เตพ เด’เดฐเต เดถเต‡เด–เดฐเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดธเด‚เดฏเต‹เดœเดฟเดชเตเดชเดฟเดšเตเดšเต เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต.

เดœเดฟเดฑเตเดฑเต เด•เดฎเตเดฎเดฟเดฑเตเดฑเดฟเดจเตเดฑเต† เดŸเดพเด—เดฟเด‚เด—เต

Git เด•เดฎเดฟเดฑเตเดฑเตเด•เดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เด’เดฐเต เดŸเดพเด—เดฟเด‚เด—เต เดคเดจเตเดคเตเดฐเดตเตเด‚ werf-เดจเตเดฃเตเดŸเต.

Git-commit เดŽเดจเตเดจเดคเต Git เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเดฒเต† เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เด’เดฐเต เดเดกเดจเตเดฑเดฟเดซเดฏเดฑเดพเดฃเต, เด…เดคเต Git เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเดฒเต† เดซเดฏเดฒเตเด•เดณเตเดŸเต† เดŽเดกเดฟเดฑเตเดฑเต เดšเดฐเดฟเดคเตเดฐเดคเตเดคเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเดจเดพเตฝ เดกเต‹เด•เตเด•เตผ เดฐเดœเดฟเดธเตเดŸเตเดฐเดฟเดฏเดฟเตฝ เด‡เดฎเต‡เดœเตเด•เตพ เดŸเดพเด—เตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดฏเตเด•เตเดคเดฟเดธเดนเดฎเดพเดฃเต†เดจเตเดจเต เดคเต‹เดจเตเดจเตเดจเตเดจเต.

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, Git เด•เดฎเตเดฎเดฟเดฑเตเดฑเดฟเดจเตเดฑเต† เดŸเดพเด—เดฟเด‚เด—เดฟเดจเต Git เดถเดพเด–เด•เดณเต‹ Git เดŸเดพเด—เตเด•เดณเต‹ เดŸเดพเด—เตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เดธเดฎเดพเดจเดฎเดพเดฏ เดฆเต‹เดทเด™เตเด™เดณเตเดฃเตเดŸเต:

  • เดซเดฏเดฒเตเด•เดณเตŠเดจเตเดจเตเด‚ เดฎเดพเดฑเตเดฑเดพเดคเตเดค เด’เดฐเต เดถเต‚เดจเตเดฏเดฎเดพเดฏ เด•เดฎเตเดฎเดฟเดฑเตเดฑเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚, เดŽเดจเตเดจเดพเตฝ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตปเตเดฑเต† เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เต เดฎเดพเดฑเตเดฑเดชเตเดชเต†เดŸเตเด‚.
  • เดซเดฏเดฒเตเด•เตพ เดฎเดพเดฑเตเดฑเดพเดคเตเดค เด’เดฐเต เดฒเดฏเดจ เด•เดฎเตเดฎเดฟเดฑเตเดฑเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚, เดŽเดจเตเดจเดพเตฝ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตปเตเดฑเต† เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เต เดฎเดพเดฑเตเดฑเดชเตเดชเต†เดŸเตเด‚.
  • เด‡เดฎเต‡เดœเดฟเดฒเต‡เด•เตเด•เต เด‡เดฑเด•เตเด•เตเดฎเดคเดฟ เดšเต†เดฏเตเดฏเดพเดคเตเดค Git-เดฒเต† เดซเดฏเดฒเตเด•เตพ เดฎเดพเดฑเตเดฑเตเดจเตเดจ เด’เดฐเต เดชเตเดฐเดคเดฟเดฌเดฆเตเดงเดค เด‰เดฃเตเดŸเดพเด•เตเด•เดพเด‚, เด•เต‚เดŸเดพเดคเต† เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตปเตเดฑเต† เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เต เดตเต€เดฃเตเดŸเตเด‚ เดฎเดพเดฑเตเดฑเดชเตเดชเต†เดŸเตเด‚.

Git เดฌเตเดฐเดพเดžเตเดšเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เดŸเดพเด—เตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเตเดฑเต† เดชเดคเดฟเดชเตเดชเดฟเดจเต† เดชเตเดฐเดคเดฟเดซเดฒเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ

Git เดถเดพเด–เด•เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เดŸเดพเด—เดฟเด‚เด—เต เดคเดจเตเดคเตเดฐเดตเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดฎเดฑเตเดฑเตŠเดฐเต เดชเตเดฐเดถเตเดจเดฎเตเดฃเตเดŸเต.

เด† เดถเดพเด–เดฏเดฟเดฒเต† เด•เดฎเตเดฎเดฟเดฑเตเดฑเตเด•เตพ เด•เดพเดฒเด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เด•เตเดฐเดฎเดพเดจเตเด—เดคเดฎเดพเดฏเดฟ เดถเต‡เด–เดฐเดฟเด•เตเด•เตเดจเตเดจเดฟเดŸเดคเตเดคเต‹เดณเด‚ เด•เดพเดฒเด‚ เดฌเตเดฐเดพเดžเตเดšเต เดจเดพเดฎเด‚ เดŸเดพเด—เตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต.

เดจเดฟเดฒเดตเดฟเดฒเต† เดธเตโ€Œเด•เต€เดฎเดฟเตฝ เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดถเดพเด–เดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดชเดดเดฏ เด•เดฎเตเดฎเดฟเดฑเตเดฑเต เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เดฟเดฏเดพเตฝ, เดชเดดเดฏ เด•เดฎเตเดฎเดฟเดฑเตเดฑเดฟเดจเดพเดฏเดฟ เด‡เดฎเต‡เดœเดฟเดจเตเดฑเต† เดชเตเดคเตเดคเดพเดฏเดฟ เดจเดฟเตผเดฎเตเดฎเดฟเดšเตเดš เดชเดคเดฟเดชเตเดชเดฟเดจเตŠเดชเตเดชเด‚ เด…เดจเตเดฌเดจเตเดง เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดตเต†เตผเดซเต เดšเดฟเดคเตเดฐเด‚ เดตเต€เดฃเตเดŸเตเด‚ เดŽเดดเตเดคเตเด‚. เด‡เดจเดฟ เดฎเตเดคเตฝ เดˆ เดŸเดพเด—เต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดตเดฟเดจเตเดฏเดพเดธเด™เตเด™เตพ เดชเต‹เดกเตเด•เตพ เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเตเดฑเต† เดฎเดฑเตเดฑเตŠเดฐเต เดชเดคเดฟเดชเตเดชเต เดตเดฒเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด…เดชเด•เดŸเดธเดพเดงเตเดฏเดคเดฏเตเดฃเตเดŸเต, เด…เดคเดฟเดจเตเดฑเต† เดซเดฒเดฎเดพเดฏเดฟ เดžเด™เตเด™เดณเตเดŸเต† เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเต CI เดธเดฟเดธเตเดฑเตเดฑเดตเตเดฎเดพเดฏเตเดณเตเดณ เดฌเดจเตเดงเด‚ เดจเดทเตโ€ŒเดŸเดชเตเดชเต†เดŸเตเด•เดฏเตเด‚ เดกเต€เดธเดฟเตปเด•เตเดฐเดฃเตˆเดธเต เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚.

เด•เต‚เดŸเดพเดคเต†, เด…เดตเดฏเตเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เด’เดฐเต เดšเต†เดฑเดฟเดฏ เด•เดพเดฒเดฏเดณเดตเตเดณเตเดณ เด’เดฐเต เดถเดพเด–เดฏเดฟเดฒเต‡เด•เตเด•เต เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏ เดชเตเดทเตเด•เดณเต‹เดŸเต†, เดชเดดเดฏ เดชเตเดฐเดคเดฟเดฌเดฆเตเดงเดค เดชเตเดคเดฟเดฏเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เดชเดฟเดจเตเดจเต€เดŸเต เดธเดฎเดพเดนเดฐเดฟเดšเตเดšเต‡เด•เตเด•เดพเด‚: เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตปเตเดฑเต† เดชเดดเดฏ เดชเดคเดฟเดชเตเดชเต Git เดฌเตเดฐเดพเดžเตเดšเต เดŸเดพเด—เต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเตเดคเดฟเดฏเดคเดฟเดจเต† เดชเตเดจเดฐเดพเดฒเต‡เด–เดจเด‚ เดšเต†เดฏเตเดฏเตเด‚. เด…เดคเตเดคเดฐเด‚ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เด’เดฐเต CI/CD เดธเดฟเดธเตเดฑเตเดฑเด‚ เดตเดดเดฟ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚ (เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, GitLab CI-เตฝ เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต‡เดคเดฟเตปเตเดฑเต† เดชเตˆเดชเตเดชเตเดฒเตˆเตป เด•เดฎเตเดฎเดฟเดฑเตเดฑเตเด•เดณเตเดŸเต† เด’เดฐเต เดชเดฐเดฎเตเดชเดฐเดฏเตเด•เตเด•เดพเดฏเดฟ เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต). เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดŽเดฒเตเดฒเดพ เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เดณเตเด‚ เด‡เดคเดฟเดจเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เด…เดŸเดฟเดธเตเดฅเดพเดจ เดชเตเดฐเดถเตเดจเด‚ เดคเดŸเดฏเตเดจเตเดจเดคเดฟเดจเต เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดฎเดพเดฏ เดฎเดพเตผเด—เด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚.

เดŽเดจเตเดคเดพเดฃเต เด‰เดณเตเดณเดŸเด•เตเด•เดคเตเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดŸเดพเด—เดฟเด‚เด—เต?

เด…เดคเดฟเดจเดพเตฝ, เดŽเดจเตเดคเดพเดฃเต เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดŸเดพเด—เดฟเด‚เด—เต - เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต เดšเดฟเดคเตเดฐเด™เตเด™เตพ เดŸเดพเด—เตเดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เตเด•เตพ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, Git เดชเตเดฐเดฟเดฎเดฟเดฑเตเดฑเต€เดตเตเด•เดณเดฒเตเดฒ (Git เดฌเตเดฐเดพเดžเตเดšเต, Git เดŸเดพเด—เต...) เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต, เดŽเดจเตเดจเดพเตฝ เด‡เดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เด’เดฐเต เดšเต†เด•เตเด•เตโ€Œเดธเด‚:

  • เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเตเดฑเต† เด‰เดณเตเดณเดŸเด•เตเด•เด‚. เด‡เดฎเต‡เดœเต เดเดกเดฟ เดŸเดพเด—เต เด…เดคเดฟเตปเตเดฑเต† เด‰เดณเตเดณเดŸเด•เตเด•เดคเตเดคเต† เดชเตเดฐเดคเดฟเดซเดฒเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต เดชเตเดคเดฟเดฏ เดชเดคเดฟเดชเตเดชเต เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดฒเต† เดซเดฏเดฒเตเด•เตพ เดฎเดพเดฑเดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดˆ เดเดกเตปเตเดฑเดฟเดซเดฏเตผ เดฎเดพเดฑเดฟเดฒเตเดฒ;
  • Git-เตฝ เดˆ เดšเดฟเดคเตเดฐเด‚ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเดคเดฟเตปเตเดฑเต† เดšเดฐเดฟเดคเตเดฐเด‚. เดตเตเดฏเดคเตเดฏเดธเตโ€Œเดค Git เดถเดพเด–เด•เดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดšเดฟเดคเตเดฐเด™เตเด™เตพเด•เตเด•เตเด‚ เดตเต†เตผเดซเต เดตเดดเดฟเดฏเตเดณเตเดณ เดตเตเดฏเดคเตเดฏเดธเตโ€Œเดค เดฌเดฟเตฝเดกเต เดนเดฟเดธเตเดฑเตเดฑเดฑเดฟเด•เตเด•เตเด‚ เดตเตเดฏเดคเตเดฏเดธเตโ€Œเดค เดเดกเดฟ เดŸเดพเด—เตเด•เตพ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.

เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดเดกเดจเตเดฑเดฟเดซเดฏเตผ เดŸเดพเด—เต เดตเดฟเดณเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเดคเดพเดฃเต เดšเดฟเดคเตเดฐเด‚ เดธเตเดฑเตเดฑเต‡เดœเต เด’เดชเตเดชเต.

เด“เดฐเต‹ เดšเดฟเดคเตเดฐเดตเตเด‚ เด’เดฐเต เด•เต‚เดŸเตเดŸเด‚ เด˜เดŸเตเดŸเด™เตเด™เตพ เด‰เตพเด•เตเด•เตŠเดณเตเดณเตเดจเตเดจเต: from, before-install, git-archive, install, imports-after-install, before-setup, ... git-latest-patch เดคเตเดŸเด™เตเด™เดฟเดฏเดต. เด“เดฐเต‹ เด˜เดŸเตเดŸเดคเตเดคเดฟเดจเตเด‚ เด…เดคเดฟเดจเตเดฑเต† เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เดชเตเดฐเดคเดฟเดซเดฒเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดเดกเดจเตเดฑเดฟเดซเดฏเตผ เด‰เดฃเตเดŸเต - เดธเตเดฑเตเดฑเต‡เดœเต เด’เดชเตเดชเต (เดธเตเดฑเตเดฑเต‡เดœเต เด’เดชเตเดชเต).

เดˆ เด˜เดŸเตเดŸเด™เตเด™เตพ เด…เดŸเด™เตเด™เตเดจเตเดจ เด…เดตเดธเดพเดจ เดšเดฟเดคเตเดฐเด‚, เดˆ เด˜เดŸเตเดŸเด™เตเด™เดณเตเดŸเต† เดธเต†เดฑเตเดฑเดฟเดจเตเดฑเต† เด’เดชเตเดชเต เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจ เดŸเดพเด—เต เดšเต†เดฏเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต - เด˜เดŸเตเดŸเด™เตเด™เดณเตเดŸเต† เด’เดชเตเดชเต, - เด‡เดคเต เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเตเดฑเต† เดŽเดฒเตเดฒเดพ เด˜เดŸเตเดŸเด™เตเด™เตพเด•เตเด•เตเด‚ เดธเดพเดฎเดพเดจเตเดฏเดตเตฝเด•เตเด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด“เดฐเต‹ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเตเด‚ werf.yaml เดชเตŠเดคเตเดตเดพเดฏ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด…เดคเดฟเตปเตเดฑเต‡เดคเดพเดฏ เด’เดชเตเดชเตเด‚ เด…เดคเดจเตเดธเดฐเดฟเดšเตเดšเต เด’เดฐเต เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เตเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.

เดธเตเดฑเตเดฑเต‡เดœเต เดธเดฟเด—เตเดจเต‡เดšเตเดšเตผ เดˆ เดชเตเดฐเดถเตเดจเด™เตเด™เดณเต†เดฒเตเดฒเดพเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต:

  • เดถเต‚เดจเตเดฏเดฎเดพเดฏ Git เด•เดฎเตเดฎเดฟเดฑเตเดฑเตเด•เดณเต† เดชเตเดฐเดคเดฟเดฐเต‹เดงเดฟเด•เตเด•เตเด‚.
  • เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเต เดชเตเดฐเดธเด•เตเดคเดฎเดฒเตเดฒเดพเดคเตเดค เดซเดฏเดฒเตเด•เตพ เดฎเดพเดฑเตเดฑเตเดจเตเดจ Git-เดฒเต† เดชเตเดฐเดคเดฟเดฐเต‹เดงเด‚.
  • เด’เดฐเต เดฌเตเดฐเดพเดžเตเดšเดฟเดจเตเดฑเต† เดชเดดเดฏ Git เด•เดฎเตเดฎเดฟเดฑเตเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดฌเดฟเตฝเดกเตเด•เตพ เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เดชเดคเดฟเดชเตเดชเต เด“เดตเตผเดนเต‹เตพ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเด•เตเด•เดฟเดฒเตเดฒ.

เด‡เดคเต เด‡เดชเตเดชเต‹เตพ เดถเตเดชเดพเตผเดถ เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจ เดŸเดพเด—เดฟเด‚เด—เต เดคเดจเตเดคเตเดฐเดฎเดพเดฃเต เด•เต‚เดŸเดพเดคเต† เดŽเดฒเตเดฒเดพ CI เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เตพเด•เตเด•เตเดฎเตเดณเตเดณ werf-เตฝ เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฃเดฟเดคเต.

เดตเต†เตผเดซเดฟเตฝ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เตเด•เดฏเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเดพเด‚

เด•เดฎเดพเตปเดกเดฟเดจเต เด‡เดชเตเดชเต‹เตพ เด’เดฐเต เด…เดจเตเดฌเดจเตเดง เด“เดชเตเดทเตป เด‰เดฃเตเดŸเต werf publish: --tag-by-stages-signature=true|false

เด’เดฐเต CI เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ, เดŸเดพเด—เดฟเด‚เด—เต เดคเดจเตเดคเตเดฐเด‚ เด•เดฎเดพเตปเดกเต เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเต werf ci-env. เดฎเตเดฎเตเดชเต, เด…เดคเดฟเดจเตเดณเตเดณ เดชเดฐเดพเดฎเต€เดฑเตเดฑเตผ เดจเดฟเตผเดตเดšเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดŸเดฟเดฐเตเดจเตเดจเต werf ci-env --tagging-strategy=tag-or-branch. เด‡เดชเตเดชเต‹เตพ, เดจเดฟเด™เตเด™เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ werf ci-env --tagging-strategy=stages-signature เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดˆ เด“เดชเตเดทเตป เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฐเตเดคเต, เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ werf เดŸเดพเด—เดฟเด‚เด—เต เดคเดจเตเดคเตเดฐเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚ stages-signature. เดŸเต€เด‚ werf ci-env เด•เดฎเดพเตปเดกเดฟเดจเต เด†เดตเดถเตเดฏเดฎเดพเดฏ เดซเตเดฒเดพเด—เตเด•เตพ เดธเตเดตเดฏเดฎเต‡เดต เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเด‚ werf build-and-publish (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ werf publish), เด…เดคเดฟเดจเดพเตฝ เดˆ เด•เดฎเดพเตปเดกเตเด•เตพเด•เตเด•เต เด…เดงเดฟเด• เด“เดชเตโ€Œเดทเดจเตเด•เดณเตŠเดจเตเดจเตเด‚ เดจเตฝเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ.

เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด•เดฎเดพเตปเดกเต:

werf publish --stages-storage :local --images-repo registry.hello.com/web/core/system --tag-by-stages-signature

...เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดšเดฟเดคเตเดฐเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚:

  • registry.hello.com/web/core/system/backend:4ef339f84ca22247f01fb335bb19f46c4434014d8daa3d5d6f0e386d
  • registry.hello.com/web/core/system/frontend:f44206457e0a4c8a54655543f749799d10a9fe945896dab1c16996c6

เด‡เดคเต 4ef339f84ca22247f01fb335bb19f46c4434014d8daa3d5d6f0e386d เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตปเตเดฑเต† เด˜เดŸเตเดŸเด™เตเด™เดณเตเดŸเต† เด’เดฐเต เด’เดชเตเดชเต เด†เดฃเต backendเด’เดชเตเดชเด‚ f44206457e0a4c8a54655543f749799d10a9fe945896dab1c16996c6 - เดšเดฟเดคเตเดฐ เด˜เดŸเตเดŸเด™เตเด™เดณเตเดŸเต† เด’เดชเตเดชเต frontend.

เดชเตเดฐเดคเตเดฏเต‡เด• เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ werf_container_image ะธ werf_container_env เดนเต†เตฝเด‚ เดŸเต†เด‚เดชเตเดฒเต‡เดฑเตเดฑเตเด•เดณเดฟเตฝ เด’เดจเตเดจเตเด‚ เดฎเดพเดฑเตเดฑเต‡เดฃเตเดŸ เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ: เดˆ เดซเด‚เด—เตเดทเดจเตเด•เตพ เดฏเดพเดจเตเดคเตเดฐเดฟเด•เดฎเดพเดฏเดฟ เดถเดฐเดฟเดฏเดพเดฏ เด‡เดฎเต‡เดœเต เดชเต‡เดฐเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด‚.

เด’เดฐเต CI เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเต† เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เด‰เดฆเดพเดนเดฐเดฃเด‚:

type multiwerf && source <(multiwerf use 1.1 beta)
type werf && source <(werf ci-env gitlab)
werf build-and-publish|deploy

เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดตเดฐเด™เตเด™เตพ เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเดจเดฟเตฝ เดฒเดญเตเดฏเดฎเดพเดฃเต:

เด†เด•เต†

  • เดชเตเดคเดฟเดฏ เด“เดชเตเดทเตป werf publish --tag-by-stages-signature=true|false.
  • เดชเตเดคเดฟเดฏ เด“เดชเตเดทเตป เดฎเต‚เดฒเตเดฏเด‚ werf ci-env --tagging-strategy=stages-signature|tag-or-branch (เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เด†เดฏเดฟเดฐเดฟเด•เตเด•เตเด‚ stages-signature).
  • เดจเดฟเด™เตเด™เตพ เดฎเตเดฎเตเดชเต Git commits-เดจเดพเดฏเดฟ เดŸเดพเด—เดฟเด‚เด—เต เด“เดชเตเดทเดจเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดฟเดฐเตเดจเตเดจเต†เด™เตเด•เดฟเตฝ (WERF_TAG_GIT_COMMIT เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด“เดชเตเดทเตป werf publish --tag-git-commit COMMIT), เดคเตเดŸเตผเดจเตเดจเต เดŸเดพเด—เดฟเด‚เด—เต เดคเดจเตเดคเตเดฐเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดจเตเดจเดคเต เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเด• เด˜เดŸเตเดŸเด™เตเด™เตพ-เด’เดชเตเดชเต.
  • เดชเตเดคเดฟเดฏ เดชเดฆเตเดงเดคเดฟเด•เตพ เด‰เดŸเตป เดคเดจเตเดจเต† เดชเตเดคเดฟเดฏ เดŸเดพเด—เดฟเด‚เด—เต เดธเตเด•เต€เดฎเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดฑเตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต.
  • werf 1.1 เดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดฑเตเดฎเตเดชเต‹เตพ, เดชเดดเดฏ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเตเด•เตพ เดชเตเดคเดฟเดฏ เดŸเดพเด—เดฟเด‚เด—เต เดธเตเด•เต€เดฎเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดฑเตเดจเตเดจเดคเต เดจเดฒเตเดฒเดคเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เดชเดดเดฏเดคเต เดŸเดพเด—เต-เด“-เดฌเตเดฐเดพเดžเตเดšเต เด‡เดชเตเดชเต‹เดดเตเด‚ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเต.

เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดŸเดพเด—เดฟเด‚เด—เต เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพ เดชเตเดฐเดถเตเดจเด™เตเด™เดณเตเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต:

  • เดถเต‚เดจเตเดฏเดฎเดพเดฏ Git เด•เดฎเตเดฎเดฟเดฑเตเดฑเตเด•เดณเต‹เดŸเตเดณเตเดณ เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เต เดจเดพเดฎ เดชเตเดฐเดคเดฟเดฐเต‹เดงเด‚.
  • Git-เดฒเต‡เด•เตเด•เตเดณเตเดณ เดกเต‹เด•เตเด•เตผ เดŸเดพเด—เต เดจเดพเดฎเดคเตเดคเดฟเดจเตเดฑเต† เดชเตเดฐเดคเดฟเดฐเต‹เดงเด‚, เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดจเต เด…เดชเตเดฐเดธเด•เตเดคเดฎเดพเดฏ เดซเดฏเดฒเตเด•เตพ เดฎเดพเดฑเตเดฑเตเดจเตเดจเต.
  • Git เดถเดพเด–เด•เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เดชเดดเดฏ Git เด•เดฎเตเดฎเดฟเดฑเตเดฑเตเด•เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เดฌเดฟเตฝเดกเตเด•เตพ เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตปเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เดชเดคเดฟเดชเตเดชเต เด“เดตเตผเดนเต‹เตพ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเด•เตเด•เดฟเดฒเตเดฒ.

เด‰เดชเดฏเต‡เดพเด—เดฟเด•เตเด•! เด’เดชเตเดชเด‚ เดžเด™เตเด™เดณเต† เดธเดจเตเดฆเตผเดถเดฟเด•เตเด•เดพเตป เดฎเดฑเด•เตเด•เดฐเตเดคเต เดธเดพเดฎเต‚เดนเดฟเด•เด‚เด’เดฐเต เดชเตเดฐเดถเตเดจเด‚ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต‹ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณเดคเต เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเดฟเดจเต‹ เด’เดฐเต เดชเตเดฒเดธเต เดšเต‡เตผเด•เตเด•เตเด•, เด’เดฐเต PR เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด• เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดฟเตปเตเดฑเต† เดตเดฟเด•เดธเดจเด‚ เด•เดพเดฃเตเด•.

เดชเดฟ.เดŽเดธเต

เดžเด™เตเด™เดณเตเดŸเต† เดฌเตเดฒเต‹เด—เดฟเดฒเตเด‚ เดตเดพเดฏเดฟเด•เตเด•เตเด•:

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•