現在のビルドプロセス中に、いくつかのPython tarball内のコードと一緒にコンパイルおよびアーカイブされるCコードがあります。そのtarballはコミットを表します(リリースコミットである場合とそうでない場合があります)。
Jenkinsフローの一部では、コードがテストされていますが、一部はテストされていません。ただし、ユニットテストまたはコンポーネントテストに合格したかどうかに関係なく、特定の各tarballに関する情報は、Jenkinsジョブにのみ残り、ジョブの終了後に削除されます。
既存のtarballを見ると、テストに合格したかどうかはわかりません。また、この特定のビルドフローとそのジョブの結果についてJenkinsにクエリを実行する方法を知る方法はありません。
テスト結果をマークして保存するために私が考えることができる最良のオプションは次のとおりです。
.passedunittest
、.passedcomponenttest
)。私は3つのオプションすべてで元気ですが、個人的には1つ目が好きですが、ばかげた解決策で元気になることがあります。この場合のベストプラクティスはありますか?そして、もしあれば、それは何ですか?
これはワークフローによって異なります。ビルドtarballで何をしますか?
テスト結果ファイルをtarballに追加することは、「手動」/インプレース検査で最も簡単なようです。
OTOHが名前コンポーネントを追加すると、ls
、sort
、およびhead
を使用して、内容を検査せずに最新の成功したtarballを選択できます。
ビルドアーティファクトを移動する場合は、git-annex
を使用して、それらを制御された方法で移動し、コミットメッセージ(および署名)を関連付けることができます。
文字コードを使用して、保留中、成功、または失敗したビルドを通知できます。
app.SS.tar
最初のSは、単体テストが成功したことを意味します。 2番目のSは、コンポーネントテストが成功したことを意味します。
したがって、成功した単体テストと失敗したコンポーネントテストは次のようになります。
app.SF.tar
成功した単体テストとコンポーネントテストはまだ実行されていません。
app.SP.tar
基本的に、各テスト実行では、ファイル拡張子の前の文字位置が取得されます。次に: