เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉŒเจ•เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฎเจพเจชเจฆเฉฐเจก เจฌเจฃเจพเจ‰เจฃเจพ, เจœเจพเจ‚ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉฐเจฎ เจจเฉ‚เฉฐ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‡เจ† เจœเจพเจตเฉ‡

เจšเฉฐเจ—เจพ เจฆเจฟเจจ, เจนเจฌเจฐ!

เจ…เฉฑเจœ เจฎเฉˆเจ‚ เจตเจฐเจคเจฃ เจฆเจพ เจ‡เฉฑเจ• เจคเจฐเฉ€เจ•เจพ เจธเจพเจ‚เจเจพ เจ•เจฐเจจเจพ เจšเจพเจนเจพเจ‚เจ—เจพ เจ•เจฟเจฐเจฟเจ†เจธเจผเฉ€เจฒ เจตเจฟเจ•เจฒเจช เจชเจฒเฉฑเจ—เจ‡เจจ เจตเจฟเฉฑเจš เจ•เฉฐเจฎ เจ•เจฐเฉ‹ เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจธเจญ เจคเฉ‹เจ‚ เจเจ•เฉ€เจ•เฉเจฐเจฟเจค เจ…เจคเฉ‡ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ.

เจœเจพเจฃ เจชเจ›เจพเจฃ

DevOps เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ…เจœเจฟเจนเจพ เจธเฉฐเจ–เฉ‡เจช เจฐเฉ‚เจช เจนเฉเจฃ IT เจญเจพเจˆเจšเจพเจฐเฉ‡ เจฒเจˆ เจ•เฉเจ เจจเจตเจพเจ‚ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจฒเฉ‹เจ•เจพเจ‚ เจฒเจˆ, "เจกเฉ‚ เจฆเฉ‡เจตเจ“เจชเจธ" เจตเจพเจ•เฉฐเจธเจผ เจ•เจฟเจธเฉ‡ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจœเจพเจฆเฉ‚ เจฌเจŸเจจ เจจเจพเจฒ เจœเฉเฉœเจฟเจ† เจนเฉ‹เจ‡เจ† เจนเฉˆ, เจœเจฆเฉ‹เจ‚ เจ•เจฒเจฟเฉฑเจ• เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ•เฉ‹เจก เจ†เจชเจฃเฉ‡ เจ†เจช เจ‡เฉฑเจ• เจคเฉˆเจจเจพเจค เจ…เจคเฉ‡ เจœเจพเจ‚เจš เจ•เฉ€เจคเฉ€ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจตเจฟเฉฑเจš เจฌเจฆเจฒ เจœเจพเจ‚เจฆเจพ เจนเฉˆ (เจนเจฐ เจšเฉ€เจœเจผ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจตเจงเฉ‡เจฐเฉ‡ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจนเฉˆ, เจชเจฐ เจ…เจธเฉ€เจ‚ เจธเจพเจฐเฉ€เจ†เจ‚ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจคเฉ‹เจ‚ เจตเฉฑเจ– เจนเฉ‹ เจฐเจนเฉ‡ เจนเจพเจ‚)เฅค

