Verhindern Sie, dass TeamCity ReSharper-Code-Inspektionsvorschläge (und Hinweise) als Warnungen meldet?

8

Ich habe einen Build von Inspections (.NET) zu einem TeamCity (v8) -Projekt hinzugefügt, das aus einem Schritt zum Erstellen einer Visual Studio 2010-Lösung für eine einzelne Dummy-C # -Klasse besteht.

Der Build-Schritt weist Fehlerbedingungen auf, die zum Fehlschlagen führen, wenn ich Inspektionsfehler oder Warnungen erhalte.

Meine Dummy-Klasse generiert nur 2 Vorschläge, aber der Build schlägt fehl

  

"Build-Fehler bei Metrikänderung: Anzahl der Inspektionswarnungen ist ebenfalls   groß: 3 ".

Gibt es eine Möglichkeit, dass der TeamCity-Schritt die Vorschläge ignoriert?

Ich habe Debug-Ausgabe aktiviert und der Schritt enthält definitiv keine Warnungen:

%Vor%

Die Dummy-Klasse ist wie folgt:

%Vor%

Beachten Sie, dass ich weiterhin Vorschläge und Hinweise in Visual Studio erhalten möchte, sodass das Ändern aller Nicht-Warnungen und Fehler in den ReSharper-Einstellungen nicht möglich ist (oder Erstellen und Verwalten einer solchen Einstellungsdatei nur für TeamCity) .

    
stephen 09.01.2014, 22:44
quelle

2 Antworten

6

Im Anschluss an die vorherige vorgeschlagene Technik habe ich ein PowerShell-Skript geschrieben, das InspectCode ausführt und anschließend eine XSLT-Transformation der Ausgabedatei durchführt und importiert das Ergebnis in TeamCity. Sie können dies als einen PowerShell-Build-Schritt ausführen, indem Sie den Lösungsdateinamen als erstes Skriptargument und die Variable% system.teamcity.build.tempDir% als zweite übergeben.

TransformResults.xslt:

(Dies sollte sich im selben Ordner wie das PowerShell-Skript befinden)

%Vor%

RunInspectCode.ps1:

%Vor%     
Rich Tebb 16.09.2015 09:55
quelle
2

Das ist mit TeamCity 9 immer noch nicht möglich (es wird peinlich für JetBrains, da diese Funktion wirklich ein Witz ist, ohne sich nur auf Warnungen und Fehler beschränken zu können).

Aber es gibt einen Do-it-yourself-Workaround

Mit dem kostenlosen Resharper-Befehlszeilentool "inspeccode" kann ein XML generiert werden Bericht für alle Resharper-Probleme:

%Vor%

Dieser Bericht enthält weiterhin alle Probleme. Es ist dann jedoch möglich, eine XPath-Abfrage im Bericht zu erstellen, um die Anzahl der Fehler und Warnungen zu zählen.

So mache ich es in einer Psake-Build-Datei:

%Vor%

}

Wie Sie sehen können, musste ich auch falsche InconsistentNaming Warnungen herausfiltern, aber Sie könnten diesen Teil entfernen, wenn Sie ihn nicht brauchen.

Und Sie könnten natürlich eine ähnliche xpath-Abfrage in einer XSLT-Transformation verwenden, um alle Nicht-Warnungen und Nicht-Fehler loszuwerden. Auf diese Weise können Sie mit TeamCity die resultierende Datei bearbeiten und als Ergebnis der Code-Prüfung anzeigen.

    
theDmi 16.12.2014 17:58
quelle