Linux上のMavenを使用してアプリケーションのビルドを自動化するためにJenkinsを使用しています。
Jenkinsで使用できるように、$Java_HOME
などの環境変数をどこに設定し、$PATH
に項目を追加する必要がありますか?
私はいくつかの異なる場所を試しましたが、成功しませんでした。ログイン/非ログイン、インタラクティブ、非インタラクティブなど、シェルジェンキンスがどのような種類のシェルを使用しているかはわかりません。
これは、グローバルツール構成の完全なシナリオです。 Jenkinsホームページから、Manage Jenkins-> Global Tool Configurationをクリックします。デフォルトのインストールがある場合、このページでは、ビルドサーバーにMavenをインストールするための複数の構成を追加できます。
ツールを構成したら、「トップレベルのMavenターゲットを呼び出す」ビルドステップを追加することで、それらをジョブで使用できます。各ジョブに特定のスレーブ/ノードを使用している場合は、各サーバーにインストールする必要があるMavenを選択できます。その後、ジョブが実行されると、Jenkinsが自動的にインストールを管理します。
特にパイプラインには、 Pipeline Maven Integrationプラグイン があります。私はそれを使用していませんが、ドキュメントから、それはあなたが求めていることを行うことができるはずです:
パイプラインプラグインとMavenの統合を提供するには、withMavenステップを使用します。これは、sh mvnまたはbat mvnを呼び出してパイプラインジョブ内で使用するようにMaven環境を構成します。
そして、このブログ投稿 Mavenプロジェクトの宣言的パイプライン は、Mavenでパイプラインを実行するようにJenkinsを構成する良い例です。
この質問はすでにスタックオーバーフローで質問されており、そこで回答を確認することをお勧めします。 Jenkinsで環境変数を設定する方法
グローバルな静的環境変数は、Jenkinsの管理>システムの構成>グローバルプロパティ>環境変数で、Jenkinsインストールに対して設定できます。
環境変数は、エグゼキュータ設定でエグゼキュータごとに設定できます。 「環境変数」のチェックボックスがあり、これをチェックすると、環境変数の設定が公開されます。
環境変数はジョブごとに設定することもできます:
Jenkinsマスターインスタンスを構成するためにconfiguration-as-codeを使用している場合、 に示すようにglobalNodeProperties
を使用できます。https://github.com/jenkinsci/configuration-as- code-plugin/blob/d9171d086fbbf92cb5807da2dd12d6fc43df7a6b/demos/jenkins/jenkins.yaml#L7-L11 :
globalNodeProperties:
- envVars:
env:
- key: FOO
value: BAR