เจ‡เจธ เจฒเจˆ, เจธเจพเจจเฉ‚เฉฐ เจ…เจœเจฟเจนเจพ เจœเจพเจฆเฉ‚ เจฌเจŸเจจ เจฌเจฃเจพเจ‰เจฃ เจฆเจพ เจ†เจฐเจกเจฐ เจฎเจฟเจฒเจฟเจ† เจนเฉˆ เจคเจพเจ‚ เจœเฉ‹ เจชเฉเจฐเจธเจผเจพเจธเจ• เจ‡เฉฑเจ• เจ•เจฒเจฟเฉฑเจ• เจจเจพเจฒ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจคเฉˆเจจเจพเจค เจ•เจฐ เจธเจ•เจฃเฅค เจ‡เจธ เจ•เจพเจฐเจœ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจฆเฉ€เจ†เจ‚ เจ•เจˆ เจ•เจฟเจธเจฎเจพเจ‚ เจนเจจ: เจ•เจฟเจธเฉ‡ เจตเฉ€ เจคเจคเจ•เจพเจฒ เจฎเฉˆเจธเฉ‡เจ‚เจœเจฐ เจฒเจˆ เจ‡เฉฑเจ• เจฌเฉ‹เจŸ เจฒเจฟเจ–เจฃ เจคเฉ‹เจ‚ เจฒเฉˆ เจ•เฉ‡ เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเฉ€ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฌเจฃเจพเจ‰เจฃ เจคเฉฑเจ•เฅค เจซเจฟเจฐ เจตเฉ€, เจ‡เจธ เจธเจญ เจฆเจพ เจ‡เฉฑเจ•เฉ‹ เจŸเฉ€เจšเจพ เจนเฉˆ - เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ‡ เจจเจฟเจฐเจฎเจพเจฃ เจ…เจคเฉ‡ เจคเฉˆเจจเจพเจคเฉ€ เจจเฉ‚เฉฐ เจœเจฟเฉฐเจจเจพ เจธเฉฐเจญเจต เจนเฉ‹ เจธเจ•เฉ‡ เจชเจพเจฐเจฆเจฐเจธเจผเฉ€ เจ…เจคเฉ‡ เจธเฉเจตเจฟเจงเจพเจœเจจเจ• เจฌเจฃเจพเจ‰เจฃเจพเฅค

เจธเจพเจกเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš เจ…เจธเฉ€เจ‚ เจตเจฐเจคเจพเจ‚เจ—เฉ‡ เจœเฉ‡เจจเจ•เจฟเฉฐเจธ.


เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉŒเจ•เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฎเจพเจชเจฆเฉฐเจก เจฌเจฃเจพเจ‰เจฃเจพ, เจœเจพเจ‚ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉฐเจฎ เจจเฉ‚เฉฐ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‡เจ† เจœเจพเจตเฉ‡

เจ‰เจฆเฉ‡เจธเจผ

เจ‡เฉฑเจ• เจธเฉเจตเจฟเจงเจพเจœเจจเจ• เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉŒเจ•เจฐเฉ€ เจฌเจฃเจพเจ“ เจœเฉ‹ เจ‡เฉฑเจ• เจ–เจพเจธ เจธเฉฐเจธเจ•เจฐเจฃ เจฆเฉ‡ เจšเฉเจฃเฉ‡ เจนเฉ‹เจ เจฎเจพเจˆเจ•เฉเจฐเฉ‹เจธเจฐเจตเจฟเจธ เจฆเฉ€ เจฌเจฟเจฒเจก เจ…เจคเฉ‡ (เจœเจพเจ‚) เจคเฉˆเจจเจพเจคเฉ€ เจจเฉ‚เฉฐ เจฒเจพเจ‚เจš เจ•เจฐเฉ‡เจ—เฉ€เฅค

เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉŒเจ•เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฎเจพเจชเจฆเฉฐเจก เจฌเจฃเจพเจ‰เจฃเจพ, เจœเจพเจ‚ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉฐเจฎ เจจเฉ‚เฉฐ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‡เจ† เจœเจพเจตเฉ‡

เจ‡เจจเจชเฉเจŸ เจกเจพเจŸเจพ

เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจ•เจˆ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€เจ†เจ‚ เจนเจจ เจœเจฟเจจเฉเจนเจพเจ‚ เจตเจฟเฉฑเจš เจตเฉฑเจ–-เจตเฉฑเจ– เจฎเจพเจˆเจ•เฉเจฐเฉ‹ เจธเจฐเจตเจฟเจธเจฟเจœเจผ เจฆเฉ‡ เจธเจฐเฉ‹เจค เจ•เฉ‹เจก เจนเจจเฅค

เจฎเจพเจชเจฆเฉฐเจก เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค

เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ‡ เจฎเจพเจชเจฆเฉฐเจก เจธเจพเจกเฉ€ เจจเฉŒเจ•เจฐเฉ€ เจฒเจˆ เจ‡เจจเจชเฉเจŸ เจตเจœเฉ‹เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเฉ‡ เจœเจพเจฃเฉ‡ เจšเจพเจนเฉ€เจฆเฉ‡ เจนเจจ:

  1. เจฎเจพเจˆเจ•เฉเจฐเฉ‹เจธเจฐเจตเจฟเจธ เจ•เฉ‹เจก เจตเจพเจฒเฉ€ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฆเจพ URL เจœเจฟเจธ เจจเฉ‚เฉฐ เจ…เจธเฉ€เจ‚ เจ•เฉฐเจฎ เจšเจฒเจพเจ‰เจฃ เจตเฉ‡เจฒเฉ‡ เจฌเจฃเจพเจ‰เจฃเจพ เจ…เจคเฉ‡ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเจพเจ‚เฅค
  2. เจ‰เจธ เจ•เจฎเจฟเจŸ เจฆเฉ€ ID เจœเจฟเจธ เจคเฉ‹เจ‚ เจฌเจฟเจฒเจก เจนเฉ‹เจตเฉ‡เจ—เจพเฅค

AS IS

เจ‡เจธ เจ•เฉฐเจฎ เจจเฉ‚เฉฐ เจชเฉ‚เจฐเจพ เจ•เจฐเจจ เจฆเจพ เจธเจญ เจคเฉ‹เจ‚ เจ†เจธเจพเจจ เจคเจฐเฉ€เจ•เจพ เจธเจŸเฉเจฐเจฟเฉฐเจ— เจ•เจฟเจธเจฎ เจฆเฉ‡ เจฆเฉ‹ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจฌเจฃเจพเจ‰เจฃเจพ เจนเฉˆเฅค

เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉŒเจ•เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฎเจพเจชเจฆเฉฐเจก เจฌเจฃเจพเจ‰เจฃเจพ, เจœเจพเจ‚ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉฐเจฎ เจจเฉ‚เฉฐ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‡เจ† เจœเจพเจตเฉ‡

เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจจเฉ‚เฉฐ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจ…เจคเฉ‡ เจ•เจฎเจฟเจŸ เจ†เจˆเจกเฉ€ เจฆเฉ‡ เจฎเจพเจฐเจ— เจจเฉ‚เฉฐ เจนเฉฑเจฅเฉ€เจ‚ เจฆเจพเจ–เจฒ เจ•เจฐเจจ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉ‹เจเจ—เฉ€, เจœเฉ‹ เจคเฉเจธเฉ€เจ‚ เจตเฉ‡เจ–เจฆเฉ‡ เจนเฉ‹, เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจธเฉเจตเจฟเจงเจพเจœเจจเจ• เจจเจนเฉ€เจ‚ เจนเฉˆ.

เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉŒเจ•เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฎเจพเจชเจฆเฉฐเจก เจฌเจฃเจพเจ‰เจฃเจพ, เจœเจพเจ‚ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉฐเจฎ เจจเฉ‚เฉฐ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‡เจ† เจœเจพเจตเฉ‡

เจœเจฟเจตเฉ‡เจ‚ เจนเฉ‹เจฃเจพ เจนเฉˆ

