パフォーマンス上の理由により、デフォルトではプロジェクトのPOMファイルが生成されません。継続的インテグレーションのビルドが正しく実行されるよう、まずプロジェクトのPOMファイルを作成することが必要です。Talend CI Builderを使用して
mvn org.talend.ci:builder-maven-plugin:8.0.X:generateAllPoms
コマンドでプロジェクトのPOMファイルを生成できます。
始める前に
このタスクについて
手順
-
Gitプロジェクトをチェックアウトします。
Gitプロジェクトをチェックアウトする方法の詳細は、Gitチェックアウトをご覧ください。
-
プロジェクトをチェックアウトしたディレクトリーの下にある
mvn org.talend.ci:builder-maven-plugin:8.0.X:generateAllPoms
コマンドを実行して、プロジェクトのPOMファイルを生成します。プロジェクトのPOMファイルを生成する前に、次の点にご注意ください。
- POMファイルの生成プロセスは、製品のライセンス、Talend Studioフィーチャーパッケージのリポジトリー、Talend Studioアップデートのリポジトリーに依存しています。プロセスの依存先は、対応する-Dlicense.path、-Dtalend.studio.p2.base、および-Dtalend.studio.p2.updateパラメーターで指定できます。これらのいずれかにアップデートがあった場合、対応するパラメーターでプロジェクトのPOMファイルを再生成する必要があります。
- 既にスタンドアロンステップでTalend CommandLineがインストールされており、ライセンスをアップデートしたり、Talend Studioのマンスリーアップデートを適用する必要がない場合は、-Dproduct.pathパラメーターを使ってコマンドを実行するだけの処理になります。詳細は、スタンドアロンステップでTalend CommandLineをインストール(オプション)をご覧ください。
- 移行の場合に、全プロジェクトや項目についてPOMファイルを生成したいことがあるとします。-DprojectFilterと-DitemFilterパラメーターを使用して、特定のプロジェクトや項目をフィルタリングできます。
- Talendが提供する8.0 R2022-06以降のStudioマンスリーアップデートがインストールされ、メインプロジェクトに重複する参照プロジェクトがある場合:
- 重複する参照プロジェクトのモジュールはメインプロジェクトのPOMファイルから除外され、重複する参照プロジェクトのアーティファクトはデフォルトで依存項目としてMaven .m2フォルダーにインストールされます。
- メインプロジェクトのPOMファイルを生成する時に、プロファイルを有効にするよう-Dtalend.profile.modeパラメーターを追加する必要はありません。
CI関連のパラメーターの詳細は、CIビルダー関連のMavenパラメーターをご覧ください。
次に、Talend CommandLineをインストールし、Talend Studioマンスリーアップデートを適用してから、プロジェクトの全POMファイルを生成する例を示します。
# To generate all POM files for your projects mvn org.talend.ci:builder-maven-plugin:8.0.X:generateAllPoms -Dproduct.path=/home/talend/studio -Dlicense.path=/home/talend/studio/license -Dtalend.studio.p2.base=https://update.talend.com/Studio/8/base -Dtalend.studio.p2.update=https://update.talend.com/Studio/8/updates/R2023-02
以下は、カスタムスクリプトを使ってプロジェクトの全POMファイルを生成する例です。このカスタムスクリプトによって、Mavenバージョンを変更するchangeMavenVersionコマンドと、プロジェクト用にPOMファイルを再生成するTalend CommandLineのregenerateAllPomsコマンドが呼び出されます。
# The content of the script named upgrade_version.txt -pn gitProject -ul 'jobbuilder@talend.com' -gt changeMavenVersion 1.0.5 --item-filter 'label%*test5_pere*' --subjobs --snapshot regenerateAllPoms
# To execute the custom script upgrade_version.txt mvn org.talend.ci:builder-maven-plugin:<version>:executeScript -s ./maven_settings.xml -Dgeneration.type=local -Dproduct.path=/home/talend/studio -Dlicense.path=/home/talend/studio/license -DscriptFile=/home/talend/upgrade_version.txt
-
プロジェクトのビルドをテストし、Mavenパッケージコマンドを使ってそれらをパッケージ化します。
プロジェクトをビルドしパッケージする前に、次の点にご注意ください。
- メインプロジェクトのPOMファイルを生成する際にプロファイルが有効にされていた場合、プロジェクトやアーティファクトをビルドする時に-Pパラメーターを使ってプロファイルを指定する必要があります。Mavenプロファイルの詳細は、ビルドプロファイルの概要をご覧ください。プロファイルの有効化についての詳細は、CIビルダー関連のMavenパラメーターの-Dtalend.profile.moduleパラメーターに関連する説明をご覧ください。
- Talendが提供する8.0 R2022-06以降のStudioマンスリーアップデートがインストールされ、メインプロジェクトに重複する参照プロジェクトがある場合は、メインプロジェクトをパッケージ化する際にその参照プロジェクトが共にパッケージ化されないため、個別にそれをパッケージ化する必要があります。
次に例を示します。
# To build your projects and package artifacts mvn clean package -Dlicense.path=/home/talend/studio/license -Dtalend.studio.p2.base=https://update.talend.com/Studio/8/base -Dtalend.studio.p2.update=https://update.talend.com/Studio/8/updates/R2023-02