メイン コンテンツをスキップする 補完的コンテンツへスキップ

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

プロジェクト項目の実行をフィルタリングして目的のアーティファクトのみをビルドするには、プロジェクトソースを継続的インテグレーションサーバー上に生成するビルドプロジェクトを設定する時に、入力したMavenパラメーター内にフィルターを宣言する必要があります。

始める前に

  • 継続的インテグレーションサーバー(この例ではJenkins)上にビルドパイプラインが作成済みであること。Jenkinsパイプラインを作成をご覧ください。
  • 実行するアーティファクトのPOMファイルへのパスを知っていること(標準ジョブ、ビッグデータジョブ、ルートなど)。これらのファイルは、Studio Talendワークスペースの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] (ビルド)をクリックすると、変更内容が反映されてアーティファクトがビルドされます。

タスクの結果

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

このページは役に立ちましたか?

このページまたはコンテンツに、タイポ、ステップの省略、技術的エラーなどの問題が見つかった場合は、お知らせください。改善に役立たせていただきます。