Skip to content

Latest commit

Β 

History

History
46 lines (31 loc) Β· 2.58 KB

CI_CD.md

File metadata and controls

46 lines (31 loc) Β· 2.58 KB

CI / CD

ν˜„μž¬μ˜ 배포 νŠΈλ Œλ“œλŠ” μž‘μ€ κΈ°λŠ₯ λ‹¨μœ„λ‘œ 자주 μ½”λ“œλ₯Ό 톡합 및 λ°°ν¬ν•˜λŠ” CI(Continuous Integration) / CD(Continuous Deployment) κ°€ λŒ€μ„Έμ΄λ‹€. μƒˆλ‘œ κ°œλ°œν•œ κΈ°λŠ₯, 버그λ₯Ό μˆ˜μ •ν•œ 것을 real μ„œλΉ„μŠ€μ— ν†΅ν•©ν•˜κΈ° μœ„ν•΄μ„œλŠ”

  1. μ†ŒμŠ€μ½”λ“œλ₯Ό ν…ŒμŠ€νŠΈν•˜κ³ 
  2. λΉŒλ“œν•˜κ³ 
  3. μ»¨ν…Œμ΄λ„ˆλ‘œ λ§Œλ“€μ–΄
  4. 톡합 μ €μž₯μ†Œμ— 전달 ν›„
  5. μ„œλΉ„μŠ€ 무쀑단 배포 etc

λ“±μ˜ 과정이 ν•„μš”ν•˜λ‹€.

CI, CDλ₯Ό 톡해 μ• ν”Œλ¦¬μΌ€μ΄μ…˜ κ°œλ°œλ‹¨κ³„λ₯Ό μžλ™ν™”ν•˜μ—¬ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ 보닀 짧은 주기둜 κ³ κ°μ—κ²Œ μ œκ³΅κ°€λŠ₯ν•˜λ‹€.

CIλŠ” ν…ŒμŠ€νŠΈ, λΉŒλ“œ, Dockerizing, μ €μž₯μ†Œμ— μ „λ‹¬κΉŒμ§€ ν”„λ‘œλ•μ…˜ ν™˜κ²½μœΌλ‘œ μ„œλΉ„μŠ€λ₯Ό 배포할 수 μžˆλ„λ‘ μ€€λΉ„ν•˜λŠ” ν”„λ‘œμ„ΈμŠ€μ΄λ‹€. CDλŠ” μ €μž₯μ†Œλ‘œ μ „λ‹¬λœ ν”„λ‘œλ•μ…˜ μ„œλΉ„μŠ€λ₯Ό μ‹€μ œ μ‚¬μš©μžλ“€μ—κ²Œ λ°°ν¬ν•˜λŠ” ν”„λ‘œμ„ΈμŠ€λ₯Ό μ˜λ―Έν•œλ‹€.

CI / CD 툴 비ꡐ

Travis

μž₯점 단점
github과의 연동 Jenkins에 λΉ„ν•΄ 적은 ν”ŒλŸ¬κ·ΈμΈ μ’…λ₯˜
yml을 ν†΅ν•œ μ‰¬μš΄ μ„€μ • 유료 μ„œλΉ„μŠ€λ₯Ό μ‚¬μš©ν•˜λ©΄ 가격이 λΉ„μŒˆ
레퍼런슀 λ‹€μ–‘ 느린 속도
Travisκ°€ μ•Œμ•„μ„œ VM으둜 ν˜ΈμŠ€νŒ…μ„ ν•΄μ£ΌκΈ° λ•Œλ¬Έμ— 직접 μ„œλ²„λ₯Ό μš΄μ˜ν•  ν•„μš”κ°€ μ—†λ‹€
λͺ¨λ“  job이 독립적

Jenkins

μž₯점 단점
무료! λ‹€μ–‘ν•œ ν”ŒλŸ¬κ·ΈμΈ -> ν”ŒλŸ¬κ·ΈμΈ μ§€μ˜₯..
μ‚¬μš©μžλ“€μ΄ λ§Žμ•„ λ ˆνΌλŸ°μŠ€κ°€ λ‹€μ–‘ ν”„λ‘œμ νŠΈ 규λͺ¨κ°€ μž‘μ€ 경우 λ¦¬μ†ŒμŠ€ λ‚­λΉ„ λ°œμƒ
ν˜ΈμŠ€νŒ… 직접 ν•΄μ•Όν•˜λ―€λ‘œ κ΄€λ ¨λœ λͺ¨λ“  λΆ€λΆ„ 관리 κ°€λŠ₯ -> μ„œλ²„ 운영 및 관리 λΉ„μš© λ°œμƒ

Github Action

λ‚΄κ°€ μ‚¬μš©ν–ˆμ„ λ•ŒλŠ” λ”±νžˆ 단점..이라고 생각할 만 ν•œ 것은 μ—†μ—ˆλ‹€. 였히렀 repoμ—μ„œ λ°”λ‘œ end-to-end둜 μ‹€ν–‰ν•  수 있고, 섀정도 비ꡐ적 κ°„νŽΈν•˜λ©° cron 섀정을 톡해 μŠ€μΌ€μ€„λ§κΉŒμ§€ κ°€λŠ₯ν•˜κΈ° λ•Œλ¬Έμ— 맀우 μœ μš©ν•˜λ‹€κ³  μƒκ°ν•˜μ˜€λ‹€. 개인 ν”„λ‘œμ νŠΈλ₯Ό μˆ˜ν–‰ν•˜λ©΄μ„œ 맀일 야ꡬ κ²½κΈ° μΌμ •μ΄λ‚˜ μˆœμœ„μ— λŒ€ν•œ μŠ€ν¬λž˜ν•‘μ΄ ν•„μš”ν–ˆλŠ”λ°, github action의 크둠을 μ„€μ •ν•˜μ—¬ 맀일 νŠΉμ • μ‹œκ°„μ— μŠ€ν¬λž˜ν•‘ ν•˜λ„λ‘ μžλ™ν™”ν•  수 μžˆμ—ˆλ‹€. λ˜ν•œ 속도도 비ꡐ적 λΉ λ₯Έ 편이며 marketplace에 λ‹€μ–‘ν•œ action 슀크립트 듀이 있기 λ•Œλ¬Έμ— νŠΉμ • κΈ°λŠ₯을 μžλ™ν™”ν•˜κΈ°μ— μš©μ΄ν•˜λ‹€! λ‚˜ 같은 κ²½μš°μ—” marketplaceλ₯Ό 톡해 얻은 yml νŒŒμΌμ„ 톡해 TIL readmeλ₯Ό μžλ™ν™” 쀑이닀.

좜처