İçeriğe geç
Teklif al

Hizmet · Bulut, DevOps ve veri

CI/CD kurulumu

Canlıya çıkış hâlâ bir kişinin sunucuya bağlanıp dosya kopyalamasına dayanıyorsa her sürüm bir risktir. Adımlar her seferinde biraz farklı uygulanır, testler atlanır, geri dönmek gerektiğinde eski sürümün nerede olduğu bilinmez ve o kişi izinliyken yayın durur.

Kategori
Bulut, DevOps ve veri
Çalışma modeli
Proje bazlı · Bakım ve destek
Hizmet bölgesi
Türkiye geneli, uzaktan ve yerinde

CI/CD kurulumu hizmetimizde kodun depoya girdiği andan canlıya çıktığı ana kadar her adımı otomatik bir hatta toplarız: derleme, test, güvenlik taraması, paketleme, test ortamına dağıtım, onay ve canlıya geçiş. Her çalıştırma kayıt altındadır; bir adım başarısız olursa hat durur ve ekibe haber verir.

Devamını okuDaha az göster

Kurulum, ekibinizin kullandığı depoya ve dağıtım hedefine göre şekillenir; hedef tek bir sunucu da olabilir, konteyner kümesi de. Hattı yalnızca kuran kişinin değil tüm ekibin okuyup değiştirebilmesi için tanımları kod olarak depoda tutar ve belgelendiririz.

Hangi ekipler için CI/CD kurulumu gerekli

Aşağıdaki işaretler, yayın sürecini otomatikleştirmenin zamanının geldiğini gösterir.

  • Sürümü elle ve çoğunlukla gece ya da hafta sonu yapan yazılım ekipleri
  • Yayınların tek bir kişiye bağlı olduğu ve o kişi yokken işlerin beklediği şirketler
  • Birden fazla geliştiricinin aynı kod tabanında çalışıp birleştirme sorunlarıyla uğraştığı ürün ekipleri
  • Web, mobil ve arka uç bileşenlerini ayrı ayrı yayınlayıp sürüm uyumsuzluğu yaşayan firmalar
  • Müşteri ya da denetçi isteğiyle her değişikliğin kim tarafından, ne zaman yayınlandığını gösterebilmesi gereken kuruluşlar

Elle yayın yapan ekiplerin yaşadığı sorunlar

Aynı nedenler farklı ekiplerde benzer biçimde tekrar eder.

  • 01

    Bilginin kişiye bağlı kalması

    Hangi dosyanın nereye kopyalanacağını, hangi komutların hangi sırayla çalışacağını yalnızca bir kişi bilir. İzin ya da ayrılık, yayın sürecini durdurur.

  • 02

    Makineden makineye fark

    Geliştiricinin bilgisayarında çalışan kod, sunucudaki farklı bağımlılık sürümleri yüzünden canlıda hata verir.

  • 03

    Atlanan testler

    Zaman baskısı altında testler elle çalıştırılır ya da hiç çalıştırılmaz; hata canlıda bulunur.

  • 04

    Geri dönememe

    Önceki sürümün paketi saklanmadığı için hatalı bir yayından dönmek saatler alır.

  • 05

    Dağınık gizli bilgiler

    Parolalar ve anahtarlar betiklerde, sohbet geçmişinde ya da herkesin görebildiği dosyalarda durur.

Bir CI/CD kurulumu hizmetinde neler teslim edilir

Teslim edilen şey bir araç değil, ekibinizin her gün kullanacağı çalışan bir hattır.

  • 01

    Otomatik derleme ve test

    Her birleştirme isteğinde birim ve entegrasyon testleri ile kod biçimi ve statik analiz kontrolleri çalışır; geçmeyen değişiklik ana dala giremez.

  • 02

    Ortam hattı

    Geliştirme, test ve canlı ortamları arasında aynı paket ilerler. Her ortamda yeniden derleme yapılmaz, yalnızca ayarlar değişir.

  • 03

    Dağıtım stratejisi

    Kademeli güncelleme, mavi-yeşil ya da kanarya yöntemlerinden uygun olanı seçilir. Veritabanı değişiklikleri hatta bir adım olarak yer alır; önceki sürüme dönüş yolu önceden denenir.

  • 04

    Güvenlik kapıları

    Bağımlılık açıkları, kod içinde unutulmuş gizli anahtarlar ve konteyner imajları taranır; ciddi bulgu çıkan sürüm canlıya geçmez.

  • 05

    Görünürlük

    Kimin neyi ne zaman yayınladığı, hangi testin neden başarısız olduğu ve yayın notları ekip kanalınıza düşer.

Hattın bağlandığı araçlar

Ekibinizin zaten kullandığı araçları tercih ederiz; amaç araç değiştirmek değil, akışı düzenlemektir.

  • 01

    Kod depoları

    GitHub, GitLab, Bitbucket veya Azure Repos üzerinde dal kuralları ve birleştirme onayları tanımlanır.

  • 02

    Hat araçları

    GitHub Actions, GitLab CI/CD, Jenkins, Azure Pipelines veya Bitbucket Pipelines kullanılabilir; seçim depo, ekip alışkanlığı ve gizlilik gereksinimine göre yapılır.

  • 03

    Paket ve imaj kayıt defterleri

    Derlenen paketler ve konteyner imajları sürüm etiketiyle saklanır; böylece her yayın yeniden üretilebilir.

  • 04

    Dağıtım hedefleri

    Sanal sunucu, Docker Compose, Kubernetes, yönetilen uygulama platformları ve sunucusuz işlevlerin yanında mobil uygulama derlemelerinin mağaza test kanallarına gönderimi de otomatikleştirilebilir.

  • 05

    Gizli bilgi kasası ve bildirimler

    Parolalar ve API anahtarları kasada tutulur; sonuçlar Slack, Teams, e-posta veya iş takip aracınıza iletilir.

