Frage

Nach der Verwendung Hudson für die kontinuierliche integration mit einem vorherigen Projekt, ich möchten set up a continuous integration server für die iPhone-Projekten ich arbeite jetzt.Nach einigen Forschung, es sieht aus wie es nicht alle CI-Motoren, die speziell für Xcode, aber ein Typ hat Erfolg Verwendung von Tempomat in Kombination mit der CLI tool xcodebuild.Hat hier jemand versucht, dies?Gibt es CI-Motoren, die gut mit Xcode-Projekten?

Ich bin wahrscheinlich zu geben, Tempomat versuchen.Ich poste eine Antwort mit meinen Ergebnissen.

War es hilfreich?

Lösung

Ich verwende Hudson erfolgreich auf dem Mac mit xcodebuild. Mit der Veröffentlichung des 3.0 iPhone sdk haben Sie die Kontrolle über das Ziel, die Konfiguration und sdk konkurrieren, dass das Projekt gegen gebaut werden soll.

Es ist so einfach wie ein Build-Schritt in hudson erstellen und zu sagen xcodebuild das Projekt zu erstellen:

xcodebuild -target "myAppAppStore" -configuration "DistributionAppStore" -sdk iphoneos2.1

Die Upfront-Arbeit hat sich für mich gelohnt, wie meine nur Arbeit ohne weitere Gedanken aufbaut. Ich habe eine detaillierte Beschreibung auf meinem Blog geschrieben, wenn jemand interessiert ist.

iPhone App Distribution leicht gemacht

Andere Tipps

Resurrecting dieses Thema. Ich habe nicht eine zufriedenstellende Lösung zu bekommen, automatisierte XCode baut mit Unit-Tests auf einem Build-Server finden, damit ich einige untersuchen und Codierung tat. Das Ergebnis ist diesem Blog-Eintrag erklären sie alle und der Ruby-Skript dass OCUnit Ausgabe von xcodebuild in das XML-Format konvertiert, die JUnit für Testberichte verwendet . Der Build-Server nahm ich war Hudson .

Aktualisieren 3/2 2012: Ich habe aktualisiert diese einige benutzerdefinierte Shell-Skripten für den Bau und den Betrieb zu verwenden. Verfügbar hier . Es ist gut, nicht nur für die kontinuierliche Integration, sondern auch von der Kommandozeile auf Ihrem eigenen Rechner zu bauen.

Adium verwendet buildbot mit Xcode recht effektiv. Wir schrieben eine einfache Make-Datei, die mit den richtigen Zielen nennt xcodebuild und Konfigurationen, aber ich bin mir ziemlich sicher, das ist optional.

Apple veröffentlicht häufig gerade (10. Juni 2013) für OSX Mavericks (OS X 10.9) eine neue kontinuierliche Integrationsplattform, die die meisten integrierten kontinuierlichen Integrationslösung ist, die ich vorher gesehen habe. Aus developer.apple.com verfügbar ist, hier in dieser Seite hat die Details:

https://developer.apple.com/library / ios / Dokumentation / IDEs / Conceptual / xcode_guide-continuous_integration /

Ich empfehle den WWDC 2013 Vortrag zum Thema zu sehen.

Ich habe CruiseControl mit Xcode (ähnlich zu dem, was Pragmatisch Automatisierung vorgeschlagen) und hatte Erfolg.Ich bin auch sehr vertraut mit CruiseControl und es ist relativ schrecklichen configuration format-setup.

Ich habe auch verwendet, BuildBot, um eine gute Wirkung, aber festgestellt, dass es die stärken nicht wirklich entsprechen meinen Bedürfnissen (distributed Sklaven Bau-und reporting über mehrere verschiedene Systeme).Konfiguration buildbot-setups werden können, eine Kunst, in und von sich selbst, obwohl es nicht schwer ist.Es ist im wesentlichen das schreiben von Skripts in python.

Da Hudson zugänglich geworden ist, würde ich empfehlen, es als eine avenue für die Ausführung von continuous integration.Es hat eine web-basierte Schnittstelle (CruiseControl primären Mangel in meinem Kopf) und ist sehr flexibel in die verschiedenen Systeme, die es unterstützt.Sie können invoke-command-line driven baut ganz leicht und sehr natürlich.Das heißt, ich habe nicht einrichten einer Instanz mit Hudson und Xcode, wo ich für die anderen Systeme, so ist dies teilweise Spekulation meinerseits.

Ich denke, Sie sollten noch in der Lage sein, Hudson zu verwenden. Hudson ist sehr flexibel und ermöglicht es Ihnen, auch Shell-Skripten für den Bau zu verwenden: Shell-Skripts und Windows Batch-Befehle

Geben Sie dort xcodebuild. Werfen Sie einen Blick auf die xcodebuild Manpage, um die Optionen von xcodebuild zu sehen.

Wenn Sie nichts dagegen nicht auf der Schneide leben Ich habe gerade eine Xcode Builder CruiseControl-.

Jenkins scheint für manche Menschen gut zu funktionieren. (Obwohl, ich habe noch nie zuvor eine beliebige CI-Server verwendet wird.)

https://wiki.jenkins-ci.org/display/JENKINS/ Xcode + Plugin

Jenkins funktioniert gut. Sie können entweder Ihr Xcode-Projekt erstellen, indem Sie Ihren eigenen Shell-Skript dann lassen Jenkins es läuft zu schreiben, oder Sie können auch Xcode-Plugin verwenden.

Aber Sie müssen sich der Autorität Problem sein. Mit wenig zwickt in Jenkins Konfigurationen, können Sie Ihren CI-Server in kürzester Zeit verwalten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top