環境に合ったパラメータを使ってJenkinsパイプラインを実行 - Cloud

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

Version
Cloud
Language
日本語 (日本)
Product
Talend Cloud
Module
Talend Artifact Repository
Talend Management Console
Talend Studio
Content
ジョブデザインと開発
デプロイメント
管理と監視

目標とするMavenフェーズと、アーティファクトのデプロイ先とするリポジトリーに従って、Talendが提供するパイプラインスクリプトを設定してプロジェクトアイテムを生成します。

パラメーターの一部には、以前に定義したmaven_settingsファイルと、Jenkinsに保存した認証情報が使用されます。パイプラインの設定で使用できるTalendMavenのパラメーターに関するその他の情報は、TalendのカスタムMavenビルドのオプションを参照してください。

手順

  1. JenkinsのホームページからTalendSimplePipelineを選択します。
  2. 左パネルで[Build with parameters] (パラメーターでビルド)をクリックし、パイプライン共有ページを開きます。
  3. スクリプトで定義されている環境変数(Gitプロジェクト名とブランチ、ジョブ名/バージョン/タイプ、Mavenゴール、リポジトリーURLなど)に独自の値を設定します。
    ヒント:
    • 各フィールドの説明に示されているパラメーターをコピーし、対応するパラメーターフィールドに貼り付けることができます。
    • また、Talendが例として提供しているjenkins_talend_helper.groovyスクリプトで<>参照を直接検索し、お使いの環境に合った値に置き換えることもできます。スクリプトは、Talend Help Centerのこのページにある[Downloads] (ダウンロード)タブで見つかります。

    例え

    CICDというプロジェクト、バージョンが0.1my_simple_jobmy_complex_jobmy_other_complex_jobという各ジョブをcicd4talendというDockerイメージにデプロイする場合の値は次のようになります。
    パラメーター デフォルト値の例
    GIT_PROJECT_LIST
    CICD;https://github.com/talenduser/CICD.git;main
    JOBS_TO_BUILD
    jobs/process/my_simple_job_0.1,jobs/process/my_complex_job_0.1,jobs/process/my_other_complex_job_0.1
    MVN_GOALS
    clean deploy -Pdocker
    TALEND_CI_RUN_CONFIG
    -Dlicense.path=license 
    -Dtalend.studio.p2.base=https://update.talend.com/Studio/8/base
    -Dtalend.studio.p2.update=https://update.talend.com/Studio/8/updates/latest
    -Dorg.slf4j.simpleLogger.showDateTime=true 
    -Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss,SSS
    注: ビルド時にTalend CommandLineを自動的にダウンロードしてインストールできるよう-Dtalend.studio.p2.updateパラメーターか、ローカルの生成タイプを使用することをお勧めします。
    TALEND_CI_BUILD_OPTIONS
    -Dtalend.docker.name=cicd4talend 
    -Djkube.docker.push.registry=talenddockerregistry 
    -Djkube.docker.username=talenduser 
    -Djkube.docker.password=Talenddock3rpassw0rd
    警告: 構文の要件:
    • GIT_PROJECT_LISTパラメーターの値は大文字でなければならず、それ以外の場合はビルドエラーが発生する可能性があります。プロジェクト名に特殊文字を必要とするか、または最終構文に疑問がある場合は、プロジェクトの親pom.xmlファイル(<project>/poms/pom.xml内のtalend.project.name変数)で確認できます。
    • ジョブ/ルート/サービスの元の名前に大文字が含まれていた場合でも、JOBS_TO_BUILDパラメーターの値は小文字でなければなりません。これは、ビルドの起動に必要な.pomファイル内ではアーティファクトがすべて小文字であるためです。
    • -SNAPSHOTサフィックスはバージョン値に手動で追加しないでください。スナップショットとリリースはバージョン自体から切り離されており、Studioの環境設定からのみ操作する必要があります。各アーティファクトのデプロイメントバージョンを一括変更を参照してください。
  4. プロジェクトアーティファクトをデプロイするアーティファクトリポジトリーを定義するには、MVN_GOALSパラメーターに示されているリポジトリーURLを編集します。

    Talendが提供するデフォルトスクリプトに定義されているリポジトリーは、Nexus releasesリポジトリーです。

    例え

    パラメーター デフォルト値の例
    MVN_GOALS
    clean deploy -DaltDeploymentRepository=maven-releases::default::http://localhost:8081/repository/maven-snapshots/

    アーティファクトをNexus snapshotsリポジトリーにデプロイできます(開発中のプロジェクトとバージョンが-SNAPSHOTのアーティファクトが対象)。

    独自のアーティファクトリポジトリーのURLを指定すること、そしてMavenゴールと-DaltDeploymentRepositoryパラメーターの間で改行されないようにすることが必要です。

  5. 実現したいMavenのフェーズとプロファイルを定義するためには、MVN_GOALSパラメーターに示されているフェーズが実行したいフェーズであることを確認します。
    Mavenのフェーズについては、Mavenのドキュメンテーションをご覧ください。
    ヒント: すべてのビルドプロファイル(-Pdocker -Pnexusなど)がプロジェクトの親pom.xmlファイルにリスト表示されます。Dockerイメージ名や、Open JDK名など、一部のデフォルトパラメーターはこのファイルで上書きすることもできます。

    例え

    パラメーター デフォルト値の例
    MVN_GOALS
    deploy -Pdocker

    プロジェクトアイテムの実行に適用できるフィルターの例は、選択したアーティファクトでプロジェクトの実行をフィルタリングを参照してください。

  6. プロジェクトアーティファクトをデプロイするTalend Cloud Management Consoleのワークスペースと環境を定義するためには、TALEND_CI_BUILD_OPTIONSパラメーターに示されているDocker認証情報を編集します。

    例え

    パラメーター デフォルト値の例
    TALEND_CI_BUILD_OPTIONS
    -Dservice.url=https://tmc.eu.cloud.talend.com/inventory
    -Dcloud.token=XXX1234TalendCloudToken1234XXX
    -Dcloud.publisher.screenshot=true 
    -Dcloud.publisher.environment=prod
    -Dcloud.publisher.workspace=ci-workspace

    prod環境のci-workspaceという名前のワークスペース内にあるTalend Cloudアカウントに、アーティファクトを(スクリーンショットと共に)デプロイできます。独自のTalend Cloud環境とワークスペースを指定する必要があります。

  7. プロジェクトアーティファクトをデプロイするDockerレジストリーを定義するためには、TALEND_CI_BUILD_OPTIONSパラメーターに示されているDocker認証情報を編集します。

    例え

    パラメーター デフォルト値の例
    TALEND_CI_BUILD_OPTIONS
    -Dtalend.docker.name=cicd4talend 
    -Djkube.docker.push.registry=talenddockerregistry 
    -Djkube.docker.username=talenduser 
    -Djkube.docker.password=Talenddock3rpassw0rd

    アーティファクトを、以前に任意のDockerで定義したDockerイメージとしてデプロイできます。

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