J'utilise Jenkins X pour Microservice Build / Déploiement. Dans chaque environnement, il existe des secrets partagés utilisés sur des microservices (clés clientes, etc.) qui sont injectés dans déploiement.yaml code> comme variables d'environnement utilisant
valuefrom code> et
SecretKeyRef code> . Cela fonctionne bien dans la production et la mise en scène où les espaces de noms connaissent bien, mais puisque Aperçu génère un nouvel espace de noms à chaque fois, ces secrets n'existeront pas. Existe-t-il un moyen de copier des secrets d'un autre espace de noms ou d'une meilleure approche? P>
3 Réponses :
Vous pouvez créer un autre espace de noms appelé Je ne sais pas si c'est le meilleur moyen que p> JX-Aperçu code> pour enregistrer des secrets spécifiques à l'aperçu et ajouter cette ligne après la commande
JX Aperçu code> dans votre jenkinsfile p>
sh "kubectl obtenir secret {nom} --Namespace = {from_namespace} --export -o yaml | kubectl Appliquer --Namespace = jx- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ org- $ preview_namespace -f -" code> < / p>
Nous avons une commande pour servir Link Services d'un espace de noms à un autre - comme pour relier les services de la stadification de votre environnement de prévisualisation via Services JX Step Link < / a>. p>
Il serait agréable d'ajouter une commande similaire pour copier des secrets d'un espace de noms de la même manière. J'ai soulevé Un problème pour suivre cette nouvelle fonctionnalité P>
Une autre option consiste à créer votre propre travail dans graphiques / aperçu / aperçu / modèles / myjob.yaml code> et dans ce travail crée quels secrets dont vous avez besoin, cependant que vous voulez, puis l'annotez-le afin que ce soit déclenché comme une Crochet post-installation de votre tableau de prévisualisation p>