2013-05-31 9 views
12

Jenkinsを実行してカバレッジレポートを生成するためにCoberturaを正常にセットアップしましたが、今度はpep8テストの結果を報告するように違反を設定しています。Jenkins/ViolationsのPEP8 xmlレポートを作成する

今私はバッチコマンドでPEP8を実行し、ワークスペースに終わるすべての違反を保存する.txtファイルを生成するようにしました。

これらの違反がReport Violations Post-Buildアクションに送信するためのXMLファイルを作成するには、バッチコマンドを定義する必要がありますか。もしそうなら、私はどのようにそのコマンドを定義するでしょうか?

+0

AFAIKレポート違反でpep8の行のpep8出力ファイル名(作業領域内)を追加することは、結果がジーンキンで表示されるようにするために必要な唯一のステップです... –

答えて

24

Vajkが指摘するように、XMLファイルは必要ありません。 pep8ユーティリティの出力をファイルにパイプするだけで、Jenkinsの違反ファイルとして使用することができます。あなたのジェンキンスで例えば

下の構成を構築する:あなたが書くことができます

Build -> Execute Shell -> Command 

pep8 path/to/code > pep8_report.txt 

そして下:

Post-build Actions -> Report Violations -> pep8/XML filename pattern 

追加:

pep8_report.txt 

UIがXMLファイルを要求しても、そのファイルがXMLファイルではないにもかかわらず、これはJenkinsバージョン1.499でうまく動作しました。

+0

[flake8] (https://flake8.readthedocs.org/en/2.3.0/index.html)がpep8違反として出力されます。 – razz0

+1

私は上記のように試してみましたが、それも私のために働いたが、問題は違反のリンクが機能していないことです。 – parthiban

+0

「ビルド後のアクション」で「レポート違反」が表示されません。プラグインがありませんか? (私はすでにCoberturaをインストールしています)。 – Will

0

これは非常に古い質問ですが、私はこれに答えるために多くの問題を抱えていましたので、これが他の人に役立つことを願っています。

研究の多くは、私はジェンキンス違反プラグインは、各ラインの前に./ビットを好きではないので、ちょうど(それはflake8のためにも有効です)pep8の出力を解析することはトリックを行いますことを発見した後:

pep8 . | 's|^./||' | tee pep.txt

そこでの重要なビットは、効果的に

に削除ティービットはジェンキンスがあれば停止を回避するためにいくつかの回避策である、「」への文字列(^)の先頭に./の出現を変更するのsedれますpep8コマンドの出力はゼロではない。

関連する問題