Azure DevOps Nedir?
Azure DevOps; Boards (iş takibi), Repos (kod barındırma), Pipelines (CI/CD), Artifacts (paket yönetimi) ve Test Plans (test yönetimi) bileşenleriyle yazılım yaşam döngüsünü uçtan uca yönetmeye imkân tanıyan bir platformdur. Esnek proje/organizasyon yapısı, kimlik yönetimi ve politikalarıyla kurumsal ihtiyaçlara uygundur.
Bileşenler
- Boards: Epik/Feature/User Story ayrımı, sprint planlama, backlog ve burndown grafikleri.
- Repos: Git tabanlı depolar; branch politikaları ve PR incelemeleri.
- Pipelines: YAML tabanlı CI/CD; self‑hosted veya Microsoft‑hosted ajanlar.
- Artifacts: npm/nuget/maven gibi paket depoları; sürümleme ve izin yönetimi.
- Test Plans: El/kabul testleri, test suite’leri, raporlama.
YAML Pipeline Örneği
# azure-pipelines.yml
trigger:
branches: { include: [ main ] }
pool: { vmImage: 'ubuntu-latest' }
steps:
- task: NodeTool@0
inputs: { versionSpec: '20.x' }
- script: npm ci
- script: npm test -- --ci
- task: PublishTestResults@2
inputs: { testResultsFormat: 'JUnit', testResultsFiles: 'reports/junit/*.xml' }
- script: npm run build
- task: PublishBuildArtifacts@1
inputs: { PathtoPublish: 'dist', ArtifactName: 'web' }
Kurumsal kullanımda şablonlar (templates
) ve değişken grupları ile yeniden kullanılabilirlik sağlanır.
Sürüm Yönetimi & Ortamlar
- Environments:
dev
,test
,staging
,prod
ortamları için onay adımları (approvals) ve checks. - Multi‑stage Pipelines: Build → Test → Deploy aşamalarını tek YAML içinde yönetin.
- Geri Alma (Rollback): Yayınlanan artefact ve sürüm notlarıyla hızlı geri dönüş.
Güvenlik, Erişim ve Politikalar
- Azure AD ile SSO ve least privilege erişim modeli.
- Branch korumaları, required reviewers ve status checks.
- Service Connection ve değişken gruplarında gizli anahtarların güvenli yönetimi.
- Denetim (audit) günlükleri ve compliance raporları.
Entegrasyonlar
- Bulut: Azure, AWS, GCP ile dağıtım.
- SCM: Azure Repos, GitHub, GitLab entegrasyonu.
- Kalite: SonarQube, SAST/DAST araçları, test raporlayıcılar.
- İletişim: Teams/Slack bildirimleri, webhooks.
Resmî Kaynaklar
- Azure DevOps Docs: Dokümantasyon
- Pipelines: Pipelines
- Boards: Boards
Sık Sorulanlar
Evet. Kod barındırma için GitHub, planlama/CI/CD için Azure DevOps tercih edilerek karma kullanım yapılabilir.
Kapsayıcı/dinamik ölçek ihtiyacında hosted ajanlar hızlıdır; regülasyon veya özel bağımlılıklarda self‑hosted ajanlar önerilir.