プロモーテッド ビルド プラグインと Mercurial プラグインを備えた Jenkins CI サーバーを使用しています。ビルドがプロモートされたときにやりたいことは、そのビルドに対応する Mercurial のリビジョンにタグを付けることです。
Mercurial プラグインは MERCURIAL_REVISION_NUMBER と呼ばれる環境変数を公開します。これはビルドの実行時に設定されますが、プロモーションの実行時には設定されません。したがって、プロモーションの「Windowsバッチコマンドを実行する」ステップで次のことを実行しようとすると:
hg tag --rev %MERCURIAL_REVISION_NUMBER% "Promoted-%PROMOTED_NUMBER%-%PROMOTED_ID%"
%MERCURIAL_REVISION_NUMBER% が空の文字列に評価されるため失敗し、 --rev 引数に値が指定されません。
Mercurial リビジョンが各ビルドの build.xml ファイルに保存されていることに気付きました。昇進の段階で簡単にアクセスできる方法はないかと考えています。