Jenkins Nasıl Kurulur ve Pipeline Yazılır? Adım Adım Kılavuz

Jenkins Nasıl Kurulur ve Pipeline Yazılır? Adım Adım Kılavuz

Bu blog yazısında, Jenkins’in ne olduğunu, nasıl kurulduğunu ve basit bir pipeline nasıl yazılacağını adım adım öğrenebilirsiniz. Yazılım geliştirme süreçlerinizi otomatikleştirerek, verimliliği artırın.

BFS

Merhaba yazılım geliştirici dostum! DevOps dünyasına adım attığın andan itibaren seni bekleyen pek çok heyecan verici araç var. Ve şüphesiz bunlardan en popüler olanı Jenkins. Eğer otomasyonu seviyorsan, yazılım geliştirme süreçlerini hızlandırmak istiyorsan ve en önemlisi sürekli entegrasyon (CI) ve sürekli teslim (CD) süreçlerini kolaylaştırmak istiyorsan, Jenkins tam sana göre!

Bugün sana Jenkins’in ne olduğunu, nasıl kurulduğunu ve nasıl bir Pipeline yazacağımızı anlatacağım. Bu yazının sonunda Jenkins’i kendi projende kullanabilecek kadar hakim olacaksın.

Jenkins Nedir?

Jenkins, açık kaynaklı bir otomasyon sunucusudur. Çoğunlukla yazılım geliştirme sürecini otomatikleştirmek amacıyla kullanılır. Jenkins ile testleri çalıştırabilir, kodu derleyebilir, uygulamaları dağıtabilir ve çok daha fazlasını yapabilirsin. En büyük avantajı ise tamamen açık kaynaklı olması ve topluluk tarafından desteklenmesidir.

Jenkins, CI/CD süreçlerini yönetmek için mükemmel bir araçtır. Kodunu sürekli olarak entegre etmek (CI) ve her an dağıtıma hazır hale getirmek (CD) isteyen yazılım ekiplerinin vazgeçilmezi olmuştur.

Jenkins Kurulumu

Jenkins’i kurmak oldukça basittir. Ancak bu kurulum, işletim sistemine göre değişiklik gösterebilir. Burada, en yaygın kullanılan Ubuntu işletim sistemi için adımları açıklayacağım. Diğer işletim sistemleri için de benzer adımlar izlenebilir.

# Adım 1: Java’nın Yüklenmesi

Jenkins, Java ile çalışır. İlk adım olarak, Java’yı sistemine yüklemen gerekiyor. Bunun için terminali aç ve aşağıdaki komutu çalıştır:

sudo apt update
sudo apt install openjdk-11-jdk


Java’nın doğru yüklendiğinden emin olmak için aşağıdaki komutu çalıştırabilirsin:

java -version


# Adım 2: Jenkins’i Yüklemek

Java yüklendikten sonra, Jenkins’in kendi paket deposunu eklemelisin. Bunu yapmak için şu adımları izleyebilirsin:

wget -q -O - https://pkg.jenkins.io/keys/jenkins.io.key | sudo tee /etc/apt/trusted.gpg.d/jenkins.asc
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable/ / > /etc/apt/sources.list.d/jenkins.list'
sudo apt update


Şimdi, Jenkins’i yükleyebiliriz:

sudo apt install jenkins


Kurulum tamamlandıktan sonra Jenkins’i başlatabilirsin:

sudo systemctl start jenkins


# Adım 3: Jenkins’i Başlatmak ve İlk Yapılandırma

Jenkins artık çalışıyor. Tarayıcıda http://localhost:8080 adresine giderek Jenkins’in web arayüzüne erişebilirsin. İlk açılışta Jenkins, sana bir güvenlik anahtarı verecek. Bu anahtarı almak için şu komutu çalıştır:

sudo cat /var/lib/jenkins/secrets/initialAdminPassword


Bu anahtarı kopyalayarak web arayüzüne yapıştır ve Jenkins’i kurulum işlemlerine devam et.

Jenkins Pipeline Nedir?

Jenkins Pipeline, Jenkins içerisinde otomatikleştirilmiş iş akışlarını (workflow) tanımladığımız bir özelliktir. Yani, kodu her değiştirdiğinde test, derleme, dağıtım gibi işlemleri otomatik olarak yapabiliriz.

