ハドソンの経験-マトリックスプロジェクトの構築
-
05-07-2019 - |
質問
その機能を試してみて、フィードバックがありましたか?または、検索に役立つサンプルを知っている人はいますか?
解決
数ヶ月前にこの機能を試しましたが、もう使いません(良い機能ではないからではなく、必要ないからです)。
基本的に、n軸を定義します。各軸は複数の値を持つプロパティです。
例を見てみましょう:可能性のある値「1.4」、「1.5」、「1.6」で軸「JDK」を定義し、別のプロパティ「データベース」を定義します。ここで、可能な値は" oracle"、" mysql"です。
したがって、Hudsonはビルドを6回起動します:
- JDK 1.4でプロパティdatabase = oracleを使用(つまり、JVMは-Ddatabase = oracleで起動)
- JDK 1.5で、プロパティがdatabase = oracleの場合
- JDK 1.6で、プロパティがdatabase = oracleの場合
- JDK 1.4でプロパティdatabase = mysqlを使用
- JDK 1.5を使用し、プロパティがdatabase = mysqlの場合
- JDK 1.6で、プロパティdatabase = mysqlを使用
その後、すべてが完了すると、各反復の結果を確認できます。
この機能は、いくつかの環境でアプリケーションをテストする必要がある場合(私の例では、異なるバージョンのJDKまたはデータベースで)に非常に便利です。
JDK軸を除き、Hudsonによってエントリとして指定されたプロパティを自分で管理する必要があることに注意してください。私の例では、アプリケーションは" database"を考慮する必要があります。プロパティ自体。最終的には、プロジェクトがMaven化されている場合、このプロパティを使用してMaven2構成で特定のプロファイルを有効にすることをお勧めします(こちらで詳細を確認してください。
説明が十分明確であることを願っています:)
他のヒント
マトリックスビルドには多くの問題があります:
- プラグインとはほとんど互換性がありません-より良くなっていますが、常に最新の状態に保つ必要があります。
- アーティファクト-身をよじるのがはるかに難しい-URlsはもう少し厄介で、FSで見つけること(とにかく避けるべきです)は悪夢です。
コンセプトは非常に優れており、機能する場所で非常に便利なため、これは残念です。
編集
- シングルポイントを開始できない。
これを回避する通常の方法は、パラメータ化ビルドを同時に実行するようにセットアップすることです-これには独自の問題がありますが、同じコードと異なる定数を持つ多くのジョブを節約できます。