Outils pour utilisateurs

Outils du site


software:applications:gitlab:ci_cd:troubleshooting:shell_executor_error_prepare_environment

Gitlab :

Les tests CI/CD s’exécutent correctement sur la machine de dev en invoquant localement gitlab-runner voir note débogage en local des scripts d'intégration continue.

Lorsque les modification sont poussées sur le dépôt distant, le runner mutualisé lance l'exécution des tests CI/CD mais échoue avec l'erreur

Preparing environment 
Running on nucleus...
ERROR: Job failed: prepare environment: exit status 1. Check https://docs.gitlab.com/runner/shells/index.html#shell-profile-loading for more information

Vérifier la présence de la directive shell dans le fichier de configuration du runner,

. . .
[[runners]]
  . . .
  executor = "shell"
  shell = "bash"

Si ce n'est pas le cas, ajouter la directive et redémarrer le service

systemctl restart gitlab-runner.service

Dans la plupart des cas, l'erreur se produit lorsque le script .bash_logout de l'utilisateur gitlab-runner contient des instructions d'effacement de la console:

Ici les instructions ont été commentées

.bash_logout
# ~/.bash_logout: executed by bash(1) when login shell exits.
 
# when leaving the console clear the screen to increase privacy
 
#if [ "$SHLVL" = 1 ]; then
#    [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
#fi

Références

software/applications/gitlab/ci_cd/troubleshooting/shell_executor_error_prepare_environment.txt · Dernière modification : 2023/04/13 12:27 de 92.154.112.189