0

Jenkinsで次のことを記録および比較できるソリューションを探しています:

  • インストール済みのシステム パッケージ (rpm など)
  • インストールされた pip パッケージ (pip freeze/list) - 複数の可能性があります: システムまたは 1 つ以上の仮想環境。
  • ビルド中に使用される外部システムまたはサービスの API バージョン。例: JIRA、PYPI

このようなコマンドの出力をテキスト ファイルに保存し、それらをアーカイブするよう ArtefactArchiver を構成するのは簡単ですが、これらで変更ログを拡張することはできません。

理想的には、見つかった情報で変更ログを拡張し、最後に成功したビルド以降の変更を表示できるようにしたいと考えています。

ビルドの破損の主な原因の 1 つはビルド中のリポジトリではなく、エコシステムからの何かであるため、この情報を提供することは開発者にとって非常に役立ちます。

これは通常、ビルド マニフェストまたは部品表 (BOM)と呼ばれ、最終的なビルド アーティファクトの作成に貢献したすべてのものをリストする構造化ファイルであると思います。

明らかに、私はこれを見つけるために多くのことをグーグルで検索し、jenkins のすべてのプラグインを調査しようとしましたが、これまでのところ、これをカバーするものを見つけることができませんでした。

私はこの情報を収集することについてそれほど心配していません。それは簡単な部分です。この質問の秘訣と主題は、それらを比較し、優れたインターフェースでユーザーに公開する方法です。

PS。ビルドおよびテストされるパッケージのほとんどは Python であるため、Python ソリューションを探すことを好む傾向があります。それでも、パイプラインは Groovy です。これを実装するために Jenkins プラグインを作成する必要がないことを願っています。

私が調査しているもう 1 つのアイデアは、2 つの異なるビルド間で何が変更されたかを確認するために使用できる、junit 形式で偽のユニットテストの結果を生成することです。

4

0 に答える 0