2017-08-02 11 views
0

SauceLabsに対してテストを実行しながら、Maven、eGit、TestNGプラグインでEclipseを実行しています。Eclipse実行コンフィギュレーションで現在のGitブランチ名を取得する方法

私のコードは実行時にそれを見ることができ、SauceLabsセッションに適切な名前を付けるために、プロジェクトの現在のGitブランチ名をMaven実行コンフィギュレーションで取得したいと思います。

実行構成における典型的な電流Mavenのゴールラインは次のようになります。

-DtestNG.suiteXmlFile="config/regress_saucelabs.xml" clean -X test 

私の代わりに、次のようなものを書くことができるようにしたいと思います:

ECLIPSE_GIT_BRANCHがある
-DtestNG.suiteXmlFile="config/regress_saucelabs.xml" -Dgit.branch=$ECLIPSE_GIT_BRANCH clean -X test 

実行構成が使用されるときに代入されるEclipse変数。

ランタイムソリューションは、ソースリポジトリが利用できない環境でもテストコードを実行する必要があるため、最後の手段です。

ビルド時にMavenのコマンドラインでブランチ名を強く入力することを強くお勧めします。 POM変数として取得することも有効です。

答えて

1

私はそれを使用したことがないが、それはJGitのように見えますが、あなたが

別の解決策は、Javaでシェルコマンドgit branchを呼び出し、その結果を解析することです(https://doc.nuxeo.com/blog/jgit-example/)探しているものです。 Mavenプラグインを使用して

別の解決策はここで説明されています。私は、ビルド時に問題を解決して何かを得ることができない場合Put current git branch to project version

+0

おかげで、私はこれを使用します。 –

+0

@DanHankins Javaコードで実際にやりたくない場合は、別の解決策で自分の答えを更新しました – jeanr

+0

ありがとうございました。試してみましたが、Eclipse Mavenの実行コンフィギュレーションからは動作しません。シェルはそこから入手できません。 –

関連する問題