TL; DR: Asya'da veya en azından Avrupa'da veri merkezi / yapı kutularına sahip olan iOS için barındırılan herhangi bir CI / CD sağlayıcısı biliyor musunuz ? (Hem derleme hem de dağıtma sağlıyorlarsa bonus puanlar, ancak derleme MVP'dir.)
Back-hikayesi:
İOS ve Android için ölçekte CI / CD çalıştırıyoruz: Birleştirme-İstek şubelerimizi test etmek / doğrulamak ve test yapılarımıza ve paydaşlarımıza gövde yapılarını dağıtmak için 10'dan fazla eşzamanlı derleme çalıştırıyoruz. Konumları hariç, oldukça mutlu olduğumuz bir SaaS / bulut sağlayıcısı kullanıyoruz.
Bizim kaynağımız gibi Asya'dayız. Müşteri, yüksek düzeyde düzenlenmiş bir sektörde ve düzenleyicilerinin henüz buluttaki kaynakları işleyemediğini düşündüklerinden, kaynağı yerinde tutmak için çok mücadele ediyor. Lütfen bu önermeyi kabul edin. Neden bırakmaları gerektiğini anlıyorum. Ama şimdilik ... yapamayacaklarını varsayalım.
Bunun anlamı şudur: kaynak Asya'dadır, ancak onu inşa eden CI / CD sağlayıcıları görünüşte ABD'de (Circle, Buddybuild, vb.). Pasifik bant genişliği özellikle Asya iş günü boyunca berbat. Her klondan önce her klonun aldığı zaman, iş gününün büyük bir kısmında> 60 dakikaya ulaşır.
CI / CD için şirket içinde olmak, Android yapıları için docker kaplarında oldukça kolay olurdu. Ancak sorun iOS. Kendinizi, insanlara OSX'i yönetmeyi ve yapı kutuları filosunu çalışır durumda tutmayı öğretme işine sokmanız ya da uzmanların bu sorunu sizin için çözmesine izin vermeniz gerekir.
NOTLAR:
- Ben am değil önerilerini alması, SE topluluk! Bu gerçek bir teknik sorudur: belirli teknik gereksinimleri karşılayan belirli hizmetler, belirli bir coğrafyada mevcut mu?
- MacStadium'un İrlanda'da çıplak MacOS VM'leri sağlayabildiğini biliyoruz. Ancak bu, tüm CI sürecinizi ve kaçınmak istediğimiz birçok düşük düzey sistem yöneticisi görevini yönetmeniz gerektiği anlamına gelir. Ayrıca, derlemeyi dağıtımdan ayırmak anlamına da gelir. Ancak gecikme kabul edilebilir görünmektedir.
- Bize daha yakın bulut CI / CD platformları olan ama iOS / MacOS desteği olmayan diğer insanları tanıyoruz.
- Sığ klonların daha az bant genişliği gerektirdiğini biliyoruz, bu da sorunu azaltacaktır, ancak mevcut sağlayıcımızın henüz desteklemediği anlamına gelen başka komplikasyonları da vardır. Ve her durumda sorunu tamamen çözmezler.
- Sorunun bir kısmını çözen, ancak düzenleyici sorunları ele almayan kurum dışı GitHub aynasını kullanmayı denedik. Ayrıca birçok webhook ve özellikle yeni kod için CI kanalımız için kritik olan Merge-Request webhooks ile çalışmaz. Web kancalarını izleyecek bir aracı oluşturabilir, ardından API komutlarını diğer hizmet sağlayıcılara zorunlu olarak aktarabiliriz ... ama bu gerçekten çemberin içinden atlıyor, ayrıca korumak için önemli yeni kodlar yaratacağız.