2013-06-30 20 views
5

Używam TeamCity 8 Server i Buduj agenta (zainstalowany z WebStart) na Mac OSX 10.8Dlaczego agent budujący TeamCity jest oznaczony jako "Niezgodny"?

My tylko budować agent jest wymyślanie jako niezgodna z powodu

Implicit requirements: 
AppBuildType defined in Build step: Command Line 

Jednak mój agent build list:

.NET Process Runner: Runner to run .NET processes under specified runtime, framework  version and with/without code coverage 
Ant: Runner for Ant build.xml files 
Command Line: Simple command execution 
Duplicates finder (Java): Runner for gathering IntelliJ IDEA duplicates results 
Gradle: Runner for Gradle projects 
Inspections (IntelliJ IDEA): Runner for gathering IntelliJ IDEA inspection results 
IntelliJ IDEA Project: Runner for IntelliJ IDEA projects 
Ipr (obsolete runner): Runner for IntelliJ IDEA project (.ipr) files 
Maven: Runner for Maven builds 
MSBuild: Runner for MSBuild files 
NAnt: Runner for NAnt build files 
NUnit: NUnit tests runner 
Rake: Runner for executing Rake tasks, Test::Unit and RSpec tests 
Visual Studio (sln): Microsoft Visual Studio solution (.sln) runner 
Visual Studio 2003: Microsoft Visual Studio .NET 2003 solution file build runner 
Xcode Project: Runner for Xcode projects 

Widać, że Command Line: Simple command execution jest rzeczywiście w liście mojego budować agenta kompatybilnych typów kompilacji - jeszcze zostało oznaczone jako kompatybilne.

Co jeszcze może być przyczyną tego? Czy nie mogę się spodziewać, że powinien być kompatybilny, ponieważ typy wbudowane są zgodne?

Uwaga: Próbowałem wyłączyć ten krok kompilacji, a on rzeczywiście stał się "zgodny". Renowacja i znowu powraca do "niekompatybilnego".

Odpowiedz

5

Ogólne

Gdy widzisz to, sprawdź swoje kroki kompilacji. Jeden z twoich kroków, który używa wiersza poleceń, ma pewne nieprawidłowe argumenty.

Najprostszym sposobem zawężenia jest wyłączenie wszystkich kroków (lub tylko tych z wierszem komend), a następnie włączanie ich pojedynczo, obserwując, czy odstrasza agenta od zgodności.

W twoim przypadku ...

Wygląda na to tylko jeden krok w linii poleceń, tak że powinno być łatwe. Wyłącz to i powinno pokazać, że masz teraz kompatybilnych agentów. Włącz ją ponownie i włamuj się na nią, dopóki nie uruchomisz jej. Widziałem wcześniej problemy z argumentami, ścieżką do plików itd., Ale nie otrzymałeś bardzo przydatnego komunikatu o błędzie.

+0

Dzięki Damon - spróbuję tego - na pewno nie spodziewałem się tego, ponieważ nie oczekiwałbym, że TeamCity spróbuje "przeanalizować" moją linię poleceń. Pomyślałem, że będzie wiedział tylko, że wystąpił problem podczas wykonywania skryptu. – Adam

+0

Bez problemu; jeśli go zawęzisz, ale nadal nie możesz wykonać tego kroku, opublikuj oczyszczone ustawienia i zobaczę, czy coś wyskoczy. Ten, w którym mnie dostał, był czymś głupim, i obejrzałem go, umieszczając komendę w skrypcie i wywołując skrypt, zamiast robić to wszystko w oknie poleceń. – Damon

+2

OK - to był problem. Nie mogłem pracować z "Linią komend" teraz zależy od tego, co zrobiłem (włączając w to redukowanie mojego skryptu do "echo hello") - jednak zmieniłem typ na "Executable" i po początkowym problemie z nim - wyśledziłem, że Zmienne używane w moich parametrach nie znajdowały się na liście opcji dostępnych w TeamCity 8. Jeśli ktoś z TeamCity czyta to - zaktualizuj swoje błędy w tym scenariuszu, ponieważ wprowadzają w błąd. Jeśli analizujesz skrypt w celu sprawdzenia poprawności zmiennych, a jeden nie jest legalny, pokaż to na stronie internetowej! Dzięki Damon – Adam

Powiązane problemy