Avant de configurer l'exécution de vos Jobs - 7.0

Talend Software Development Life Cycle - Guide de bonnes pratiques

author
Talend Documentation Team
EnrichVersion
7.0
EnrichProdName
Talend Big Data
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
task
Administration et monitoring
Création et développement
EnrichPlatform
Studio Talend
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend JobServer
Prérequis dont vous devez vous assurer avant de commencer à planifier l'exécution automatique des tests avec Talend CI Builder.
  • Une version supérieure ou égale à Apache Maven 3 est installée sur votre machine. Pour plus d'informations, consultez le site Web d'Apache Maven.

  • Le serveur d'Intégration continue Jenkins est installé sur votre machine. Pour plus d'informations, consultez le site Web de Jenkins.

  • Vous avez une application Talend CommandLine qui sera uniquement utilisée dans le cadre de l'Intégration Continue (ne peut être le même Talend CommandLine que celui utilisé pour des actions génériques tels que la publication d'artefacts du Studio Talend à Talend Administration Center, la génération des tâches d'exécution dans Talend Administration Center, etc.).

  • Vous avez préalablement créé des Test Cases dans votre projet Git ou SVN que vous souhaitez exécuter de façon automatique. Pour plus d'informations, consultez Concevoir les tests.

  • Les modules externes stockés dans Nexus qui sont nécessaires à l'exécution de vos Jobs ont été correctement installés dans ce projet et votre instance de Nexus est démarrée.

    Pour plus d'informations, consultez l'article Installation de modules externes.

    Si vous utilisez Talend Administration Center, vous l'avez configuré pour récupérer les modules externes de Nexus. Consultez le Guide utilisateur de Talend Administration Center pour plus d'informations.

  • Modifiez le fichier <commandlinePath>/configuration/maven_user_settings.xml et ajoutez les informations de connexion aux référentiels de Nexus :

    <?xml version="1.0" encoding="UTF-8"?>
    <settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.1.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <localRepository>/<.m2Path>/repository</localRepository>
    
    <servers>
        <!-- credentials to access the default releases/snapshots repositories -->
        <server>
            <id>releases</id>
            <username>admin</username>
            <password>Talend123</password>
        </server>
        <server>
            <id>snapshots</id>
            <username>admin</username>
            <password>Talend123</password>
        </server>
        <!-- credentials to access the repositories holding external jars -->  
        <server>
            <id>talend-custom-libs-release</id>
            <username>admin</username>
            <password>Talend123</password>
        </server>
        <server>
            <id>talend-custom-libs-snapshot</id>
            <username>admin</username>
            <password>Talend123</password>
        </server>
        
        <!-- credentials to access the repositories holding maven plugins -->
        <server> <!-- central (as proxy) -->
            <id>central</id>
            <username>admin</username>
            <password>Talend123</password>
        </server>
        <server>
            <id>thirdparty</id>
            <username>admin</username>
            <password>Talend123</password>
        </server>
        
    </servers>
    
    <mirrors/>
    <proxies/> <!-- http proxies, not maven proxy repositories -->
    
    <profiles>
        <profile>
            <id>talend-ci</id>
            <repositories>
                <repository>
                    <id>central</id>
                    <name>central</name>
                    <url>http://localhost:8081/repository/maven-central/</url>
                    <layout>default</layout>
                </repository>
                <repository>
                    <id>talend-custom-libs-release</id>
                    <name>talend-custom-libs-release</name>
                    <url>http://localhost:8081/repository/talend-custom-libs-release</url>
                    <layout>default</layout>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>false</enabled>
                    </snapshots>
                </repository>
                <repository>
                    <id>talend-custom-libs-snapshot</id>
                    <name>talend-custom-libs-snapshot</name>
                    <url>http://localhost:8081/repository/talend-custom-libs-snapshot</url>
                    <layout>default</layout>
                    <releases>
                        <enabled>false</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
            
            <pluginRepositories>            
                <pluginRepository>
                    <id>central</id>
                    <name>central</name>
                    <url>http://localhost:8081/repository/maven-central/</url>
                    <layout>default</layout>
                </pluginRepository>
                <pluginRepository>
                    <id>thirdparty</id>
                    <name>thirdparty</name>
                    <url>http://localhost:8081/repository/thirdparty</url>
                    <layout>default</layout>
                </pluginRepository>
            </pluginRepositories>
        </profile>
    </profiles>
    
    <activeProfiles>
        <activeProfile>talend-ci</activeProfile>
    </activeProfiles>
    
    </settings>

Pour résumer, pour reproduire cet exemple vous avez besoin des applications suivantes : Talend CommandLine, un serveur d'Intégration continue (ici, Jenkins), Maven, Nexus et Talend CI Builder.