1

したがって、ここでの重要な要素は、ビルド アーティファクトの一部の下に表示されるものとしても知られる非表示のアーティファクトです。.teamcity/

いくつかのコンテキスト: 現在、NUnit テスト ステップで dotCover を実行して、テスト カバレッジについて報告しています。これにより、コンパイルされた結果が という名前のファイルに保存さCoverageResults.xml.teamcity/.NETCoverage/ます。これは私がアクセスしたいファイルなので、データをマイニングして gecko ボードに送ることができます。

これまでのところ、推奨された方法論を使用して、ディレクトリのこの部分にないアーティファクト (出力時のビルドの結果など) を正常に取得できます。この問題は、この隠しディレクトリにアクセスするときにのみ発生します。

その他の奇妙な点は、応答です。302 一時的に移動しました。

参考までに、私のリンクは次のようになります: (in powershell btw)

"http://{0}:{1}@{2}/guestAuth/repository/download/{3}/.lastFinished/.teamcity/.NETCoverage/CoverageReport.xml" -f $serverURl, $gUName, $gPassword, $buildType

隠されたアーティファクトへのアクセスに関するアドバイスはありますか? このデータは他にどこから取得できますか (システム変数には何も見つかりませんでした)。

注: これらのアーティファクトは、ビルド ステップが完了するまで生成されないことを既に認識しています。これは、ビルド ジョブ自体ではなく、完了したビルドに対して事後に行っています。

4

2 に答える 2

0

これを Artifact Paths フィールドに追加すると、ビルドが完了するとレポートがビルド アーティファクトとして添付されます。

%system.teamcity.build.tempDir%\**\CoverageReport.xml

お役に立てれば

于 2015-06-02T22:32:19.653 に答える
0

他の人の助けになる場合に備えて、思いついた解決策を残します。

結局、理由の詳細はわかりませんでしたが、要するに、Powershell の Invoke-WebRequest で URL 認証を使用すると機能しません。これは、作成されたリクエストなどから抜粋されたようですが、別の方向に進んだため、これについてこれ以上コメントすることはできません.

代わりに、cURL を使用しました。これは Powershell が行うことではありません。そのため、チーム シティ ビルドではこれを 2 つのステップに分けました。cURL を使用してファイルをダウンロードし、それを一時ディレクトリに配置するコマンド ライン ステップと、その後に Powershell ステップを実行してファイルを取得し、やりたいことを実行します。

于 2015-06-17T12:00:14.953 に答える