2

here で説明されているように、Jenkins を使用してマスター ブランチを安定させようとしています。基本的に、開発者は統合ブランチへのプッシュをチェックし、Jenkins インスタンスのみが統合からマスターにマージされます。私のプロジェクトは複数の RTL (verilog、vhdl など) サブコンポーネントで構成されており、それぞれに独自のテストベンチがあり、個別にビルドできます。git-plugin は、テストを実行する前に変更されたファイルに基づくフィルタリングをサポートしていますが、マージする前に、変更されたすべてのサブコンポーネントを正常にビルドする必要があります。つまり、ディレクトリ構造が次のようになっている場合:

src/
    A/
    B/
    C/
    share/
test/
    A/
    B/
    C/

src/A/ だけが変更された場合、統合をマスターにマージする前に、テスト A のみが成功する必要があります。src/share/ が変更された場合、統合をブランチにマージする前に、テスト A、B、および C を実行する必要があります。すべてのテストを並行して実行できます。

fork-plugin と parameterized-trigger-plugin の使用を検討しましたが、静的に構成する必要があるようです。このタイプの動的依存関係ダイヤモンドを処理し、すべてが成功した場合にのみ Jenkins が統合をマスターにマージする方法はありますか?

前もって感謝します

4

1 に答える 1

0

変更を管理するには、 gerritを使用することを検討する必要があると思います。開発者が送信した変更を自動的にビルドおよびテストする Jenkins 用の Gerrit プラグインがあります。変更が Jenkins によって検証されると、レビュー、承認、およびその後のマージが可能になります。

于 2012-10-24T23:05:18.377 に答える