Używam prowizji, aby zautomatyzować proces tworzenia wewnątrz CCNet. Używam go do uruchomienia IIS Express, uruchomienia Nunit, a następnie wyłączenia serwera po zakończeniu Nunit. Problem polega na tym, że za każdym razem, gdy Nunit ulegnie awarii, grabie zatrzyma się i nigdy nie dotrze do części wyłączającej. Jak mogę kontynuować prowizję po niepowodzeniu Nunit, a mimo to powiedzieć CCNet, że Nunit się nie udało, a więc tak jest z kompilacją?Kontynuuj Rake po awarii
Odpowiedz
Jak uruchomić NUnit z prowizji? czy używasz "sh"?
W ten sposób używasz "sh" do wykonania polecenia powłoki i przechwytywania wyniku.
wystarczy użyć pusty blok ignorować żadnych rezultatów (nie powiodło się lub sukces)
sh "your shell command" do |ok,res|
#empty block to ignore any failed or success status
#in your case set failed flag based on ok parameter
nunitSuccessFlag=false #hardcoded for sample; must set true or false based on ok parameter
end
umieścić ten wyjątek podbicia po wyłączeniu serwera tak ccnet wie, że build udało
raise "NUnit failed" if nunitSuccessFlag == false
alternatywę: korzystanie spróbuj przechwycić blok zgodnie z opisem użytkownika knut powyżej, jak pokazano w tym łączu: Rake Task: error handling (zamknij serwer w bloku zapewniającym)
Tak, użyłem sh. Dzięki. – DrSammyD
Kiedyś to zrobić rake
zignorować stan zwracane przez komendę:
sh "the command || true"
true
zawsze wyjście bez błędu, co sh
zawsze zobaczyć sukces.
Jak zatrzymuje się prowizja? Czy istnieje wyjątek? Jeśli tak, złap go. – knut