DevOps/CI | CD

CI์—๋Š” ๋ฌด์—‡์ด ํ•„์š”ํ• ๊นŒ? 1. ๋ฒ„์ „ ๊ด€๋ฆฌ ๋„๊ตฌ CI์—๋Š” git๊ณผ ๊ฐ™์€ ๋ฒ„์ „ ๊ด€๋ฆฌ ๋„๊ตฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ๋ฒ„์ „ ๊ด€๋ฆฌ ๋„๊ตฌ๊ฐ€ ์†Œ์Šค์ฝ”๋“œ์˜ ์ˆ˜์ •๊ณผ ๋ฐฑ์—…์„ ์ž๋™ํ™” ํ•  ์ˆ˜ ์žˆ๊ณ , ์—ฌ๋Ÿฌ๋ช…์ด ๊ณต๋™์œผ๋กœ ๊ฐœ๋ฐœํ•œ ๋‚ด์šฉ์„ ๋™๊ธฐํ™”ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ด ๊ด€๋ฆฌํ•˜์ง€ ์•Š๋Š” ์†Œ์Šค์ฝ”๋“œ๋Š”, ๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ ์ž๋™ํ™”๊ฐ€ ๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— CI๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋ฌด์˜๋ฏธํ•˜๊ฒŒ ๋œ๋‹ค. ๐Ÿ“ ์˜ˆ) git, Subversion, Mercurial ๋“ฑ 2. CI ๋„๊ตฌ(CI tool) CI ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด, ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰์„ ํ†ตํ•ด ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์—์„œ ์†Œ์Šค์ฝ”๋“œ๋ฅผ ์ฃผ๊ธฐ์ ์œผ๋กœ ํด๋ง(polling)ํ•˜๊ณ , ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ฑฐ๋‚˜, ๋นŒ๋“œ๋ฅผ ํ•˜๋Š” ๋“ฑ phthon, groovy, shell๊ณผ ๊ฐ™์€ ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ CI..
๐Ÿ“ ์ปดํŒŒ์ผ complier๋ฅผ ํ†ตํ•ด java์™€ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ๊ธฐ๊ณ„๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์–ธ์–ด๋กœ ๋ฒˆ์—ญํ•ด์ค€๋‹ค. ๐Ÿ“ ๋นŒ๋“œ(Build) ์†Œ์Šค์ฝ”๋“œ ํŒŒ์ผ์„ ์‹คํ–‰๊ฐ€๋Šฅํ•œ ์†Œํ”„ํŠธ์›จ์–ด ์‚ฐ์ถœ๋ฌผ๋กœ ๋งŒ๋“œ๋Š” ์ผ๋ จ์˜ ๊ณผ์ • # Build Tool preprocessing → complie → packaging → testing → distribution java์—์„œ๋Š” maven, gradle๊ณผ ๊ฐ™์€ build ๋„๊ตฌ๋ฅผ ํ†ตํ•ด ์ปดํŒŒ์ผ๊ณผ ํ•จ๊ป˜ ์†Œ์Šค์ฝ”๋“œ ํŒŒ์ผ์„ .jar, .war๊ณผ ๊ฐ™์€ ๊ฒƒ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋นŒ๋“œ๋„ ํ•จ๊ป˜ ์ˆ˜ํ–‰ ๐Ÿ“ ๋ฐฐํฌ ๋ฐฐํฌ๋ฅผ ํ•œ ์ƒํ™ฉ์—์„œ ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š๊ฒŒ ๋™์ž‘ํ•˜์—ฌ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์˜€์„ ๋•Œ, ๊ฐœ๋ฐœ์ž๋“ค์€ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ํ•œ๋‹ค. ์ด ๋•Œ, ๋‹ค์‹œ complie, build, ๋ฐฐํฌํ•˜๋Š” ๊ณผ์ •์„ ํ†ตํ•ด ์ˆ˜์ •๋œ ์ฝ”๋“œ๊ฐ€ ์ œ๋Œ€๋กœ ๋™์ž‘ํ•˜๋Š”์ง€ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•ด..
chaerlo127
'DevOps/CI | CD' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก