Ich versuche, einen Xcode-Bot mit OSX-Server einzurichten. Nachdem ich das Git-Repository konfiguriert und einen Bot erstellt habe, starte ich integrate. Es schlägt fehl, weil das Repository nur teilweise ausgecheckt ist. Genauer gesagt: Von den 6 konfigurierten Submodulen werden nur 3 initialisiert und ausgecheckt.Xcode Bot: Git Submodule nicht initialisiert
[email protected]:/Library/Server/Xcode/Data/BotRuns/Cache/c5fda8f4-4d25-4d25-c18a-eb0b16a06692/source$ git submodule status
+c6e8420aec4147641fb1ca12d9f1d31bdd804e77 libs/asi-http-request (v1.7-320-gc6e8420)
-ae64a38766b42f236bb94f0e661cddb829f9ac43 libs/kraken
-7da02b323636bbaa0bbbf5b4eb229fcc07b1e14a libs/route-me
152f9ee5576e710705a49032253d7d5af5366f9c libs/routing (152f9ee)
347aaf74fe0c6388785095efdbf6397851514b7f libs/rtlabel (1.0-32-g347aaf7)
-562cf6b1c879f03546f5184e012cea15c4f159db libs/skmaps
(- bedeutet nicht initialisiert)
am Bot log Blick scheint es nur die fehlenden Submodule im Submodul zu ignorieren initialisieren Teil:
...
Checking connectivity... done
Submodule 'libs/asi-http-request' (https://github.com/BikeCityGuide/asi-http-request.git) registered for path 'libs/asi-http-request'
Submodule 'libs/routing' (ssh://[email protected]/var/repos/librouting.git) registered for path 'libs/routing'
Submodule 'libs/rtlabel' (https://github.com/BikeCityGuide/RTLabel.git) registered for path 'libs/rtlabel'
Cloning into 'libs/asi-http-request'...
...
Keine Fehlermeldung hier oder irgendwo sonst. Keine einzige Erwähnung von z.B. "kraken" (Name eines fehlenden Submoduls) irgendwo in den Protokollen.
Beim manuellen Auschecken (Klonen, Submodul-Init, Submodul-Update) werden alle Submodule initialisiert.
.gitmodules sieht wie folgt aus:
$ cat .gitmodules
[submodule "libs/asi-http-request"]
path = libs/asi-http-request
url = https://github.com/BikeCityGuide/asi-http-request.git
[submodule "libs/rtlabel"]
path = libs/rtlabel
url = https://github.com/BikeCityGuide/RTLabel.git
[submodule "libs/routing"]
path = libs/routing
url = ../librouting.git
[submodule "libs/kraken"]
path = libs/kraken
url = ../kraken_ios.git
[submodule "libs/route-me"]
path = libs/route-me
url = ../route-me.git
[submodule "libs/skmaps"]
path = libs/skmaps
url = ../skmaps.git
Das Repository Basis und die 4-Modul-Repositories mit relativen URL referenziert alle SSH-Authentifizierung benötigen. Der Benutzer, der auf dem OSX-Server eingerichtet wurde, hat Zugriff auf alle Benutzer. Das Protokoll des Bot enthält keine Spur von versuchen, die fehlenden Submodule zu ziehen.
Ich kann das lokale Repository manuell reparieren, aber ich möchte das gleiche Problem nicht erneut mit neuen Projekten und neuen Submodulen hinzugefügt haben.
git Version 1.8.4.2
ich aus Ideen bin.
> "Das Protokoll des Bot enthält keine Spur von versuchen, die fehlenden Submodule zu ziehen." Gibt es eine Fehlermeldung in diesen Protokollen? – VonC
Die einzige Fehlermeldung ist die für den fehlgeschlagenen Build wegen fehlender Quelldateien. –
Und ich nehme an, ein 'git submodule update --init --recursive' funktioniert manuell? – VonC