Gehostete CI / CD für iOS, die nicht in den USA ist?

9

TL; DR: Kennen Sie gehostete CI / CD-Anbieter für iOS, deren Rechenzentrum / Build-Boxen in Asien oder zumindest in Europa liegen? (Bonuspunkte, wenn sie sowohl Build als auch Deployment bereitstellen, Build jedoch der MVP ist.)


Hintergrundgeschichte:

Wir führen CI / CD im Maßstab für iOS und Android aus: Wir führen mehr als 10 gleichzeitige Builds aus, um unsere Merge-Request-Zweige zu testen / zu verifizieren und um Trunk-Builds für unsere Tester und Stakeholder bereitzustellen. Wir verwenden einen SaaS / Cloud-Anbieter, mit dem wir ziemlich zufrieden sind ... mit Ausnahme des Standorts.

Wir sind in Asien, genau wie unsere Quelle. Der Kunde befindet sich in einer stark regulierten Branche und kämpft hart darum, die Quelle vor Ort zu halten, da er der Meinung ist, dass sein Regulierer die Quelle in der Cloud noch nicht verarbeiten kann. Bitte akzeptieren Sie diese Prämisse. Ich verstehe, warum sie es loslassen müssen. Aber jetzt ... nimm an, sie können nicht.

Das bedeutet: Die Quelle befindet sich in Asien, aber die CI / CD-Anbieter, die sie erstellen, befinden sich scheinbar alle in den USA (Circle, Buddybuild usw.). Die transpazifische Bandbreite ist besonders während des Asien-Geschäftstages schlecht. Die Zeit, die jeder Klon vor jedem Build benötigt, beträgt für einen Großteil des Geschäftstages> 60 Minuten.

Für Android-Builds auf Docker-Containern wäre es ziemlich einfach, für die CI / CD vor Ort zu gehen. Aber iOS ist das Problem. Sie müssen sich entweder darauf konzentrieren, den Mitarbeitern das Verwalten von OSX beizubringen und eine Flotte von Build-Boxen betriebsbereit zu halten, oder Sie müssen Spezialisten dieses Problem für Sie lösen lassen.


ANMERKUNGEN:

  • Ich bitte nicht um Empfehlungen, SE Community! Dies ist eine sachliche technische Frage: Sind bestimmte Dienste, die bestimmte technische Anforderungen erfüllen, in einer bestimmten Region verfügbar?
  • Wir wissen, dass MacStadium in Irland reine MacOS-VMs bereitstellen kann. Dies bedeutet jedoch, dass Sie Ihren gesamten CI-Prozess sowie viele einfache Systemadministrationsaufgaben auf niedriger Ebene verwalten müssen, die wir lieber vermeiden möchten. Es bedeutet natürlich auch, Build von Bereitstellung zu trennen. Die Latenz scheint jedoch akzeptabel zu sein.
  • Wir kennen andere Leute, die Cloud-CI / CD-Plattformen in unserer Nähe haben ... aber ohne iOS / MacOS-Unterstützung.
  • Wir wissen, dass flache Klone weniger Bandbreite benötigen, was das Problem mindern würde, aber sie haben auch andere Komplikationen, die bedeuten, dass unser aktueller Anbieter dies noch nicht unterstützt. Und sie lösen das Problem auf keinen Fall vollständig.
  • Wir haben mit der Verwendung von GitHub-Spiegeln außerhalb des Unternehmens experimentiert, wodurch einige Probleme behoben werden, die regulatorischen Probleme jedoch nicht behoben werden. Es funktioniert auch nicht mit vielen Webhooks, insbesondere den Merge-Request-Webhooks, die für unsere CI-Pipeline für neuen Code von entscheidender Bedeutung sind. Wir könnten einen Agenten erstellen, der die Webhooks überwacht und dann unbedingt API-Befehle an die anderen Dienstanbieter weiterleitet ... aber das springt wirklich durch die Reifen, und wir hätten erheblichen neuen Code erstellt, um ihn zu pflegen.
