Dependabot Alerts ve Updates
Dependabot Alerts & Updates
Bu derste neler öğreneceksin
- Dependabot alert ve Dependabot security/version updates arasındaki farkı açıklamak
- dependabot.yml yapılandırmasını bilmek
- Dependabot PR'larını güvenli bir şekilde yönetmeyi anlamak
Dependabot, GitHub’ın bağımlılık güvenlik açığı yönetim aracıdır. Üç bileşenden oluşur: alerts, security updates ve version updates.
Dependabot Alerts
Dependabot alert’leri, projedeki bağımlılıkların bilinen güvenlik açığı içerip içermediğini GitHub Advisory Database (GHSA + NVD) karşılaştırarak bildirir.
- Tetikleyici: Yeni CVE yayımlandığında veya bağımlılık güncellendiğinde
- Görüntüleme:
Repository → Security → Dependabot alerts - Önem seviyeleri: Critical, High, Medium, Low
Dependabot Security Updates
Alert tespit edildiğinde Dependabot otomatik olarak güvenli versiyona yükselten bir Pull Request açar.
# .github/dependabot.yml
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
Dependabot Version Updates
Security açığı olmasa bile bağımlılıkları güncel tutmak için kullanılır. dependabot.yml yapılandırması gerektirir.
| Security Updates | Version Updates | |
|---|---|---|
| Amaç | Güvenlik açığını kapat | Bağımlılığı güncel tut |
| Tetiklenir | CVE veya güvenlik danışmanlığıyla | Yeni versiyon çıktığında |
| Config gerekli | Hayır (otomatik açılabilir) | Evet (dependabot.yml) |
Dependabot PR’larını Güvenli Yönetme
Dependabot PR’larını merge etmeden önce dikkat edilecekler:
- Test suite geçiyor mu? (CI yeşil mi?)
- Breaking change var mı? (CHANGELOG’a bak)
- Minor/patch update mi, major update mı? (major daha dikkatli incelenmeli)
Dependabot Auto-merge özelliği:
# .github/dependabot.yml
auto-merge:
allow:
- dependency-type: "production"
update-type: "semver:patch"
Sınav sorusu: “Dependabot PR’ları otomatik merge edilebilir ancak yalnızca patch güncellemeleri için. Nasıl yapılandırılır?” — Yanıt:
dependabot.ymliçindeauto-merge+update-type: "semver:patch"yapılandırması.