TalendのカスタムMavenビルドのオプション - 7.3

Talendソフトウェア開発ライフサイクルベストプラクティスガイド

EnrichVersion
7.3
EnrichProdName
Talend Big Data
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
EnrichPlatform
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend JobServer
Talend Studio
task
ジョブデザインと開発
デプロイメント
管理と監視
継続的インテグレーションサーバーでアーティファクトをビルド、実行、公開する時にパスできるオプションです。
Talendは、標準のMavenベースの継続的インテグレーション(CI)実装を利用します。CI Mavenコマンドは通常、次のようになります:
mvn \
        -f <project name>/poms/pom.xml \
        -am -pl <comma separated list of jobs modules> \
        -Dgeneration.type=local
        -Dlicense.path=<local path or url> \
        -Dupdatesite.path=<local path or url> \
        clean deploy
例:
mvn -f C:/CI_CD/MYPROJECT/poms/pom.xml clean deploy -fn -e -pl jobs/process/priorTest_0.1 -am -Dlicense.path=C:/CI_CD/license -Dupdatesite.path=http://localhost:8080/P2/ -Dproject.distributionManagement.snapshotRepository.url=http://localhost:8081/repository/snapshots/ -Dproject.distributionManagement.snapshotRepository.id=snapshots -DaltDeploymentRepository=snapshots::default::http://localhost:8081/repository/snapshots/

Talend関連のMavenパラメーター

Mavenパラメーター
Talend CommandLineパラメーター -Dupdatesite.path ビルド時にTalend CommandLineのP2リポジトリーをダウンロードしてインストールできるサーバーのURLアドレスです。このサイトには、Mavenプラグイン、およびパイプラインのビルドに必要となる外部ライブラリーがすべて含まれています。TomcatアプリケーションにP2リポジトリーを組み込む方法の例については、アーティファクトの実行をスケジューリングする前にを参照してください。
例:
-Dupdatesite.path=http://localhost:8080/P2/
警告: このパラメーターは、P2更新サイトアーカイブ(Talendから提供)を有するユーザーのみが対象です。
-DforceUpdate (値なし)ローカルインストールが存在する場合も、この更新サイトからのTalend CommandLineのインストールを強制します。
-Dpatch.path インストールしたパッチ、またはインストールしたいパッチ(Talend Studio p2パッチ、手動パッチ、コンポーネントパッチなど)へのパスです。
パッチをローカルにインストールした場合の例:
-Dpatch.path=D:/patches/Patch_TPS-2222.zip,D:/patches/Patch_TPS-3333.zip
ダウンロードするパッチの例:
-Dpatch.path=http://localhost:8085/nexus/content/repositories/releases/Patch_TPS-2222.zip,http://localhost:8085/nexus/content/repositories/releases/Patch_TPS-3333.zip

リモートパッチがある場所へのアクセスで認証情報が必要となる場合は、-Dpatch.remote.userパラメーターと-Dpatch.remote.passwordパラメーターを使用します。patch.remote.passwordパラメーターによって、Mavenで暗号化されるパスワードを設定できます。

-Dgeneration.type アーティファクトのソースを生成する値としてlocalと入力すると、ビルドの実行中にTalend CommandLineを実行していなくてもテストをローカルに行うことができます。
例:
-Dgeneration.type=local

server生成タイプは非推奨となっています。

-Dlicense.path Talend製品のライセンスへのパスです。

ライセンスパスの値がURLで、アクセスに認証情報が必要な場合は、パラメーター-Dlicense.remote.user-Dlicense.remote.passwordを使います。

-Dcommandline.skip アーティファクトのソースコード生成をスキップするための値として、trueと入力します。このパラメーターは、以前にTalend CommandLineを使用してアーティファクトを生成したことがある場合のみ使用できます。
例:
-Dcommandline.skip=true
-DprojectFilter 特定のプロジェクトのみ構築できます。
CIで始まる名前を持つすべてのプロジェクトに対するフィルタリングの例:
-DprojectFilter="CI.*"
-DitemFilter 特定のプロジェクトアイテムのみ構築できます。