Hat kurulumu nasıl ilerler

  1. Adım 01

    Mevcut akışın haritası

    Kodun bugün nasıl canlıya çıktığını, kimlerin hangi adımı yaptığını ve nerede sorun yaşandığını birlikte çıkarırız.

  2. Adım 02

    Hat tasarımı

    Ortamları, dal stratejisini, dağıtım yöntemini ve onay noktalarını yazar, sizinle onaylarız.

  3. Adım 03

    Derleme ve test hattı

    Önce her değişiklikte çalışan derleme, test ve kod kontrol aşamalarını kurarız.

  4. Adım 04

    Dağıtım hattı

    Test ortamına, ardından onaylı olarak canlıya dağıtımı otomatikleştirir, geri dönüşü deneriz.

  5. Adım 05

    Güvenlik ve gizli bilgiler

    Taramaları ekler, gizli bilgileri kasaya taşır, yetkileri en aza indiririz.

  6. Adım 06

    Devir ve bakım

    Hattı ekibinize anlatır ve belgeleriz; isterseniz bakım ve destek kapsamında güncel tutarız.

Araç seçimi ve CI/CD kurulumu yaklaşımımız

Hattı, bir kez derleyip her ortama aynı çıktıyı dağıtma ilkesiyle kurarız; böylece test edilen paket ile canlıya çıkan paket aynı olur. Hat tanımları kod olarak depoda durur, değişiklikleri incelemeden geçer ve geçmişi izlenir.

Devamını okuDaha az göster

Hat uzadıkça ekip onu atlamaya başlar. Bu yüzden hızlı geri bildirim veren kontrolleri öne alır, önbellek ve paralel çalıştırmadan yararlanır, yalnızca değişen bileşeni derleriz. Bazen geçip bazen kalan güvenilmez testler hattı yavaşlatır ve güveni azaltır; bunları ayıklamak kurulumun parçasıdır.

Bulut hesaplarına uzun ömürlü anahtar yerine geçici kimlik bilgileriyle (OIDC) bağlanır, gizli değerlerin günlüklere sızmasını engelleriz. Canlıya dağıtım yetkisi sınırlı kişilerde olur ve her dağıtım denetim kaydı bırakır. Kurulumdan sonra araç güncellemeleri ve hat bakımı için bakım ve destek modeliyle devam edebiliriz.

Bu hizmette çalışma modelleri

  • 01

    Proje bazlı

    Sabit kapsam, sabit fiyat ve belirli teslim tarihi

    Kapsamı belli, teslim tarihi olan işler için.

    • Yazılı kapsam ve kabul ölçütleri
    • Sabit fiyat ve belirli teslim tarihi
    • Teslim ve kabul adımları sözleşmede
    Bu modelle teklif alın: Proje bazlı
  • 02

    Bakım ve destek

    Aylık sözleşmeli, SLA'lı bakım, destek ve geliştirme saati

    Yayındaki bir sistemin sürekliliği için.

    • Aylık sözleşme ve SLA
    • İzleme, güncelleme ve hata düzeltme
    • Aylık geliştirme saati
    Bu modelle teklif alın: Bakım ve destek

CI/CD kurulumu hakkında sık sorulan sorular

CI/CD kurulumu fiyatları hangi kalemlere göre değişir?

Dağıtılacak uygulama sayısı, ortam sayısı, mevcut test altyapısı, tercih edilen araç ve dağıtım hedefi belirleyicidir. Kapsam yazılı çıkarılır ve proje sabit kapsamla yürütülür.

Hiç otomatik testimiz yoksa CI/CD yine de işe yarar mı?

Yarar. Otomatik derleme, kod kontrolü ve tekrarlanabilir dağıtım testsiz de değer katar. Temel bir duman testiyle başlanır, test kapsamı zamanla genişletilir.

CI/CD için Kubernetes kullanmak şart mı?

Değil. Tek bir sunucuya güvenli biçimde dağıtım yapan bir hat da CI/CD'dir. Kubernetes, yalnızca uygulamanızın ihtiyacı olduğunda dağıtım hedefi olur.

GitHub Actions, GitLab CI ve Jenkins arasında nasıl seçim yapılır?

Kodunuz hangi platformdaysa onun yerleşik hat aracı genellikle en az bakım yükü getirir. Jenkins; yerel ağda çalışması ya da özel eklenti gerektirmesi gibi koşullarda mantıklıdır.

Canlıya çıkış tamamen otomatik mi olacak?

İsteğe bağlı. Test ortamı otomatik, canlı ortam ise bir onayla ilerleyen yapı sık tercih edilir. Ekip olgunlaştıkça onay adımı da otomatik kontrollere devredilebilir.

CI/CD kurulumu firması olarak kodumuza erişmeniz gerekir mi?

Evet, hattı kurabilmek için depoya erişim gerekir. Erişim kapsamı ve gizlilik koşulları sözleşmede yazılı olarak belirlenir; yetki yalnızca gereken depolarla sınırlı tutulur.

Hat bozulduğunda ya da araç güncellendiğinde kim ilgilenir?

Hattı ekibinize devrederiz. İsterseniz bakım ve destek anlaşmasıyla güncellemeleri ve arızaları biz üstleniriz.

İlgili hizmetler ve sayfalar

CI/CD kurulumu için teklif alın

Kısa bir ön görüşmede ihtiyacınızı dinleyip kapsamı, çalışma modelini ve takvimi yazılı olarak paylaşırız.

+90 552 579 93 21