Koray PEKER
Menu
  • Anasayfa
  • Kütüphane
  • Kategoriler
    • Java
    • Spring
    • Tasarım Şablonları
    • Git
    • Maven
    • ORM Çatıları
    • VCS
    • SDLC
    • DevOps
    • Algoritma
    • Eğitim
    • Diğer
  • Hakkımda
Menu

CI (Continuous integration) ve CD (Continuous Delivery/Deployment)

2 Haziran 201821 Ekim 2018 tarihinde yayımlandı

Sürekli entegrasyon ve sürekli dağıtım, kod kalitesini iyileştirmek ve hızlı teslimat sağlamak için tasarlanmış yazılım geliştirmeye yönelik iki yaklaşımdır. Yeni yazılım özelliklerinin ve düzeltmelerin hızlı bir şekilde teslim edilmesini sağlamak için genellikle birlikte (CI / CD) dağıtılırlar.

İyi ayarlanmış bir CI / CD, kuruluşunuzun müşterilerinize hızlı bir şekilde kaliteli kodu sunmasına yardımcı olacaktır.

Sürekli Entegrasyon (Continuous Integration)

Özcan Acar hocamın makalesinden alıntıdır. Sürekli entegrasyon, kod üzerinde yapılan her değişikliğin ardından, tüm sistemin çalışır durumda olduğunu, yapılan değişikliğin sistemin bazı bölümlerinde kırılmalara yol açmadığını tespit etmek için kullanılan yöntemdir. Kırılmaları tespit edebilmek için birim testlere ihtiyaç duyulmaktadır. Bu testler, yapılan değişikliğin neticesi olarak yeni bir yapı (build) hazırlandıktan sonra otomatik olarak çalıştırılır. Yapılan değişiklik yeni yapının bir parçası olduğu için, testlerde oluşan hatalar, yapılan değişikliğin sistemi kırdığı anlamına gelmektedir. Bu durumdan tüm programcılar haberdar edilerek, hatanın bir an önce giderilmesi ve testlerin her zaman olumlu sonuç vermesi sağlanır. Sürekli entegrasyon ile programcılar tarafından kod üzerinde yapılan çalışmalar neticesinde her zaman çalışır bir sürümün oluşması sağlanmış olur.

 

Sürekli Teslimat / Dağıtım (Continuous Delivery / Deployment)

Sürekli Teslimat Sürekli Entegrasyonun doğal bir uzantısıdır.

Sürekli Teslimat, başarılı olan bir yapıyı (build) bir ortama atmanın otomatik bir yoludur. Burada teslimat ile dağıtım arasında küçük bir nüans vardır. Teslimat manual olarak, dağıtım ise otomatik olarak yapılmasıdır. Sürekli teslimat düzgün bir şekilde uygulandığında, müşteriler her zaman standartlaştırılmış bir test sürecinden geçmiş hazır yapıya sahip olacaklardır.

Netflix, tamamen otomatik bir sürekli dağıtım sistemine sahip olduğu için bilinir. Dağıtımlar otomatik olduğundan ve herhangi bir zamanda gerçekleşebileceğinden, uygulamanız, yeni bir sürüm dağıtıldığında geçici kesintilerden etkilenmeyecek şekilde tasarlanmalıdır.

Popüler CI/CD Uygulamaları

  • Jenkins
  • Bamboo
  • GitLab
  • Travis CI
  • TeamCity
  • Shippable
  • CircleCI
  • Codeship
  • Codefresh
  • Microsoft VSTS
  • GoCD

1 yorum yapıldı “CI (Continuous integration) ve CD (Continuous Delivery/Deployment)”

  1. Geri bildirim: CI / CD NE(DEGIL)DIR? – Gemisinin nuh'u

Bir yanıt yazın Yanıtı iptal et

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

POPÜLER YAZILAR

  • Çalışma Masam
  • Bir Yazılımcının Sırt Çantası
  • Modern Veri Tabanları
  • CI (Continuous integration) ve CD (Continuous Delivery/Deployment)
  • NullPointerException’dan Kaçış
  • Java Branching Statements (Dallanma İfadeleri)
  • İlk işime veda :(
  • Yük Testi ve SoapUI
  • Project : Lombok
  • Enumeration nedir ?

Ara

Son Yazılar

  • Çalışma Masam
  • Apache Kafka
  • Postman API’ları Görselleştirme
  • MongoDB Cheat Sheet
  • Splunk 101 – Giriş
  • Yük Testi ve SoapUI
  • Modern Veri Tabanları
  • Senior Stajyer ?!
  • API Dokümantasyon Önemi ve Swagger
  • Kod Tekrarı(Code Duplication) ve DRY

TAKİP ET

©2025 Koray PEKER