ラベルが job_devである特定ジョブに対するフィルタリングの例:

-DitemFilter="label=job_dev"

Integrationというサブフォルダーのすべてジョブに対するフィルタリングの例:

-DitemFilter="path=Integration"

ステータスがTESTであるすべてのジョブに対するフィルタリングの例:

-DitemFilter="(status=TEST)"

名前がjobExportで始まるもののsandoboxフォルダーには存在しないすべてのジョブに対するフィルタリングの例:

-DitemFilter="(!path=sandbox)and(label%jobExport*)"
-Dtalend.job.context-Dtalend.job.applyContextToChildren ジョブのビルド、およびジョブ実行のスケジューリング時は、ビルド時に全ジョブに適用するコンテキストグループを指定します。
devという名前のコンテキストグループを親ジョブにのみ適用し、デフォルトのコンテキストグループを子ジョブに適用する場合の例:
-Dtalend.job.context=dev 
devという名前のコンテキストグループを親ジョブに適用し、同じコンテキストグループを子ジョブに適用する場合の例:
-Dtalend.job.context=dev -Dtalend.job.applyContextToChildren=true 

指定したコンテキストグループがジョブに存在しない場合は、デフォルトのコンテキストグループが適用されます。

カスタムコンポーネントのパラメーター -Dcomponents.* カスタムコンポーネントを使用するジョブをアーティファクトリポジトリーにデプロイする時は、コンポーネントライブラリーが保存されているリポジトリーを指定します。
例:
-Dcomponents.nexus.user=<user> 
-Dcomponents.nexus.password=<password> 
-Dcomponents.nexus.url=http://localhost:8081/
-Dcomponents.nexus.repository=talend-custom-libs-release 
-Dcomponents.nexus.repository.snapshot=talend-custom-libs-snapshot
アーティファクトリポジトリーパラメーター -DaltDeploymentRepository アーティファクトリポジトリー(Nexus、Artifactory)にデプロイする時に、プロジェクトアーティファクトをデプロイする別のリポジトリーを指定します。

形式: id::layout::url

例:
-DaltDeploymentRepository=snapshots::default::http://localhost:8081/repository/snapshots/
Dockerパラメーター -Ddocker.push.registry イメージを共有するDockerレジストリーを指定します。
-Ddocker.push.username Dockerレジストリーにログインするアカウントに対応するDockerユーザーを指定します。

Talendから提供されたデフォルトスクリプト内の ${env.Dusername}変数に対応する値、すなわち、Jenkinsに保存されている認証情報で定義されたDockerユーザーです。

-Ddocker.push.password Dockerレジストリーにログインするアカウントに対応するDockerパスワードを指定します。

Talendから提供されたデフォルトスクリプト内の ${env.Dpassword}変数に対応する値、すなわち、Jenkinsに保存されている認証情報で定義されたDockerパスワードです。

-Dtalend.docker.name 作成されるDockerイメージの名前を指定します。
-Dstudio.prometheus.metrics Dockerへの公開中にこのコマンドをtrue値と共に追加すれば、CamelのメトリクスがPrometheusに公開され、デプロイされたルートの詳細(処理交換数、エラー数、秒あたりのリクエスト数など)が提供されます。
-Dtalend.project.branch ビルドするタグ、およびタグ付けされた関連アーティファクトを指定します。
例:
-Dtalend.project.branch=tags/mytag
-Xms -Xmx Mavenで使用できるメモリを増やすことを可能にするJVM引数です。
-Dstudio.talendDebug たとえばビルドの問題をサポートチームと一緒にデバッグしている時にこのパラメーターをtrue値と共に追加すれば、さらにログを取得できます。
例:
-Dstudio.talendDebug=true
-Dcodes.compile.failOnError ビルドしているアーティファクトで使用されない、コンパイルエラーを持ったルーチンが発生する時にCIビルドが失敗することを防止するには、このパラメーターをfalse値で追加し、それらをスキップしてコンパイルを続行します。
例:
-Dcodes.compile.failOnError=false