เด’เดฐเต เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆเดฎเดพเด•เตเด•เดพเด‚

เดถเตเดญเดฆเดฟเดจเด‚, เดนเดฌเตเตผ!

เด‡เดจเตเดจเต เดžเดพเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เต‡เดฃเตเดŸ เดฐเต€เดคเดฟเด•เดณเดฟเตฝ เด’เดจเตเดจเต เดชเด™เตเด•เดฟเดŸเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต เดธเดœเต€เดต เดšเต‹เดฏเตโ€Œเดธเดธเต เดชเตเดฒเด—เดฟเตป เดŸเดพเดธเตเด•เต เดšเต†เดฏเตเดฏเตเด• เดœเต†เด™เตเด•เดฟเตปเดธเต เดเดฑเตเดฑเดตเตเด‚ เดเด•เต€เด•เตƒเดคเดตเตเด‚ เด‰เดชเดฏเต‹เด•เตเดคเตƒ เดธเต—เดนเตƒเดฆเดตเตเดฎเดพเดฃเต.

เด†เดฎเตเด–เด‚

เดเดŸเดฟ เดธเดฎเต‚เดนเดคเตเดคเดฟเดจเต DevOps เดŽเดจเตเดจ เดšเตเดฐเตเด•เตเด•เดชเตเดชเต‡เดฐเต เด‡เดจเดฟ เดชเตเดคเตเดฎเดฏเตเดณเตเดณเดคเดฒเตเดฒ. เดชเดฒเตผเด•เตเด•เตเด‚, "going DevOps" เดŽเดจเตเดจ เดตเดพเดšเด•เด‚ เด’เดฐเต เดฎเดพเดœเดฟเด•เต เดฌเดŸเตเดŸเดฃเดฟเดจเตเดฑเต† เดšเดฟเดคเตเดฐเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเต เด…เดฎเตผเดคเตเดคเตเดฎเตเดชเต‹เตพ, เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เด•เต‹เดกเดฟเดจเต† เดตเดฟเดจเตเดฏเดธเดฟเดšเตเดšเดคเตเด‚ เดชเดฐเต€เด•เตเดทเดฟเดšเตเดšเดคเตเดฎเดพเดฏ เด’เดฐเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเดพเดฏเดฟ เดฏเดพเดจเตเดคเตเดฐเดฟเด•เดฎเดพเดฏเดฟ เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต (เด‡เดคเต เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เด…เดคเดฟเดจเต‡เด•เตเด•เดพเตพ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฃเต, เดชเด•เตเดทเต‡ เดžเด™เตเด™เตพ เด‰เตพเดชเตเดชเต†เดŸเตเดŸเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เดณเต†เดฏเตเด‚ เด’เดดเดฟเดตเดพเด•เตเด•เตเด•เดฏเดพเดฃเต).

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

เดžเด™เตเด™เดณเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เดžเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚ เดœเต†เด™เตเด•เดฟเตปเดธเต.


เด’เดฐเต เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆเดฎเดพเด•เตเด•เดพเด‚

เดฒเด•เตเดทเตเดฏเด‚

เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดชเดคเดฟเดชเตเดชเดฟเดจเตเดฑเต† เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดค เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเดฟเดจเตเดฑเต† เดฌเดฟเตฝเดกเต เด•เต‚เดŸเดพเดคเต†/เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดตเดฟเดจเตเดฏเดพเดธเด‚ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฏ เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด•.

เด’เดฐเต เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆเดฎเดพเด•เตเด•เดพเด‚

เด‡เตปเดชเตเดŸเตเดŸเต เดกเดพเดฑเตเดฑ

เดตเดฟเดตเดฟเดง เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเตเด•เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เดธเต‹เดดเตโ€Œเดธเต เด•เต‹เดกเต เด…เดŸเด™เตเด™เดฟเดฏ เดจเดฟเดฐเดตเดงเดฟ เดถเต‡เด–เดฐเดฃเด™เตเด™เตพ เดžเด™เตเด™เดณเตเดŸเต† เดชเด•เตเด•เดฒเตเดฃเตเดŸเต.

เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เดณเตเดŸเต† เดจเดฟเตผเดตเดšเดจเด‚

เดจเดฎเตเดฎเตเดŸเต† เดœเต‹เดฒเดฟเดฏเตเดŸเต† เด‡เตปเดชเตเดŸเตเดŸเดฟเตฝ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดจเตฝเด•เดฃเด‚:

  1. เดœเต‹เดฒเดฟ เดจเดŸเด•เตเด•เตเดฎเตเดชเต‹เตพ เดจเดฎเตเดฎเตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเดจเตเด‚ เดตเดฟเดจเตเดฏเดธเดฟเด•เตเด•เดพเดจเตเด‚ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจ เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเต เด•เต‹เดกเต เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเตเดŸเต† URL.
  2. เดฌเดฟเตฝเดกเต เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจ เด•เดฎเตเดฎเดฟเดฑเตเดฑเดฟเดจเตเดฑเต† เดเดกเดฟ.

เด…เดคเต เดชเต†เดพเดฒเต†

เดˆ เดŸเดพเดธเตเด•เต เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เดพเดจเตเดณเตเดณ เดเดฑเตเดฑเดตเตเด‚ เดŽเดณเตเดชเตเดช เดฎเดพเตผเด—เด‚ เดธเตเดŸเตเดฐเดฟเด‚เด—เต เดŸเตˆเดชเตเดชเดฟเดจเตเดฑเต† เดฐเดฃเตเดŸเต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต.

เด’เดฐเต เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆเดฎเดพเด•เตเด•เดพเด‚

เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เตเด‚ เด•เดฎเตเดฎเดฟเดฑเตเดฑเต เดเดกเดฟเดฏเดฟเดฒเต‡เด•เตเด•เตเด‚ เด‰เดณเตเดณ เดชเดพเดค เดธเตเดตเดฎเต‡เดงเดฏเดพ เดจเตฝเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เด‡เดคเต เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดฒเตเดฒเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เดธเดฎเตเดฎเดคเดฟเด•เตเด•เดฃเด‚.

เด’เดฐเต เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆเดฎเดพเด•เตเด•เดพเด‚

เด†เดฏเดฟเดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดชเต‹เดฒเต†

เด‡เดจเดฟ เด…เดคเดฟเดจเตเดฑเต† เดŽเดฒเตเดฒเดพ เด—เตเดฃเด™เตเด™เดณเตเด‚ เด•เดพเดฃเดพเตป เดฎเดฑเตเดฑเตŠเดฐเต เดคเดฐเด‚ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดชเดฐเต€เด•เตเดทเดฟเดšเตเดšเต เดจเต‹เด•เตเด•เดพเด‚.
เด†เดฆเตเดฏเดคเตเดคเต† เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ Choice Parameter เดคเดฐเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเตเด‚, เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต‡เดคเต Active Choices Reactive Reference Parameter เดคเดฐเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเตเด‚ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเด‚. Choice เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดฟเตฝ, เดจเดฎเตเดฎเตเดŸเต† เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเต เด•เต‹เดกเต เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเด•เดณเตเดŸเต† เดชเต‡เดฐเตเด•เตพ Choices เดซเต€เตฝเดกเดฟเดฒเต‡เด•เตเด•เต เดธเตเดตเดฎเต‡เดงเดฏเดพ เดšเต‡เตผเด•เตเด•เตเด‚.

เด’เดฐเต เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆเดฎเดพเด•เตเด•เดพเด‚

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

