Bonjour à tous!
J'utilise Jenkins pour faire des tests fonctionnels avec des tâches Rake qui sont appelées par deux Batch Windows. Mon Jenkins est sur une Debian sous VirtualBox et utilise ma machine Windows comme slave machine.
Une des tâches Rake fait appel au framework Cucumber pour les scenarios de test à proprement parler.
Le processus de tests (dans les shells Jenkins) est ordonné de cette manière :
Un premier Batch
Deuxième Batch
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 call rake uninstall call rake install call rake check
La tâche "rake install" est censé déployer un programme et rajouter/configurer des variables d'environnement dans le Registre (et non pas avec des set), comme par exemple le Path.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 call rake cucumber call rake uninstall
La tâche "rake check" est contrôle la présence des différentes variables d'environnement dans l'environnement courant.
La tâche "rake cucumber" exécute les scénarios de tests en se basant sur les variables d'environnement dont il a besoin.
Le produit que je teste positionne, à l'installation, le Path et d'autres variables d'environnement en modifiant le Registre "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment".
Théoriquement, lorsque Jenkins ouvre un nouveau Batch, l'environnement est chargé depuis le Registre Windows et je suis censé avoir mon Path (entre autre) qui est chargé correctement.
Or dans mon cas ce n'est pas le cas, le second Batch n'aura pas l'environnement chargé depuis le Registre.
Je n'ai aucune connaissance des Batchs Windows et cette méthode de fonctionnement par variable d'environnement est imposé par le produit lui-même.
Mon idée est de lancer un Batch, comme quand on lance un Shell de login Linux (i.e. "bash --login").
Quelqu'un sait-il d'où peut venir cette erreur?
Merci à vous!
Partager