2017-03-09 7 views
0

私はJunitを実行し、xmlレポートを生成するANT build.xmlを持っています。私たちのJenkins CIの設計方法は以下の通りです。JenkinsのリモートUnixサーバーでユニットテストケースを実行したい

ジェンキンスを管理する第三者チームによって私に提供されるビルドサーバーのファームがあります。ジョブ構成の負荷と制限に基づいて、コードがそこに引き込まれてビルドされます。これを投稿すると、アーティファクトが送信され、アプリケーションサーバーにデプロイされます。

私のjunitsは、特定の環境変数を参照しています。これらは、アプリケーションサーバーにのみ存在し、Jenkinsビルドサーバーには存在しません。したがって、Jenkinsのビルドサーバーでbuild.xmlを実行すると、すべてのJunitがそこで失敗します。

私が理解しているように、Jenkinsワークスペースでbuild.xmlを実行すると、プロジェクト構造が参照されます。また、ジュニットを実行した後に加えて、xmlレポートはJenkinsワークスペース自体に存在していなければならず、そのためにグラフを描画する必要があります。

このシナリオを処理する方法はありますか?

注:私は、アプリケーションサーバー上でビルドスレーブを要求する柔軟性はありません。

答えて

1

あなたはフリースタイルの仕事を使用して、または宣言パイプラインの仕事でenvironmentブロックで、またはスクリプトパイプラインの仕事でwithEnvブロックを使用している場合EnvInject Pluginを使用して、ビルド時に環境変数を設定することができます。

+0

EnvInjectプラグインを使用すると、アプリケーションサーバーにセットアップを注入し、アプリケーションをビルドサーバーにビルドできますか? –

+0

2つの関係が何であるかについては、あなたの質問でもっと明確にする必要があります。 EnvInjectプラグインを使用すると、ビルド中にJenkinsビルドエージェントで使用できる環境変数を注入できます。これはあなたが行方不明と言ったことです。 –

+0

Ok ...私はジェンキンスのビルドサーバーにセットアップをインストールする権限を持っていません。これはサードパーティによって管理されているためです。しかし、私は自分のアプリケーションサーバー上でセットアップを完了しました。ビルドサーバーで、アプリケーションサーバーで実行されるセットアップを参照できますか? –

関連する問題