XML
quelle
Ich habe nicht genügend Informationen für eine Antwort, aber anscheinend können Sie mit dem Visual Studio Teams Service von Microsoft in jeder Region auf einem Mac aufbauen.
Avi
In China wird es wahrscheinlich eine Menge Lösungen geben, die nicht auf Englisch vermarktet werden. Es ist jedoch nicht so, dass Ihr Kunde seine Software aus regulatorischen Gründen dort entwickeln möchte. Ich würde erwarten, dass SaaS-Build-Anbieter mit mehreren Gerichtsbarkeiten auf einem der drei führenden Cloud-Anbieter AWS, Azure oder Google ausgeführt werden. Sie machen keine Werbung für diese Funktion, da sie „keine Funktion“ ist, und sie möchten sich in Zukunft frei bewegen können. Es ist einfach zu untersuchen, wo AWS, Azure und GCP Rechenzentren und ihre „Regionsnamen“ haben. Suchen Sie also nach Google-Anbietern, die solche Namen nennen (z. B. „AWS eu-West“) und in den Support-Foren als Hinweise erscheinen.
Simbo1905
Mit Google können Sie innerhalb einer Website mit "site: circleci.com AWS Eu-west" oder was auch immer suchen. Ich habe diese Abfrage nicht ausprobiert, aber ich würde die Top-5-Build-Anbieter ausprobieren, und eine Liste der Regionsnamen der drei Top-Clouds wäre ein Vielfaches von 15 Abfragen, mit denen Sie möglicherweise eine Antwort erhalten, die Sie hier veröffentlichen können. AWS Eu West ist beispielsweise Dublin, Irland, das Eu Hq von AWS.
Simbo1905

Antworten:

2

Man könnte Jenkins unter MacOS ausführen.

https://medium.com/@dixitakansha15/continuous-integration-in-ios-using-jenkins-8e081753cc72

https://savvyapps.com/blog/continuous-integration-ios-jenkins

030
quelle
2
Unsicher, dass dies die Frage wirklich beantwortet, insbesondere unter Berücksichtigung dieses Punktes: "Aber das bedeutet, dass Sie Ihren gesamten CI-Prozess sowie viele einfache Systemadministrationsaufgaben auf niedriger Ebene verwalten müssen, die wir lieber vermeiden möchten."
Tensibai
1
Ja, obwohl ich den Wunsch des Posters nach Hilfe schätze, besteht das spezifische Ziel gerade darin, zu vermeiden, dass unsere eigenen MacOS Jenkins-Slaves ausgeführt werden. Wir wollen uns aus dem MacOS-Infra-Geschäft heraushalten und andere Leute das für uns lösen lassen ... in Asien.
XML
Man sollte auch berücksichtigen, dass SaaS-Anbieter häufig strenge Konventionen und "Just Works" -Vorlagen für moderne Entwicklungspraktiken bereitstellen.
simbo1905
2

Haben Sie https://buildkite.com/ und insbesondere diesen Beitrag für IOS https://medium.com/@Pinterest_Engineering/continuous-integration-for-ios-with-nix-and-buildkite-ef5b36c5292d gesehen ? Ich glaube, das Unternehmen hat seinen Sitz in Australien.

Meine Firma verwendet Buildkite und ich mag es wirklich sehr (wir bauen nichts IOS / Mac); Sie müssen einen Build Agent einrichten, der auf einem Cloud-Anbieter oder sogar Bare Metal gehostet werden kann. Der CI / CD-Nicht-Build-Server selbst wird gehostet. Es unterstützt meiner Meinung nach den gesamten Github-Webhook.

AnthonyC
quelle
1

Das Problem hierbei ist, dass der Preis für die Bandbreite in APAC zehnmal höher ist als in den USA. Daher sollten Sie die Buddybuild-Preise wahrscheinlich mit zehn multiplizieren und den Unternehmens-Support bitten, die Ergebniszahlen im Auge zu behalten. Ich habe gerade eine Berechnung durchgeführt, um Ihnen Service zu bieten, und ich habe ungefähr 8.000 / Monat für 10 Sim-Builds erhalten. Kann mich bei Interesse kontaktieren.

Siarhei Karatkevich
quelle
Auch wenn die Bandbreite 10x teuer ist, sind Strom und Ausrüstung auch 10x teuer?
Küken