Avant que Talend ne propose sa plateforme « Repository Manager », nous avions demandé l’intervention d’une personne de Talend pour la mise en place de leur « framework » (voir ce post). Le but de cette prestation était de nous permettre l’industrialisation de notre travail au quotidien. Le consultant Talend nous avait donc créé 2 jobs utilisant les commandes du commandline :
- le premier pour l’export de jobs d’un serveur A
- le second pour l’import de jobs dans un serveur B
TIS permet donc de faire ce travail d’import/export. Comment? c’est que nous allons voir dans ce post.
Voici le design du job « export » proposé :
Vous pourrez consulter les commandes utilisées dans ce jobs dans le wiki de Talend à cette adresse (avec les versions linux et windows).
Voici le contenu du composant tForeach (chaque ligne représente une commande)
/*connection au serveur*/
« initRemote « +context.Export_Url_Tac
/*log au bon projet*/
« logonProject -pn « +context.Export_Projet+ » -ul « +context.Export_Identifiant+ » -up « +context.Export_MotDePasse
/*Export des jobs à l’adresse indiqué en ajoutant dans le nom la date du jour si le job a type = process et à tel statut (par exemple : dev , recette ou prod) en incluant les dépendances*/
« exportItems « +context.Export_Chemin_Zip+ »_ »+TalendDate.getDate(« CCYYMMDD »)+ ».zip »+ » -if (type=process)and(status= »+context.Export_New_Status+ ») -d »
/* En exportant on change la version des jobs ainsi que leurs statuts*/
« changeVersion « +context.Export_New_Version+ » -if (type=process)and(status= »+context.Export_New_Status+ ») »
« changeStatus « +context.Export_Old_Status+ » -if (type=process)and(status= »+context.Export_New_Status+ ») »
Pour un petit rappel sur les commandes du commandline aller voir ce post
Dans le TFlowiterate on mettra : ((String)globalMap.get(« tForeach_1_CURRENT_VALUE »)) afin de récupérer ces lignes avec les bonnes valeurs et de les mettre dans un fichier csv qui sera exécuté ensuite grâce au tSystem via cette commande :
» ./TISEE-linux-gtk-x86 -nosplash -application org.talend.commandline.CommandLine -consoleLog -data commandline-workspace scriptFile « +context.Chemin_Script
Pour l’import c’est exactement la même logique avec les commandes d’import.
Pour ceux qui préfèrent le confort d’une interface graphique n’hésitez pas à aller voir du côté du « Repository Manager » (voir ce post).