Jenkinsfile ile Kod Olarak Jenkins Pipeline
Derleme, test ve dağıtım aşamalarını deponuzda tutulan bir Jenkinsfile içinde bildirimsel olarak tanımlayın; böylece pipeline, uygulamayla birlikte sürümlenir.
Jenkinsfile ile Kod Olarak Jenkins Pipeline, CoddyKit'te ücretsiz bir DevOps Bootcamp dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, DevOps Bootcamp öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. DevOps Bootcamp kursu toplamda 4 dersten oluşur.
Kod olarak işlem hattı
Jenkins kullanıcı arayüzünde işleri elle yapılandırmak yerine, tüm işlem hattını deponuzda saklanan bir Jenkinsfile içinde tanımlayın. İşlem hattı koda dönüşür: incelenebilir, sürümlenebilir ve taşınabilir olur.
Bildirimsel ve betik tabanlı
Jenkins iki söz dizimi sunar. Bildirimsel işlem hatları yapılandırılmış ve yeni başlayanlar için uygundur; betik tabanlı işlem hatları ise tam Groovy kullanır. Biz bildirimsel yapıya odaklanacağız.
İşlem hattı bloğu
Her bildirimsel Jenkinsfile, bir agent (çalıştığı yer) ve stages içeren bir pipeline bloğuyla başlar.
pipeline {
agent any
stages {
stage('Build') {
steps { echo 'Building...' }
}
}
}Aşamaları tanımlama
Her stage, ilişkili steps öğelerini gruplandırır. Aşamalar Jenkins kullanıcı arayüzünde sütunlar olarak görünür ve işlem hattının ilerlemesini net biçimde gösterir.
stages {
stage('Build') { steps { sh 'make build' } }
stage('Test') { steps { sh 'make test' } }
}Kabuk adımlarını çalıştırma
sh adımı, aracı üzerinde bir kabuk komutu çalıştırır. Kodu derlemek, sınamaları çalıştırmak veya bir Docker imajı oluşturmak için kullanabilirsiniz.
steps {
sh 'docker build -t myapp:${BUILD_NUMBER} .'
}Ortam değişkenleri
Bir environment bloğu, tüm adımlar için değişkenler tanımlar. Jenkins ayrıca BUILD_NUMBER ve GIT_COMMIT gibi yerleşik değerler de sunar.
environment {
REGISTRY = 'registry.example.com'
IMAGE = 'myapp'
}Kimlik bilgilerini bağlama
Gizli bilgileri hiçbir zaman doğrudan koda yazmayın. Bunları Jenkins kimlik bilgilerine kaydedin ve günlüklerde maskelenmeleri için credentials() yardımcısıyla alın.
environment {
REG_PASS = credentials('registry-password')
}Sonraki işlemler
Bir post bloğu, aşamalar tamamlandıktan sonra çalışır ve sonuca göre farklı bir yol izler. Bildirimler ve temizlik işlemleri için idealdir.
post {
success { echo 'Pipeline succeeded' }
failure { echo 'Pipeline failed' }
always { sh 'docker image prune -f' }
}Paralel aşamalar
Bağımsız işleri parallel içinde aynı anda çalıştırarak süreci hızlandırabilirsiniz; örneğin birim ve tümleştirme sınamalarını eş zamanlı çalıştırabilirsiniz.
stage('Tests') {
parallel {
stage('Unit') { steps { sh 'make unit' } }
stage('Integration') { steps { sh 'make int' } }
}
}Koşullu aşamalar
when yönergesi, bir koşul sağlandığında bir aşamayı çalıştırır; örneğin dağıtımı yalnızca ana dalda yapabilirsiniz.
stage('Deploy') {
when { branch 'main' }
steps { sh './deploy.sh' }
}Çok dallı işlem hatları
Jenkins'i bir depoya yönlendirdiğinizde, Jenkinsfile içeren tüm dalları keşfeder ve her dal için otomatik olarak bir işlem hattı oluşturur. Özellik dalları da ek bir işlem yapmadan sürekli tümleştirme olanağı kazanır.
Kısa kontrol
Bildirimsel işlem hattı tanımı nerede bulunur?
Özet
İşlem hatlarını kod olarak tanımlamayı öğrendiniz:
pipeline { agent; stages }bildirimsel iskelettirshadımları komut çalıştırır;environmentvecredentials()yapılandırmayı yönetirpost,parallelvewhenek yetenekler sağlar- Çok dallı işlem hatları her dal için otomatik olarak sürekli tümleştirme sunar
Jenkinsfile kodunuzla birlikte yaşar ve onunla birlikte gelişir.
Sıkça Sorulan Sorular
“Jenkinsfile ile Kod Olarak Jenkins Pipeline” dersi ücretsiz mi?
Evet — “Jenkinsfile ile Kod Olarak Jenkins Pipeline” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve DevOps Bootcamp kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. DevOps Bootcamp kursu toplamda 4 dersten oluşur.
“Jenkinsfile ile Kod Olarak Jenkins Pipeline” dersinde ne öğreneceğim?
Derleme, test ve dağıtım aşamalarını deponuzda tutulan bir Jenkinsfile içinde bildirimsel olarak tanımlayın; böylece pipeline, uygulamayla birlikte sürümlenir. DevOps Bootcamp ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
DevOps Bootcamp öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te DevOps Bootcamp, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“Jenkinsfile ile Kod Olarak Jenkins Pipeline” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu DevOps Bootcamp dersinde kod yazıp çalıştırabilir miyim?
Evet. Her DevOps Bootcamp dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Jenkins’e Giriş
- Jenkins ile Docker İmajları Oluşturma
- Jenkins ile Otomatik Dağıtım
- Jenkinsfile ile Kod Olarak Jenkins Pipeline