sürekli-teslimat
Sürekli Teslimat (CD), kod değişikliklerinin otomatik olarak derlendiği, test edildiği ve üretime sürülmeye hazırlandığı bir yazılım geliştirme uygulamasıdır.
Sürekli Teslimat (CD), yazılımın sürüm sürecini otomatikleştirmeye odaklanan bir yazılım mühendisliği uygulaması ve bir dizi prensiptir. Otomatik testleri geçen her kod değişikliğinin üretime sürülmek üzere otomatik olarak hazırlanmasını sağlayarak Sürekli Entegrasyon (CI) üzerine inşa edilir. Amaç, her zaman dağıtılabilir bir yazılıma sahip olmaktır. Tipik bir CD işlem hattında, kod bir sürüm kontrol sistemine işlenir, bu da otomatik bir derleme ve kapsamlı bir test paketi (birim, entegrasyon, uçtan uca) tetikler. Tüm testler geçerse, yapıt (örneğin, bir konteyner imajı, çalıştırılabilir dosya) otomatik olarak bir hazırlık veya üretim öncesi ortama dağıtılır. Bu noktadan sonra, üretim ortamına son dağıtımdan önce genellikle manuel bir onay veya iş kararı gereklidir. Bu uygulama, her değişiklik küçük, iyi test edilmiş ve kolayca dağıtılabilir olduğundan, yazılım yayınlama ile ilgili riski önemli ölçüde azaltır. Kuruluşların özellikleri daha hızlı yayınlamasına, pazar değişikliklerine hızla yanıt vermesine ve sürüm sürecunu rutin ve öngörülebilir hale getirerek genel yazılım kalitesini ve güvenilirliğini artırmasına olanak tanır.
graph LR
Center["sürekli-teslimat"]:::main
Pre_logic["logic"]:::pre --> Center
click Pre_logic "/terms/logic"
Rel_cicd["cicd"]:::related -.-> Center
click Rel_cicd "/terms/cicd"
Rel_cicd_pipeline["cicd-pipeline"]:::related -.-> Center
click Rel_cicd_pipeline "/terms/cicd-pipeline"
Rel_continuous_integration["continuous-integration"]:::related -.-> Center
click Rel_continuous_integration "/terms/continuous-integration"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧠 Bilgi testi
🧒 5 yaşındaki gibi açıkla
Her zaman ev ödevlerinizin düzenli ve teslim edilmeye hazır olmasını sağlamak gibidir, sadece öğretmenin 'başla' demesini bekler.
🤓 Expert Deep Dive
Sürekli Teslimat, olgun bir DevOps işlem hattında Sürekli Entegrasyon ve Sürekli Dağıtım arasında köprü kuran sondan bir önceki aşamayı temsil eder. CI sık sık kod entegrasyonuna ve otomatik derlemeler ve testler aracılığıyla doğruluğunun doğrulanmasına odaklanırken, CD entegre edilen kodun her zaman yayınlanabilir durumda olmasını sağlayarak bunu genişletir. İşlem hattı tipik olarak yapıt oluşturma, çeşitli üretim dışı ortamlara (örneğin, QA, UAT, Staging) otomatik dağıtım ve performans/güvenlik testlerini içerir. Sürekli Dağıtım'dan temel farkı, üretim sürümünden önce kasıtlı olarak manuel bir kapı eklenmesidir; bu, iş doğrulamasına, A/B testi koordinasyonuna veya kanarya sürüm stratejilerine olanak tanır. Mimari olarak CD, sağlam CI/CD araçlarına (örneğin, Jenkins, GitLab CI, GitHub Actions), kod olarak altyapıya (IaC) ve değişmez altyapı prensiplerine büyük ölçüde dayanır. Dezavantajları, tam Sürekli Dağıtım'a kıyasla potansiyel olarak daha yavaş sürüm hızını içerir, ancak karmaşık sürüm gereksinimleri veya düzenleyici kısıtlamaları olan kuruluşlar için daha fazla kontrol ve risk azaltma sunar.