Je travaille sur l'automatisation du déploiement pour dev et prod avec des tâches sqoop qui doivent être transférées sur des serveurs spécifiques pour chaque type. Avec ces tâches, les scripts associés à chaque travail Sqoop doivent changer en fonction de dev vs prod. Actuellement, j'ai un repo git contenant un dossier dev et prod où les changements de dev approuvés sont mis sur le dossier prod mais avec les variables (références à la base de données dev vs base de données prod) changé. Ensuite, j'ai deux pipelines jenkins qui s'associent à chacun et ont des déclencheurs indépendants. C'est incroyablement hacky. Mon plan actuel consiste à consolider dans un seul dossier et à remplacer toutes les variables par une pseudo-variable telle que% DBPREFIX%, puis avoir chaque regex de pipeline associé et remplacer toutes les correspondances par son préfixe de base de données associé lors de la compilation.Déploiement de pipeline Jenkins pour la production et le développement
Les fichiers qui doivent être modifiés sont des scripts shell et des scripts hive, donc je ne peux pas simplement définir une variable d'environnement dans le shell du nœud Jenkins.
Y a-t-il une meilleure façon de gérer cela?
tl; dr: J'ai besoin de définir des variables dans différents fichiers qui peuvent être changés automatiquement via un pipeline jenkins.