Başlık: GitHub Actions Düzeldi Ancak Manuel Müdahaleler Gerekiyor
GitHub Actions, 7 Ağustos saat 02:04 UTC itibarıyla tekrar çevrimiçi hale geldi. Kesinti, hiç çalışmamış bir dizi push ve pull-request olayının birikmesine neden oldu, bu nedenle geliştiricilerin bu çalışmaları manuel olarak yeniden çalıştırması gerekiyor.
Durum sayfası şu an yeşil görünüyor ancak kesinti sırasında başlaması gereken tüm iş akışları (workflow) sessiz kaldı. GitHub kaçırılan tetikleyicileri otomatik olarak yeniden çalıştıramadığı için ekiplerin yeni bir commit göndermesi, pull request'i güncellemesi veya kullanıcı arayüzündeki (UI) Re-run jobs butonuna tıklaması gerekiyor. Açık kaynaklı Actions Runner Controller kullanıcılarının ayrıca runner pod'larının boşta (idle) takılıp kalmadığını kontrol etmeleri gerekmektedir.
Ne yanlış gitti ve bu neden önemli
GitHub Actions, milyonlarca deponun (repo) CI süreçlerini yönetir. Hizmet duraksadığında kod değişiklikleri bekler, test paketleri çalışmaz ve dağıtımlar (deployment) gecikir. 7 Ağustos'ta servis, en yaygın iki CI tetikleyicisi olan hem push olaylarını (yeni commit'ler) hem de pull-request olaylarını (inceleme güncellemeleri) işlemeyi durdurdu.
Pipeline'larınızı nasıl kurtarırsınız
- Yeni bir commit gönderin – daldaki (branch) herhangi bir değişiklik push tetikleyicisini tekrar çalıştırır.
- Pull request'i güncelleyin – PR iş akışını yeniden tetiklemek için bir yorum ekleyin, başlığı değiştirin veya daha fazla commit gönderin.
- İş akışını manuel olarak yeniden çalıştırın – Actions arayüzü artık başarısız olan her çalışma için bir “Re-run jobs” butonu gösteriyor.
Eğer Actions Runner Controller aracılığıyla kendi sunucunuzda çalışan (self-hosted) runner'lar kullanıyorsanız, runner pod'larını inceleyin. Bazıları servis geri geldikten sonra boşta kalabilir; bunları yeniden başlatın veya yeniden dağıtın (redeploy).
Ekipler için riskler
- Verimlilik kaybı – geliştiriciler normalde dakikalar içinde gelen geri bildirimleri beklemek zorunda kalır.
- Yayın gecikmeleri – bir sürümü denetleyen (gating) herhangi bir pipeline, teslim tarihlerini öteleyebilir.
- Operasyonel yük – ekiplerin son çalışmaları denetlemesi, eksikleri tespit etmesi ve yukarıdaki manuel adımları gerçekleştirmesi gerekir; bu da özellik geliştirme süreçlerinden zaman çalmasına neden olur.
Özetle: Bu kesinti, olgun CI servislerinin bile işleri aksatabileceğini ve otomatik yeniden çalıştırmanın garanti olmadığını gösteriyor. Manuel kurtarma adımlarını olay müdahale (incident-response) planlarınıza dahil edin ve GitHub'ın daha dirençli olay yönetimi (event handling) konusundaki bir sonraki adımlarını takip edin.
