Jenkins – I

   Çok bulaşmadığım bir Devops alanı kalmıştı bilişim dünyasında. Bir arkadaş tavsiyesiyle Jenkins ile bu alana da hızlı bir bir giriş yapmak istedim 🙂 2004 yılında Hudson adı ile ilk kod satırları java ile Kohsuke Kawaguchi tarafından yazılmaya başlanan ve bizim şimdilerde Jenkins olarak bildiğimiz open source Continuous Integration aracını biraz tanımak ve öğrendiklerimi sizinle paylaşmak istedim bu yazımda.

   Jenkins projesinin sahibi Kohsuke yazdığı kodlarda genellikle build’leri bozan kişinin kendisi olduğunu ve arkadaşlarından önce kendi hatalarını tespit edebilmek için de bir programa ihtiyaç duyduğunu dile getiriyor. Jenkins ile amacının basit bir işi gerçekleştiren basit bir araç geliştirmek olduğunu söylese de sonrasında hızlı bir şekilde gelişen projesinin CI Server pazarında lider konuma yükseldiğini ifade ediyor.

Benim amacım Jenkins Server kurulumu ve konfigürasyonundan çok mantığını ve ne işimize yarayacağını öğrenmek. Jenkins konusunda detaylı bilgi almak istiyorsanız Jenkins: The Definitive Guide: Continuous Integration for the Masses adlı kitabı okumanızı öneriyorum.

İyi okumalar.

Jenkins Nedir ?

Jenkins yazılım geliştirme süreçlerindeki (building, testing, delivering, deploying) tüm görevlerin  (–tabii ki kod yazımı hariç 🙂 — AI bunu da yapacak galiba )  otomatikleştirilmesi için kullanılan JRE yüklü herhangi bir makinede çalıştırılabilen açık kaynak kodlu otomasyon sunucusuna verilen ad (automation server).

Continuous Integration ?

   Jenkins’e başlamadan önce Continuous Integration’dan (CI)  kısaca bahsedelim. Aslında CI yazılım geliştirirken geliştirmenin her aşamasında projeyi çalışabilir halde tutmak için geliştirilmiş bir disiplin. CI günümüzde yazılım geliştirme için kilit bir öneme sahip. Organizasyonların CI ile tanışmasından sonra yazılım geliştirme süreçleri hakkındaki düşüncelerde radikal değişimler oldu.  CI ile geliştirilen kodun planlanmış basit otomatik  build işleminden production ortamındaki dağıtımına kadar (development to deployment)  olan süreçte bug’ların tespiti ve giderilmesinden süreçlerin proje bazında yönetilebileceği dashboard’a kadar bir çok yenilik ve ilerleme kaydedildi. Ne kadar küçük olursa olsun profesyonel bir geliştirme ekibinin CI artık olmazsa olmazı.

 

 

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir