Tak, jeśli przejdziesz do obszaru roboczego pracy, okaże się, że Bamboo nie wykonuje prostego klona git "pod maską", a pilot jest ustawiony na wewnętrzną ścieżkę pliku.
Na szczęście Bamboo przechowuje oryginalny adres URL repozytorium jako $ {bamboo.repository.git.repositoryUrl}, więc wszystko, co musisz zrobić, to ustawić zdalne wskazywanie powrotem do oryginału i popchnąć tam. Właśnie tego używałem zarówno z podstawowymi repozytoriami Git i Stash, tworząc znacznik na podstawie numeru kompilacji.
git tag -f -a ${bamboo.buildNumber} -m "${bamboo.planName} build number ${bamboo.buildNumber} passed automated acceptance testing." ${bamboo.planRepository.revision}
git remote add central ${bamboo.planRepository.repositoryUrl}
git push central ${bamboo.buildNumber}
git ls-remote --exit-code --tags central ${bamboo.buildNumber}
Ostatnia linia jest po prostu przyczyną niepowodzenia zadania, jeśli nowo utworzony znacznik nie może zostać odczytany z powrotem.
EDYCJA: Nie ulegaj pokusie użycia zmiennej $ {bamboo.repository.git.repositoryUrl}, ponieważ nie musi to oznaczać repo sprawdzonego w twoim zadaniu.
Należy również pamiętać, że jeśli pobierasz z wielu źródeł, $ {bamboo.planRepository.repositoryUrl} wskazuje na pierwsze repozytorium w zadaniu "Kodu źródłowego". Bardziej szczegółowe adresy URL są przywoływane przez:
${bamboo.planRepository.1.repositoryUrl}
${bamboo.planRepository.2.repositoryUrl}
...
i tak dalej.
Wygląda na to, że Bamboo nie podaje hasła do żadnego z repozytoriów. Jak sobie z tym radzisz? – z4ce
Musisz ustawić klucz publiczny dla użytkownika bambusa działa tak jak na serwerze kompilacji. –
Używam repozytorium github z bambusem onDemand. Jak skonfigurować ten klucz publiczny? Co więcej, za każdym razem, gdy próbuję się zbuntować, jest informacja, że zdalna gałąź już istnieje. –