選択したアーティファクトでプロジェクトの実行をフィルタリング - Cloud - 8.0

TalendSoftware Development Life Cycleベストプラクティスガイド

Version
Cloud
8.0
Language
日本語
Product
Talend Big Data
Talend Big Data Platform
Talend Cloud
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend JobServer
Talend Management Console
Talend Remote Engine
Talend Studio
Content
ジョブデザインと開発
デプロイメント
管理と監視
Last publication date
2024-02-29
プロジェクト項目の実行をフィルタリングして目的のアーティファクトのみをビルドするには、プロジェクトソースを継続的インテグレーションサーバー上に生成するビルドプロジェクトを設定する時に、入力したMavenパラメーター内にフィルターを宣言する必要があります。

始める前に

  • 継続的インテグレーションサーバー(この例ではJenkins)上にビルドパイプラインが作成済みであること。Jenkinsパイプラインを作成をご覧ください。
  • 実行するアーティファクトのPOMファイルへのパスを知っていること(標準ジョブ、ビッグデータジョブ、ルートなど)。これらのファイルは、Talend Studioワークスペースのworkspace/<my_project>/pomsディレクトリーにあります。
    ヒント:
    • 標準ジョブにフィルターを適用する場合、使用するパスはjobs/process/jobName_versionとなります
    • ビッグデータジョブにフィルターを適用する場合、使用するパスはjobs/process_mr/jobName_versionとなります
    • ルートにフィルターを適用する場合、使用するパスはjobs/routes/routeName_versionとなります
    • データサービスにフィルターを適用する場合、使用するパスはjobs/services/serviceName_versionとなります

手順

  1. JenkinsのホームページからTalendSimplePipelineを選択します。
  2. 左パネルで[Build with parameters] (パラメーターでビルド)をクリックし、パイプライン共有ページを開きます。
  3. JOBS_TO_BUILDエリアで、必要に合わせてジョブをフィルタリングできるようにするMavenコマンドとパラメーターを編集します。
    • デフォルトの-plコマンドは、プロジェクトにある各アーティファクトではなく、特定のアーティファクト(ジョブ、テスト、ルートなど)を生成します。
      -pl jobs/process/job_feature956_0.1
      0.1バージョンのjob_feature956標準ジョブのみをデプロイメントする。
      ヒント: 複数のアーティファクトをビルドする場合は、名前をコンマで区切ります。
    • -am (アーティファクトが-plで指定されている場合)は、プロジェクトにある特定アーティファクトの子依存項目を同時にビルドします。
      -pl jobs/process/jobparent_feature950_0.1 -am

      jobparent_feature950という名前の0.1バージョンの親ジョブ、およびその子ジョブ(jobchild_feature950_0.1)とサブ子ジョブ(jobsubchild_feature950_0.1)をデプロイメントする。

    • -amd (プロジェクトが-plで指定されている場合)は、プロジェクトにある特定アーティファクトの親依存項目を同時にビルドします。

      例:

      -pl jobs/process/jobsubchild_feature950_0.1 -amd
      jobsubchild_feature950という名前の0.1バージョンのサブ子ジョブ、およびこれに依存するジョブ(jobchild_feature950_0.1jobparent_feature950)を生成する。
      注: -amdコマンドによって、指定されたジョブに依存するすべてのモジュールがビルドされるため、ルーチンなど、このジョブの生成に必要なすべての依存項目を事前に生成しておく必要があります。

    プロジェクトのビルドディレクトリー(古いファイルの削除)をクリーンアップし、route_feature950ルートとその依存項目の生成を開始し、定義したNexusアーティファクトリポジトリーにパッケージをデプロイメントするために使用されるMavenコマンドの例:

    -fae -e -pl jobs/routes/route_feature950_0.1 -amd

    -amdパラメーターは、ルートを公開する時に必須です。ルートを公開するにはルートの依存項目を生成する必要があるためです。

    プロジェクトビルドディレクトリーのクリーニングに使用するMavenコマンドの例(古いファイルの削除)では、parentという名前の親ジョブと、その依存項目(子ジョブ)の生成が開始し、それらのパッケージ化されたアーティファクトがTalend Management Consoleにデプロイメントされます。

    -Pcloud-publisher -pl jobs/process/parent_0.1 -am

    生成されたプロジェクトを取り込み、すべてのアーティファクトのJavaコードをこのプロジェクト内にDockerイメージとしてパッケージするために使用されるMavenコマンドの例。

    -Pdocker package -fae -e
  4. [Build] (ビルド)をクリックすると、変更内容が反映されてアーティファクトがビルドされます。

タスクの結果

継続的インテグレーションサーバー上でプロジェクトを実行すると、フィルターが適用され、フィルターをかけたアーティファクトのみが生成され、実行されます。