12

デフォルト ブランチに Mercurial トリガーを使用した Jenkins ビルド ジョブがあります。これは、「リリース候補」のビルドに適しています。次に、このジョブがスモーク テスト ジョブを開始します。

Mercurial では、いつでも最大 12 の異なるアクティブなブランチが存在できるように、フィーチャーごとのブランチ スキームを使用します (ただし、アクティブなブランチは定期的に変更されます)。

任意のブランチへの変更によってトリガーされる Jenkins ジョブが必要です。これにより、更新が必要なすべてのブランチのスモーク テストがビルドおよび実行されます。ビルドを行うたびに、ブランチに一致する名前のアーティファクトを作成する必要があります。

別の回答で、Mercurial トリガーのブランチ名の代わりに「tip」を使用するという提案を見ました。これは可能性ですが、「ほとんど動作する」カテゴリに分類されると思います。トリガーはポーリングであるため、ポーリング間隔内に複数のブランチへの変更が発生した場合、ブランチの更新が見逃される可能性があります。

ブランチが作成されるたびに新しいジョブを作成することもできますが、ブランチの動的な性質のために、それは多くの進行中の作業になります。

4

2 に答える 2

4

すべてのブランチ アプローチでジョブを実行することにした場合は、次のツールを使用すると、タスクがもう少し管理しやすくなります。

于 2012-09-05T19:51:13.147 に答える
2

カスタマイズする必要があると思います。最上位のポーリング ジョブ (ヒントに合わせて調整) は、変更または追加されたブランチを特定するカスタム スクリプトを実行します。次に、Jenkins APIを使用して、ブランチ名でパラメーター化されたジョブを開始します。そのパラメーターをジョブで使用して、ブランチ名 (アーティファクトを含む) で必要なものすべてをカスタマイズできます。

于 2012-02-16T11:54:40.547 に答える