Définir les options Maven pour construire votre projet - 8.0

Talend Software Development Life Cycle - Guide de bonnes pratiques

Version
8.0
Language
Français (France)
Product
Talend Big Data
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Module
Studio Talend
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend JobServer
Content
Administration et monitoring
Création et développement
Déploiement

Vous avez la possibilité d'adapter la commande de build Maven pour l'adapter à vos besoins. Voici quelques exemples de commandes :

  • Pour construire, tester et packager les artefacts du projet d'intégration et de déploiement continus en tant que fichiers .jar ou .zip et les déployer dans le référentiel Snapshots de Nexus :
    options: '-f <ProjectName>/poms/pom.xml 
    -s <PathToDirectory>/settings.xml 
    -Dproduct.path=<CommandLinePath> 
    -Dlicense.path=<PathToDirectory>/license 
    -Dtalend.studio.p2.base=<P2BaseURL> 
    -Dtalend.studio.p2.update=<P2UpdateURL> 
    -DaltDeploymentRepository=snapshots::default::http://XXX:8081/repository/snapshots/ 
    -fae 
    -e'
    goals: 'deploy'
    • Exemple de script Groovy :

      options: '''-f CICD/poms/pom.xml 
      -s /home/talend/CI_dir/settings.xml 
      -Dproduct.path=/home/talend/talend_studio 
      -Dlicense.path=/home/talend/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/R2022-01
      -DaltDeploymentRepository=snapshots::default::http://nexus:8081/repository/snapshots/ 
      -fae 
      -e'''
      goals: 'deploy'
      Remarque : Lisez la documentation relative à la syntaxe Groovy (en anglais), pour plus d'informations concernant les formats supportés pour les chaînes de caractères multilignes.
    • Exemple de script YAML :

      options: '-f CICD/poms/pom.xml 
      -s /home/talend/CI_dir/settings.xml 
      -Dproduct.path=/home/talend/talend_studio 
      -Dlicense.path=/home/talend/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/R2022-01
      -DaltDeploymentRepository=snapshots::default::http://nexus:8081/repository/snapshots/ 
      -fae 
      -e'
      goals: 'deploy'
      Remarque : Lisez la documentation relative à la syntaxe YAML (en anglais), pour plus d'informations concernant les formats supportés pour les chaînes de caractères multilignes.

    Exemple avec un Job utilisant des composants personnalisés (des paramètres supplémentaires sont requis pour pointer vers le référentiel d'artefacts dans lequel les composants personnalisés sont stockés) :

    • Exemple Groovy :

      options: '''-f CICD/poms/pom.xml 
      -s /home/talend/CI_dir/settings.xml 
      -pl jobs/process/sample_0.1 
      -am  
      -Dcomponents.nexus.user=username 
      -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
      -Dproduct.path=/home/talend/talend_studio
      -Dlicense.path=/home/talend/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/R2022-01
      -DaltDeploymentRepository=snapshots::default::http://nexus:8081/repository/snapshots/ 
      -fae 
      -e'''
      goals: 'deploy'
      Remarque : Lisez la documentation relative à la syntaxe Groovy (en anglais), pour plus d'informations concernant les formats supportés pour les chaînes de caractères multilignes.
    • Exemple YAML :

      options: '-f CICD/poms/pom.xml 
      -s /home/talend/CI_dir/settings.xml 
      -pl jobs/process/sample_0.1 
      -am  
      -Dcomponents.nexus.user=username 
      -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
      -Dproduct.path=/home/talend/talend_studio
      -Dlicense.path=/home/talend/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/R2022-01
      -DaltDeploymentRepository=snapshots::default::http://nexus:8081/repository/snapshots/ 
      -fae 
      -e'
      goals: 'deploy'
      Remarque : Lisez la documentation relative à la syntaxe YAML (en anglais), pour plus d'informations concernant les formats supportés pour les chaînes de caractères multilignes.
    Exemple avec un Job utilisant des groupes de contextes :
    • Exemple Groovy :

      options: '''-f CICD/poms/pom.xml 
      -s /home/talend/CI_dir/settings.xml 
      -pl jobs/process/parent_0.1 
      -am  
      -Dproduct.path=/home/talend/talend_studio
      -Dlicense.path=/home/talend/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/R2022-01
      -Dtalend.job.context=dev 
      -Dtalend.job.applyContextToChildren=true 
      -fae 
      -e'''
      goals: 'deploy'
      Remarque : Lisez la documentation relative à la syntaxe Groovy (en anglais), pour plus d'informations concernant les formats supportés pour les chaînes de caractères multilignes.
    • Exemple YAML :

      options: '-f CICD/poms/pom.xml 
      -s /home/talend/CI_dir/settings.xml 
      -pl jobs/process/parent_0.1 
      -am  
      -Dproduct.path=/home/talend/talend_studio
      -Dlicense.path=/home/talend/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/R2022-01
      -Dtalend.job.context=dev 
      -Dtalend.job.applyContextToChildren=true 
      -fae 
      -e'
      goals: 'deploy'
      Remarque : Lisez la documentation relative à la syntaxe YAML (en anglais), pour plus d'informations concernant les formats supportés pour les chaînes de caractères multilignes.
    Remarque : Si le groupe de contextes que vous spécifiez n'existe pas dans le Job, le groupe de contextes par défaut sera appliqué.
  • Pour construire, tester et packager les artefacts du projet d'intégration et de déploiement continus en tant que fichiers .jar ou .zip et les déployer dans un registre Docker :
    options: '-f <ProjectName>/poms/pom.xml 
    -s <PathToDirectory>/settings.xml 
    -Dproduct.path=<CommandLinePath> 
    -Dlicense.path=<PathToDirectory>/license 
    -Dtalend.studio.p2.base=<updatesiteURL> 
    -Dtalend.studio.p2.update=<updatefolderPathOrURL> 
    -Djkube.docker.push.registry=<DockerRegistryName> 
    -Djkube.docker.username=<Dockerusername> 
    -Djkube.docker.password=<DockerPassword> 
    -Dtalend.docker.name=<DockerImageName> 
    -Xms1024m -Xmx3096m'
    goals: 'clean deploy'
    • Exemple de script Groovy :

      options: '''-f CICD/poms/pom.xml 
      -s /home/talend/CI_dir/settings.xml 
      -Dproduct.path=/home/talend/talend_studio 
      -Dlicense.path=/home/talend/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/updateXXX.zip
      -Djkube.docker.push.registry=registry.example.com/group/project 
      -Djkube.docker.username=TalendUser 
      -Djkube.docker.password=V3ryCompl3xPwd 
      -Dtalend.docker.name=cicd4talend
      -Xms1024m 
      -Xmx3096m'''
      goals: 'clean deploy'
      Remarque : Lisez la documentation relative à la syntaxe Groovy (en anglais), pour plus d'informations concernant les formats supportés pour les chaînes de caractères multilignes.
    • Exemple de script YAML :

      options: '-f CICD/poms/pom.xml 
      -s /home/talend/CI_dir/settings.xml 
      -Dproduct.path=/home/talend/talend_studio 
      -Dlicense.path=/home/talend/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/updateXXX.zip
      -Djkube.docker.push.registry=registry.example.com/group/project 
      -Djkube.docker.username=TalendUser 
      -Djkube.docker.password=V3ryCompl3xPwd 
      -Dtalend.docker.name=cicd4talend
      -Xms1024m 
      -Xmx3096m'
      goals: 'clean deploy'
      Remarque : Lisez la documentation relative à la syntaxe YAML (en anglais), pour plus d'informations concernant les formats supportés pour les chaînes de caractères multilignes.