Bu yazımız da AzureDevOps pipeline’da custom conditions kullanımını inceleyeceğiz. Custom conditions pipeline da kullandığımız taskların build sırasında çalışıp çalışmamasını yönetebileceğimiz bir özelliktir. Örnek olarak Sonarqube yada Jira gibi entegrasyonu kullanıyoruz. Anlık bu entegrasyonların birinde yada ikisinde de bir sorun oluştu. Build pipelinelar patlıyor. Birden fazla pipeline olduğu zaman tek tek yönetmek zor oluyor. Tek tek gidip kapatmanız gerek. Bununla uğraşmamak için custon conditions kullanıyoruz. Hemen bir örnek üzerinde görelim.
Projemizde empty bir pipeline oluşturup test için powershell taskları tanımlayalım.
Set Variable taskında 2 tane değişken tanımladım. Bunlar;
Write-Host "Step : Set Variable"
Write-Output("##vso[task.setvariable variable=SONARQUBE_INTEGRATION]true")
Write-Output("##vso[task.setvariable variable=JIRA_INTEGRATION]false")
Bu değişkenleri global olarak tutmanız gerek. Burada test amaçlı script içinde kullandım.
Şimdi sonarqube entegrasyonum açık olacak ama jira entegrasyonum kapalı olacak. Şimdi custom conditions ayarlarını da görelim.
Hem sonarqube hemde jira entegrasyonuna true isen çalış dedik. Ama yukarda jira değişkenini false yaptık. Şimdi jira entegrasyonunun çalışmamasını bekliyoruz. Pipeline’ ı çalıştıralım.
Evet build planımız tamamlandı. İstediğimiz gibi jira entegrasyon çalışmadı.