Continuous Integration (CI): Geliştiricilerin kodlarını sık sık (günde birkaç kez) merkezi bir depoya entegre ettikleri bir yazılım geliştirme pratiğidir. Her entegrasyon otomatik olarak test edilir.
Continuous Deployment (CD): Entegre edilen kodun otomatik olarak çeşitli testlerden geçirildikten sonra üretim ortamına (production) otomatik olarak dağıtılmasıdır.
Continuous Delivery (CD): ise kodun üretim ortamına otomatik olarak dağıtılması yerine manuel onay gerektirebilir.
CI/CD Pipeline Süreçleri Adım Adım;
Kod Deposu (Source Control):
Kodun merkezi bir depoda (örneğin GitHub, GitLab) tutulduğu yerdir.
Best Practice: Versiyon kontrol sistemi kullanmak ve sık sık commit yapmak.
Kod Kontrolü (Code Review):
Kodun diğer takım üyeleri tarafından incelenmesi.
Best Practice: Kod incelemelerini otomatikleştiren araçlar kullanmak (örneğin, Pull Request ile kod gözden geçirme).
Otomatik Build (Automated Build):
Kod depoya itildiÄŸinde (push edildiÄŸinde) otomatik olarak derlenir.
Best Practice: Tekrarlanabilir build süreçleri oluşturmak ve bağımlılıkları yönetmek.
Otomatik Test (Automated Testing):
Unit test, entegrasyon testleri ve diğer testler otomatik olarak çalıştırılır.
Best Practice: Test kapsamını yüksek tutmak ve testleri hızlı çalışacak şekilde optimize etmek.Sürekli
Entegrasyon (Continuous Integration):
Kod değişiklikleri sık sık entegre edilir ve otomatik testlerden geçirilir.
Best Practice: Entegre edilen her kod parçasının tüm testleri geçmesini sağlamak.
Dağıtım (Deployment):
Testlerden geçen kod, staging veya production ortamına dağıtılır.
Best Practice: Dağıtımı otomatikleştirmek ve canary deployment, blue-green deployment gibi stratejiler kullanmak.
Monitöring ve Geri Bildirim (Monitoring and Feedback):
Üretim ortamındaki uygulamanın performansı ve hataları izlenir.
Best Practice: Uygulama performansını izlemek için monitöring araçları (örneğin, Prometheus, Grafana) kullanmak ve hatalar için hızlı geri bildirim almak.
Devamı ve daha fazla best practice süreçleri için buradan PDF download edebilirsiniz.