เด“เดฐเต‹ เดถเต‡เด–เดฐเดคเตเดคเดฟเดจเตเด‚ เด…เดคเดฟเดจเตเดฑเต‡เดคเดพเดฏ เด•เดฎเตเดฎเดฟเดฑเตเดฑเตเด•เดณเตเดŸเต† เดฒเดฟเดธเตเดฑเตเดฑเต เด‰เดณเตเดณเดคเดฟเดจเดพเตฝ, เด†เดฆเตเดฏเดคเตเดคเต† เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดฟเดจเตเดฑเต† (test1 เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ test2) เดฎเต‚เดฒเตเดฏเดคเตเดคเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเต เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดฟเดจเตเดฑเต† เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดšเดฒเดจเดพเดคเตเดฎเด•เดฎเดพเดฏเดฟ เดชเต‚เดฐเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚.

เด†เด•เตเดฑเตเดฑเต€เดตเต เดšเต‹เดฏเตโ€Œเดธเดธเต เดฑเดฟเดฏเดพเด•เตเดŸเต€เดตเต เดฑเดซเดฑเตปเดธเต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ เดชเต‚เดฐเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดซเต€เตฝเดกเตเด•เตพ เด‰เดฃเตเดŸเต:

  1. เดชเต‡เดฐเต โ€“ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ เดจเดพเดฎเด‚.
  2. เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต โ€“ เดฑเดซเดฑเตปเดธเตเดกเต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ เดซเต€เตฝเดกเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดฟเดจเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ เดฎเดพเดฑเตเดฎเตเดชเต‹เดดเต†เดฒเตเดฒเดพเด‚ เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เด•เต‹เดกเต (เดจเดฎเตเดฎเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดจเดฎเตเดฎเตพ test1 เดจเตเด‚ test2 เดจเตเด‚ เด‡เดŸเดฏเดฟเตฝ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ).
  3. เดตเดฟเดตเดฐเดฃเด‚ - เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดฟเดจเตเดฑเต† เด’เดฐเต เดนเตเดฐเดธเตเดต เดตเดฟเดตเดฐเดฃเด‚.
  4. เดšเต‹เดฏเตโ€Œเดธเต เดคเดฐเด‚ โ€“ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดจเตฝเด•เตเดจเตเดจ เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเดฟเดจเตเดฑเต† เดคเดฐเด‚ (เดžเด™เตเด™เดณเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เดžเด™เตเด™เตพ HTML เด•เต‹เดกเต เดจเตฝเด•เตเด‚).
  5. เดชเดฐเดพเดฎเตผเดถเดฟเดšเตเดš เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ โ€“ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดตเดฟเดญเดพเด—เดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด•เต‹เดกเต เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เดฎเต‚เดฒเตเดฏเด‚ เดฎเดพเดฑเตเดจเตเดจ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดฟเดจเตเดฑเต† เดชเต‡เดฐเต.

เด’เดฐเต เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆเดฎเดพเด•เตเด•เดพเด‚

เดˆ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเดฟเดฒเต† เดเดฑเตเดฑเดตเตเด‚ เดชเตเดฐเดงเดพเดจเดชเตเดชเต†เดŸเตเดŸ เดซเต€เตฝเดกเต เดชเต‚เดฐเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‡เด•เตเด•เต เดจเดฎเตเด•เตเด•เต เดจเต‡เดฐเดฟเดŸเตเดŸเต เดชเต‹เด•เดพเด‚. เดžเด™เตเด™เตพเด•เตเด•เต เดฐเดฃเตเดŸเต เดจเดŸเดชเตเดชเดพเด•เตเด•เตฝ เด“เดชเตเดทเดจเตเด•เตพ เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต: เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เด—เตเดฐเต‚เดตเดฟ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เด…เดฅเดตเดพ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตผ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต.
เดจเดฎเตเดฎเตพ เด†เดฆเตเดฏเดคเตเดคเต‡เดคเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเต, เด•เดพเดฐเดฃเด‚ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเดฒเตผ เดŽเดจเตเดจเดคเต เดจเดฟเด™เตเด™เตพ เด‡เดคเดฟเดจเด•เด‚ เดŽเดดเตเดคเดฟเดฏ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด…เดต เดตเต€เดฃเตเดŸเตเด‚ เด•เต‹เดชเตเดชเดฟ-เดชเต‡เดธเตเดฑเตเดฑเต เดšเต†เดฏเตเดฏเดพเดคเต† เดคเดจเตเดจเต† เดฎเดฑเตเดฑเต เดœเต‹เดฒเดฟเด•เดณเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจ เด’เดฐเต เดชเตเดฒเด—เดฟเตป เดฎเดพเดคเตเดฐเดฎเดพเดฃเต.

เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดค เด’เดฐเต เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดŽเดฒเตเดฒเดพ เด•เดฎเตเดฎเดฟเดฑเตเดฑเตเด•เดณเตเด‚ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด—เตเดฐเต‚เดตเดฟ เด•เต‹เดกเต:

AUTH = "ะปะพะณะธะฝ ะธ ะฟะฐั€ะพะปัŒ ะฒ Base64"                           
GIT_URL = "url ะดะพ ะฒะฐัˆะตะน SCM (https://bitbucket.org/)"                       
PROJECT_NAME = "ะธะผั ะฟั€ะพะตะบั‚ะฝะพะน ะพะฑะปะฐัั‚ะธ, ะณะดะต ะฝะฐั…ะพะดัั‚ัั ั€ะตะฟะพะทะธั‚ะพั€ะธะธ"

def htmlBuild() {
    html = """
            <html>
            <head>
            <meta charset="windows-1251">
            <style type="text/css">
            div.grayTable {
            text-align: left;
            border-collapse: collapse;
            }
            .divTable.grayTable .divTableCell, .divTable.grayTable .divTableHead {
            padding: 0px 3px;
            }
            .divTable.grayTable .divTableBody .divTableCell {
            font-size: 13px;
            }
            </style>
            </head>
            <body>
        """

    def commitOptions = ""
    getCommitsForMicroservice(MICROSERVICE_NAME).each {
        commitOptions += "<option style='font-style: italic' value='COMMIT=${it.getKey()}'>${it}</option>"
    }
    html += """<p style="display: inline-block;">
        <select id="commit_id" size="1" name="value">
            ${commitOptions}
        </select></p></div>"""

    html += """
            </div>
            </div>
            </div>
            </body>
            </html>
         """
    return html
}

def getCommitsForMicroservice(microserviceRepo) {
    def commits = [:]
    def endpoint = GIT_URL + "/rest/api/1.0/projects/${PROJECT_NAME}/repos/${microserviceRepo}/commits"
    def conn = new URL(endpoint).openConnection()
    conn.setRequestProperty("Authorization", "Basic ${AUTH}")
    def response = new groovy.json.JsonSlurper().parseText(conn.content.text)
    response.values.each {
        commits.put(it.displayId, it.message)
    }
    return commits
}

return htmlBuild()