เจนเฉเจฃ เจ‡เจธเจฆเฉ‡ เจธเจพเจฐเฉ‡ เจซเจพเจ‡เจฆเจฟเจ†เจ‚ 'เจคเฉ‡ เจตเจฟเจšเจพเจฐ เจ•เจฐเจจ เจฒเจˆ เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐเจพเจ‚ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเฉ€เจ.
เจ†เจ‰ เจŸเจพเจˆเจช เจšเฉเจ†เจ‡เจธ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจจเจพเจฒ เจชเจนเจฟเจฒเจพ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจฌเจฃเจพเจˆเจ, เจฆเฉ‚เจœเจพ - เจเจ•เจŸเจฟเจต เจšเฉเจ†เจ‡เจธ เจฐเจฟเจเจ•เจŸเจฟเจต เจฐเฉˆเจซเจฐเฉˆเจ‚เจธ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐเฅค เจšเฉ‹เจฃ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจตเจฟเฉฑเจš, เจ…เจธเฉ€เจ‚ เจนเฉฑเจฅเฉ€เจ‚ เจšเฉ‹เจฃ เจ–เฉ‡เจคเจฐ เจตเจฟเฉฑเจš เจ‰เจนเจจเจพเจ‚ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€เจ†เจ‚ เจฆเฉ‡ เจจเจพเจฎ เจธเจผเจพเจฎเจฒ เจ•เจฐเจพเจ‚เจ—เฉ‡ เจœเจฟเฉฑเจฅเฉ‡ เจธเจพเจกเฉ€ เจฎเจพเจˆเจ•เฉเจฐเฉ‹ เจธเจฐเจตเจฟเจธเจฟเจœเจผ เจฆเจพ เจ•เฉ‹เจก เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉŒเจ•เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฎเจพเจชเจฆเฉฐเจก เจฌเจฃเจพเจ‰เจฃเจพ, เจœเจพเจ‚ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉฐเจฎ เจจเฉ‚เฉฐ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‡เจ† เจœเจพเจตเฉ‡

เจœเฉ‡เจ•เจฐ เจฆเจฐเจธเจผเจ• เจ‡เจธ เจฒเฉ‡เจ– เจจเฉ‚เฉฐ เจชเจธเฉฐเจฆ เจ•เจฐเจฆเฉ‡ เจนเจจ, เจคเจพเจ‚ เจ…เจ—เจฒเฉ‡ เจฒเฉ‡เจ– เจตเจฟเฉฑเจš เจฎเฉˆเจ‚ เจ•เฉ‹เจก (เจ•เฉ‹เจก เจฆเฉ‡ เจคเฉŒเจฐ เจคเฉ‡ เจ•เฉŒเจจเจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ) เจฆเฉเจ†เจฐเจพ เจตเจฐเจฃเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจตเจฟเฉฑเจš เจ•เจพเจฐเจœเจพเจ‚ เจฆเฉ€ เจธเฉฐเจฐเจšเจจเจพ เจ•เจฐเจจ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจฆเจพ เจตเจฐเจฃเจจ เจ•เจฐเจพเจ‚เจ—เจพ, เจฏเจพเจจเฉ€. เจธเจพเจจเฉ‚เฉฐ เจนเฉฑเจฅเฉ€เจ‚ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจจเจพเจฎ เจฆเจฐเจœ เจ•เจฐเจจ เจ…เจคเฉ‡ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจชเจตเฉ‡เจ—เฉ€, เจธเจญ เจ•เฉเจ เจ†เจชเจฃเฉ‡ เจ†เจช เจนเฉ‹ เจœเจพเจตเฉ‡เจ—เจพ (เจธเจพเจกเจพ เจ•เฉ‹เจก SCM เจคเฉ‹เจ‚ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€เจ†เจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจธเฉ‚เจšเฉ€ เจชเฉเจฐเจพเจชเจค เจ•เจฐเฉ‡เจ—เจพ เจ…เจคเฉ‡ เจ‡เจธ เจธเฉ‚เจšเฉ€ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจฌเจฃเจพเจเจ—เจพ)เฅค

เจฆเฉ‚เจœเฉ‡ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจฆเฉ‡ เจฎเฉเฉฑเจฒ เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจคเฉŒเจฐ 'เจคเฉ‡ เจญเจฐเฉ‡ เจœเจพเจฃเจ—เฉ‡, เจ‡เจธ เจ—เฉฑเจฒ 'เจคเฉ‡ เจจเจฟเจฐเจญเจฐ เจ•เจฐเจฆเจพ เจนเฉˆ เจ•เจฟ เจชเจนเจฟเจฒเจพ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจ•เฉ€ เจฎเฉเฉฑเจฒ เจฒเฉˆเจ‚เจฆเจพ เจนเฉˆ (เจŸเฉˆเจธเจŸ1 เจœเจพเจ‚ เจŸเฉˆเจธเจŸ2), เจ•เจฟเจ‰เจ‚เจ•เจฟ เจนเจฐเฉ‡เจ• เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฆเฉ€ เจ†เจชเจฃเฉ€ เจ•เจฎเจฟเจŸ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค

เจธเจฐเจ—เจฐเจฎ เจตเจฟเจ•เจฒเจช เจชเฉเจฐเจคเฉ€เจ•เจฟเจฐเจฟเจ†เจธเจผเฉ€เจฒ เจธเฉฐเจฆเจฐเจญ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจญเจฐเจจ เจฒเจˆ เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ‡ เจ–เฉ‡เจคเจฐ เจนเจจ:

  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) เจชเฉเจฐเจพเจชเจค เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจธ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจฌเฉ‡เจจเจคเฉ€ เจญเฉ‡เจœเจฆเจพ เจนเฉˆ เจฌเจฟเฉฑเจŸเจฌเจ•เฉ€เจŸ (เจตเจฟเจงเฉ€ getCommitsForMicroservice) เจ‡เจธเจฆเฉ€ API เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจ…เจคเฉ‡ เจฆเจฟเฉฑเจคเฉ€ เจ—เจˆ เจฎเจพเจˆเจ•เฉเจฐเฉ‹เจธเจฐเจตเจฟเจธ เจฒเจˆ เจธเจพเจฐเฉ€เจ†เจ‚ เจ•เจฎเจฟเจŸเจพเจ‚ เจฆเฉ€ id เจ…เจคเฉ‡ เจชเฉเจฐเจคเฉ€เจฌเฉฑเจง เจธเฉเจจเฉ‡เจนเจพ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจฆเจพ เจนเฉˆเฅค
เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจชเจนเจฟเจฒเจพเจ‚ เจฆเฉฑเจธเจฟเจ† เจ—เจฟเจ† เจนเฉˆ, เจ‡เจธ เจ•เฉ‹เจก เจจเฉ‚เฉฐ html เจตเจพเจชเจธ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจœเฉ‹ เจชเฉฐเจจเฉ‡ 'เจคเฉ‡ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจนเฉ‹เจตเฉ‡เจ—เจพ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐเจพเจ‚ เจจเจพเจฒ เจฌเจฃเจพเจ“ เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจตเจฟเฉฑเจš, เจ‡เจธ เจฒเจˆ เจ…เจธเฉ€เจ‚ เจฌเจฟเฉฑเจŸเจฌเจ•เฉ‡เจŸ เจคเฉ‹เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเฉ‡ เจธเจพเจฐเฉ‡ เจฎเฉเฉฑเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจธเฉ‚เจšเฉ€ เจตเจฟเฉฑเจš เจฒเจชเฉ‡เจŸเจฆเฉ‡ เจนเจพเจ‚ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจšเฉเจฃเจจ เจฒเจˆ เจœเฉ‹เฉœเจฆเฉ‡ เจนเจพเจ‚เฅค

เจธเจพเจฐเฉ‡ เจชเฉœเจพเจ… เจชเฉ‚เจฐเฉ‡ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจธเจพเจจเฉ‚เฉฐ เจ…เจœเจฟเจนเจพ เจธเฉเฉฐเจฆเจฐ เจชเฉ‡เจœ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐเจพเจ‚ เจจเจพเจฒ เจฌเจฃเจพเจ“.

เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจŸเฉˆเจธเจŸ1 เจฎเจพเจˆเจ•เฉเจฐเฉ‹เจธเจฐเจตเจฟเจธ เจจเฉ‚เฉฐ เจšเฉเจฃเจฟเจ† เจนเฉˆ:

เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉŒเจ•เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฎเจพเจชเจฆเฉฐเจก เจฌเจฃเจพเจ‰เจฃเจพ, เจœเจพเจ‚ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉฐเจฎ เจจเฉ‚เฉฐ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‡เจ† เจœเจพเจตเฉ‡

เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจŸเฉˆเจธเจŸ2 เจฎเจพเจˆเจ•เฉเจฐเฉ‹เจธเจฐเจตเจฟเจธ เจจเฉ‚เฉฐ เจšเฉเจฃเจฟเจ† เจนเฉˆ:

เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉŒเจ•เจฐเฉ€ เจตเจฟเฉฑเจš เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฎเจพเจชเจฆเฉฐเจก เจฌเจฃเจพเจ‰เจฃเจพ, เจœเจพเจ‚ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉฐเจฎ เจจเฉ‚เฉฐ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‡เจ† เจœเจพเจตเฉ‡

เจธเจนเจฟเจฎเจค เจนเฉ‹เจตเฉ‹ เจ•เจฟ เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจฒเจˆ เจนเจฐ เจตเจพเจฐ url เจฆเฉ€ เจจเจ•เจฒ เจ•เจฐเจจ เจ…เจคเฉ‡ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€ เจ•เจฎเจฟเจŸ เจ†เจˆเจกเฉ€ เจฆเฉ€ เจญเจพเจฒ เจ•เจฐเจจ เจจเจพเจฒเฉ‹เจ‚ เจ‡เจธ เจคเจฐเฉ€เจ•เฉ‡ เจจเจพเจฒ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉฐเจฎ เจจเจพเจฒ เจ‡เฉฐเจŸเจฐเฉˆเจ•เจŸ เจ•เจฐเจจเจพ เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจธเฉเจตเจฟเจงเจพเจœเจจเจ• เจนเฉ‹เจตเฉ‡เจ—เจพเฅค

PS เจ‡เจน เจฒเฉ‡เจ– เจ‡เฉฑเจ• เจฌเจนเฉเจค เจนเฉ€ เจธเจฐเจฒ เจ‰เจฆเจพเจนเจฐเจจ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ เจ‡เจธ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจ‰เจชเจฏเฉ‹เจ—เฉ€ เจจเจนเฉ€เจ‚ เจนเฉ‹ เจธเจ•เจฆเจพ, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ…เจธเฉˆเจ‚เจฌเจฒเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจนเฉ‹เจฐ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจตเฉฑเจ–-เจตเฉฑเจ– เจฎเจพเจชเจฆเฉฐเจก เจนเฉเฉฐเจฆเฉ‡ เจนเจจ, เจชเจฐ เจ‡เจธ เจฒเฉ‡เจ– เจฆเจพ เจ‰เจฆเฉ‡เจธเจผ เจ‡เจน เจฆเจฟเจ–เจพเจ‰เจฃเจพ เจธเฉ€ เจ•เจฟ เจธเฉฐเจฆ เจ•เจฟเจตเฉ‡เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ, เจจเจพ เจ•เจฟ เจ‡เฉฑเจ• เจ•เจพเจฐเจœเจธเจผเฉ€เจฒ เจนเฉฑเจฒ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจจเจพเฅค

เจชเฉ€.เจเฉฑเจธ.เจเฉฑเจธ เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจฎเฉˆเจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจฒเจฟเจ–เจฟเจ† เจธเฉ€, เจœเฉ‡ เจ‡เจน เจฒเฉ‡เจ– เจฒเจพเจญเจฆเจพเจ‡เจ• เจนเฉˆ, เจคเจพเจ‚ เจ…เจ—เจฒเจพ เจฒเฉ‡เจ– เจ‡เจธ เจฌเจพเจฐเฉ‡ เจนเฉ‹เจตเฉ‡เจ—เจพ เจ•เฉ‹เจก เจฐเจพเจนเฉ€เจ‚ เจœเฉ‡เจจเจ•เจฟเจจเจธ เจ•เจพเจฐเจœเจพเจ‚ เจฆเฉ€ เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจธเฉฐเจฐเจšเจจเจพ.

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