Pipeline’ı yazarken, Declarative Pipeline ve Scripted Pipeline olmak üzere iki farklı yaklaşım vardır. Bugün, en yaygın ve kullanımı kolay olan Declarative Pipeline yöntemini ele alacağız.

Jenkins Pipeline Yazmak

Jenkins’de bir pipeline yazmak için bir `Jenkinsfile` oluşturman gerekir. Bu dosya, pipeline’ın adımlarını tanımlar.

# Adım 1: Basit Bir Pipeline Oluştur

Öncelikle, bir proje oluşturduğunu ve bu projeye bir `Jenkinsfile` eklemen gerektiğini varsayalım. `Jenkinsfile`, Jenkins’in projenin her aşamasını nasıl yöneteceğini belirler.

İşte basit bir Declarative Pipeline örneği:

pipeline {
    agent any
    
    stages {
        stage('Build') {
            steps {
                echo 'Building the project...'
                sh 'echo "Compiling code..."'
            }
        }
        
        stage('Test') {
            steps {
                echo 'Running tests...'
                sh 'echo "Running unit tests..."'
            }
        }
        
        stage('Deploy') {
            steps {
                echo 'Deploying the application...'
                sh 'echo "Deploying to production..."'
            }
        }
    }
}


# Adım 2: Pipeline’ı Çalıştırmak

Yukarıdaki `Jenkinsfile`’ı projenin kök dizinine ekle. Ardından, Jenkins üzerinden yeni bir pipeline projesi oluştur. Pipeline’ı çalıştırdığında, Jenkins, tanımladığın adımları sırayla gerçekleştirecektir.

# Adım 3: Pipeline’a Ekstra Özellikler Eklemek

Jenkins Pipeline, farklı parametreler ve aşamalar ekleyerek daha da geliştirilebilir. Örneğin, bir test aşamasının başarısız olması durumunda otomatik olarak bildirim göndermek veya sadece belirli bir branch üzerinde çalışmak gibi.

İşte, örnek bir Branch Kontrolü eklemek için kullanabileceğin bir kod:

pipeline {
    agent any
    
    stages {
        stage('Build') {
            when {
                branch 'main'
            }
            steps {
                echo 'Building the main branch...'
                sh 'echo "Building application..."'
            }
        }
    }
}


Bu kod, sadece main branch’inde çalışacaktır.

Sonuç

Ve işte bu kadar! Jenkins’i başarıyla kurdun ve basit bir pipeline yazdın. Artık otomasyonun gücünden faydalanabilir, yazılım geliştirme süreçlerini hızlandırabilir ve testleri otomatik hale getirebilirsin. Jenkins ile CI/CD süreçlerini daha verimli hale getirecek pek çok seçenek var. Bu, sadece başlangıç! Unutma, her geçen gün daha fazla özellik keşfedecek ve projelerini çok daha hızlı bir şekilde teslim edebileceksin.

İlgili Yazılar

Benzer konularda diğer yazılarımız

Modern Yazılım Geliştirme Süreçlerinde Yapay Zeka ve Otomasyonun Rolü: 2025’te Yeni Başlangıçlar

Yazılım geliştirme dünyası hızla evriliyor. 2025 yılına adım attığımızda, bu süreçte yapay zeka ve otomasyonun rolü hiç olmadığı kadar önemli hale geldi. Geçmişte yazılım geliştirme yalnızca kod yazmak ve sistemleri test etmekle sınırlıydı. Ancak bugünün...

Yazılım Geliştiriciler İçin Verimli Çalışma Alanı Oluşturmanın İpuçları: En İyi Araçlar ve Yöntemler

Verimli Bir Çalışma Alanı Neden Önemlidir?Yazılım geliştirici olmanın zorluklarından biri de sürekli odaklanmış ve üretken olabilmektir. Bir geliştirici olarak, işlerinizin çoğunu bilgisayar başında geçirirsiniz ve bu süre zarfında verimli bir çalışma...

2025’te Web Sitesi Tasarımı: Yapay Zeka ve Otomasyonun Geleceği

2025 yılına adım atarken, teknolojinin her alanda hızla dönüşüm geçirdiğini görmek kaçınılmaz. Bu değişimlerin en çok etkilediği alanlardan biri ise hiç kuşkusuz web sitesi tasarımı. Web tasarımı sadece görsel estetikten ibaret olmaktan çok daha fazlası...