เดตเดฟเดถเดฆเดพเด‚เดถเด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เต เด•เดŸเด•เตเด•เดพเดคเต†, เดˆ เด•เต‹เดกเต เด‡เตปเดชเตเดŸเตเดŸเดพเดฏเดฟ เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเดฟเดจเตเดฑเต† เดชเต‡เดฐเต (MICROSERVICE_NAME) เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด’เดฐเต เด…เดญเตเดฏเตผเดคเตเดฅเดจ เด…เดฏเดฏเตเด•เตเด•เตเดจเตเดจเต เดฌเดฟเดฑเตเดฑเตเดฌเดพเด•เตเด•เต†เดฑเตเดฑเต (เดฐเต€เดคเดฟ เดฎเตˆเด•เตเดฐเต‹ เดธเตผเดตเต€เดธเต เดจเต‡เดŸเตเด•), เด…เดคเดฟเดจเตเดฑเต† API เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเดฟเดจเดพเดฏเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เด•เดฎเตเดฎเดฟเดฑเตเดฑเตเด•เดณเตเดŸเต†เดฏเตเด‚ เดเดกเดฟเดฏเตเด‚ เด•เดฎเตเดฎเดฟเดฑเตเดฑเต เดธเดจเตเดฆเต‡เดถเดตเตเด‚ เดจเต‡เดŸเตเดจเตเดจเต.
เดจเต‡เดฐเดคเตเดคเต† เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต†, เดˆ เด•เต‹เดกเต เดชเต‡เดœเดฟเตฝ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ html เดคเดฟเดฐเดฟเด•เต† เดจเตฝเด•เดฃเด‚. เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเด• เดœเต†เตปเด•เดฟเตปเดธเดฟเตฝ, เด…เดคเดฟเดจเดพเตฝ เดจเดฎเตเดฎเตพ เดฌเดฟเดฑเตเดฑเตเดฌเด•เตเด•เดฑเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดฒเดญเดฟเดšเตเดš เดŽเดฒเตเดฒเดพ เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเตเด‚ เด’เดฐเต เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เดชเตŠเดคเดฟเดžเตเดžเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เดฒเดฟเดฒเต‡เด•เตเด•เต เดšเต‡เตผเด•เตเด•เตเดจเตเดจเต.

เดŽเดฒเตเดฒเดพ เด˜เดŸเตเดŸเด™เตเด™เดณเตเด‚ เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เดฟเดฏ เดถเต‡เดทเด‚, เด‡เดคเตเดชเต‹เดฒเตเดณเตเดณ เดฎเดจเต‹เดนเดฐเดฎเดพเดฏ เด’เดฐเต เดชเต‡เดœเต เดจเดฎเตเด•เตเด•เต เดฒเดญเดฟเด•เตเด•เตเด‚. เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเด•.

เดจเดฟเด™เตเด™เตพ test1 เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเดพเตฝ:

เด’เดฐเต เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆเดฎเดพเด•เตเด•เดพเด‚

เดจเดฟเด™เตเด™เตพ test2 เดฎเตˆเด•เตเดฐเต‹เดธเตผเดตเต€เดธเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเดพเตฝ:

เด’เดฐเต เดœเต†เด™เตเด•เดฟเตปเดธเต เดœเต‹เดฒเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆเดฎเดพเด•เตเด•เดพเด‚

เด“เดฐเต‹ เดคเดตเดฃเดฏเตเด‚ URL เดชเด•เตผเดคเตเดคเดฟ เด†เดตเดถเตเดฏเดฎเดพเดฏ เด•เดฎเตเดฎเดฟเดฑเตเดฑเต เดเดกเดฟ เดคเดฟเดฐเดฏเตเดจเตเดจเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เดŸเดพเดธเตโ€Œเด•เตเด•เตเดฎเดพเดฏเดฟ เดˆ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดธเด‚เดตเดฆเดฟเด•เตเด•เตเดจเตเดจเดคเต เดตเดณเดฐเต† เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเด•เตเดฎเต†เดจเตเดจเต เดธเดฎเตเดฎเดคเดฟเด•เตเด•เตเดจเตเดจเต.

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

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

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

DDoS เดชเดฐเดฟเดฐเด•เตเดทเดฏเตเดณเตเดณ เดธเตˆเดฑเตเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดฎเดพเดฏ เดนเต‹เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดตเดพเด™เตเด™เตเด•, VPS VDS เดธเต†เตผเดตเดฑเตเด•เตพ ๐Ÿ”ฅ DDoS เดชเดฐเดฟเดฐเด•เตเดท, VPS VDS เดธเต†เตผเดตเดฑเตเด•เตพ เด‰เดณเตเดณ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดฎเดพเดฏ เดตเต†เดฌเตโ€Œเดธเตˆเดฑเตเดฑเต เดนเต‹เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดตเดพเด™เตเด™เต‚ | ProHoster