Skip to content

Latest commit

Β 

History

History
56 lines (31 loc) Β· 2.64 KB

CICD.md

File metadata and controls

56 lines (31 loc) Β· 2.64 KB

CI와 CD

CI와 CDλŠ” μ• μžμΌ 개발 방법이 λŒ€μ„Έκ°€ λ˜λŠ” μš”μ¦˜μ— λ”μš± μ€‘μš”ν•œ κ°œλ…μœΌλ‘œ, 보톡 DevOps κ°œλ°œμžλ“€μ΄ ν•˜λŠ” 일듀이닀.

CI/CDλŠ” μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ°œλ°œν•  λ•Œ (μ½”λ“œμ˜ 톡합 및 ν…ŒμŠ€νŠΈ β†’ 배포 μžλ™ν™”)λ₯Ό 이뀄주며, 보톡 두 과정이 μžλ™ν™” λ˜μ–΄ μ—°κ²°λ˜λ©°, 이λ₯Ό CI/CD νŒŒμ΄ν”„λΌμΈμ΄λΌκ³  λΆ€λ₯Έλ‹€.

CI

CIλŠ” Continuous Integration을 μ˜λ―Έν•˜λ©°, 지속적인 톡합(μ½”λ“œ)μ΄λΌλŠ” 의미λ₯Ό 가진닀.

μ—¬λŸ¬ κ°œλ°œμžκ°€ ν•˜λ‚˜μ˜ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ μž‘μ—…ν•  λ•Œ μΆ©λŒμ„ ν”Όν•˜λŠ”κ²ƒμ΄ 정말 μ€‘μš”ν•˜λ‹€.

μ΄λ•Œ, CIλ₯Ό μ‚¬μš©ν•˜λ©΄ 각 κ°œλ°œμžκ°€ μž‘μ„±ν•œ μ½”λ“œλ“€μ΄ ν•˜λ‚˜μ˜ 곡유 λ ˆν¬μ— μžλ™μœΌλ‘œ λΉŒλ“œ 및 ν…ŒμŠ€νŠΈλ₯Ό κ±°μΉ˜λ©΄μ„œ μΆ©λŒμ„ λ°°μ œν•˜κ²Œ ν†΅ν•©λœλ‹€.

즉, μ½”λ“œμ˜ μžλ™μ μΈ λΉŒλ“œ β†’ ν…ŒμŠ€νŠΈ β†’ 톡합(병합)이 이루어진닀.

μ΄λ•Œ CI의 핡심은 'μžλ™ν™”'에 있으며 μ΄λŠ” λ‹€μ–‘ν•œ νˆ΄λ“€(ex. Jenkins)둜 μ΄λ£¨μ–΄μ§ˆ 수 μžˆλ‹€.

CD

CD의 μ•½μžλŠ” λ‹€μŒ 두 κ°€μ§€μ˜ λœ»μ„ 가지고 μžˆμ„ 수 μžˆλ‹€.

  • Continuous Delivery
    • 지속적인 μ„œλΉ„μŠ€ 제곡
  • Continuous Deployment
    • 지속적인 배포
  • 두 의미의 핡심적인 μ°¨μ΄λŠ” 고객듀이 μ‚¬μš©ν•˜λŠ” ν”„λ‘œλ•μ…˜ ν™˜κ²½κΉŒμ§€μ˜ 진행이 μžλ™ν™” λ˜μ–΄μžˆλŠ”μ§€ 여뢀에 μžˆλ‹€.

μ˜λ―Έμ™€ 상관없이 CDλŠ” CIκ°€ μ„ ν–‰λœ 이후 μ§„ν–‰λ˜λŠ” 단계닀.

Continuous Delivery

CI λ‹¨κ³„μ—μ„œ κ°œλ°œμžλ“€μ΄ μž‘μ„±ν•œ μ½”λ“œλ“€μ΄ λΉŒλ“œ, ν…ŒμŠ€νŠΈ, 병합을 λ§ˆμΉœλ‹€λ©΄

ν•΄λ‹Ή μ½”λ“œκ°€ 깃헙같은 곡유 λ ˆν¬κΉŒμ§€ μžλ™μœΌλ‘œ μ—…λ‘œλ“œκ°€ λ˜λŠ” 것을 μ˜λ―Έν•œλ‹€.

λ‹€λ§Œ, μ΄λ ‡κ²Œ μˆ˜μ •λœ μ½”λ“œλ₯Ό ν”„λ‘œλ•μ…˜ ν™˜κ²½μ—κΉŒμ§€ λ°°ν¬ν•˜λŠ” 것은 μˆ˜λ™μœΌλ‘œ ν•΄μ€˜μ•Ό ν•œλ‹€.

Continuous Deployment

Continuous Delivery와 μ˜λ―ΈλŠ” κ°™μœΌλ©°, 지속적 μ„œλΉ„μŠ€ 제곡의 μ˜λ―Έμ—μ„œ ν™•μž₯λ˜μ–΄

μΆ”κ°€μ μœΌλ‘œ κ³ κ°λ“€μ˜ ν”„λ‘œλ•μ…˜ ν™˜κ²½μ—κΉŒμ§€ μžλ™μœΌλ‘œ λ°°ν¬λ˜λŠ” 것을 μ˜λ―Έν•œλ‹€.

정말 이상적인 사둀라면 μ½”λ“œλ₯Ό μˆ˜μ •ν•˜κ³  λͺ‡λΆ„ λ‚΄λ‘œ μˆ˜μ •λœ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μžλ™μœΌλ‘œ μ‹€ν–‰ν•΄λ³Ό 수 μžˆλŠ” 것을 μ˜λ―Έν•œλ‹€.

CI & CD νŒŒμ΄ν”„λΌμΈ

이처럼 CI와 CDλŠ” λ—„λž˜μ•Ό λ—„ 수 μ—†λŠ” 관계이며, 보톡 CIλŠ” CD에 μ„ ν–‰ν•΄μ„œ 이루어져야 ν•œλ‹€.

이 두 과정을 μžλ™ν™” ν•˜μ—¬ ν•˜λ‚˜λ‘œ 이어놓은 것을 νŒŒμ΄ν”„λΌμΈμ΄λΌκ³  ν•œλ‹€.

μ•„λž˜ 그림에 잘 λ‚˜μ™€ μžˆλ‹€.

https://www.redhat.com/cms/managed-files/ci-cd-flow-desktop_1.png

좜처: https://www.redhat.com/ko/topics/devops/what-is-ci-cd