CruiseControl.NET'te birçok projeyi yürütüyorum. Birçoğunun yapı hataları yok ve başarılı bir şekilde inşa edilmiş. Hepsi binadan önce en son kodu çekmeye çalışırlar.Sporadik SVN 500 Hataları CruiseControl.NET ile
Sık sık bina başarısız olduklarını fark ettim; CruiseControl "İstisna" raporları. Özel durum bir SVN 500 hatasıdır (iç sunucu hatası). Rastgele ama ısrarla çarpıyor (örneğin, bir projede, her bir alternatif yapı başarısız oluyor).
Bu geçici olarak başarısız projelerden bazılarını aynı kimlik bilgileriyle incelemeye çalıştım ve işe yarıyor. Projelerin yapıldığını biliyorum çünkü her yapı başarısız değil.
Sorun ne olabilir? Ne olursa olsun için
, burada (SVN proje URL'ye veya kimlik bilgileri olmadan) örnek bir istisna üst çizgi:
ThoughtWorks.CruiseControl.Core.CruiseControlException: Source control operation failed: svn: Server sent unexpected return value (500 Internal Server Error) in response to OPTIONS request for 'https://some/url/trunk'
. Process command: C:\Program Files\CollabNet Subversion Client\svn.exe log https://some/url/trunk -r "{2010-12-04T09:09:19Z}:{2010-12-07T09:08:48Z}" --verbose --xml --username ******** --password ******** --non-interactive --no-auth-cache
Düzenleme: Bazen bu yerel bir SVN çatışma olmadığından gibi görünüyor Klasör. Ama bu tutarlı değil.
Bounty: Bu genel bir çözüm için bir ödül ekledik: incelikle yani Düzenli güncelleme denetimi tarafından tetiklenen SVN arızaları tedavi etmiyorsun, SVN hataları ile başa çıkmak için yapılandırılabilir CC.NET nasıl (zamanlanmış günlük yapıların aksine) yapı hataları olarak değil, ancak düzeltilene kadar veya bağlantı kurtarılana kadar incelikle geri çekilir.
CC.NET uzmanı olmamam ve uzun zamandır bakmadığım halde, bunu kendim çözemedim. Bunun için destek var mı yoksa kodlamaya mı ihtiyaç var? Teşekkürler!
netleştirmek için,
- Yeni kaydedilmesini ve çıkış kontrol + + testini tüm değişiklikleri daha sonra sonuç raporu oluşturmak için kurmak için bir CC.NET sunucu var.
- Ancak, SVN sunucusu düşüyorsa veya bağlantıyı kaybedersek, son işlem yapının yapısını bozuyormuş gibi davranır: yapı durumunu kırmızıya ayarlar ve son ileticiyi e-postaları hatalıymış gibi gönderir. .
- Evet, bu, günde bir kez oluşturulmuş bir iş için bir sorun olur, ancak sürekli her bir entegrasyon için bu yararlı bir davranış olduğunu düşünmüyorum.
Nedeni ne olursa olsun, CC.NET'i yapının başarısızlığı yerine SVN istisnalarını yok saymak üzere yapılandırmanın bir yolu da ilgimi çeker. – Rup
CI kurulumunuz, temiz bir ödeme üretecek ne olursa olsun üretilmemeli mi? Eğer öyleyse, bir istisna olursa, tüm yapı ortamınız geçersiz olacaktır. – Mark
Burada% 100 açık olmak gerekirse, bir kaynak kontrol arızası durumunda, tam olarak ne inşa edecektiniz? En iyi ihtimalle, kesinlikle bir şey kabul edilemez ve bu nedenle işe yaramaz. En kötüsü, hiç bir şey inşa etmeyecek. – Mark