[CI] Les librairies ne sont pas mises à jour en CI malgré la configuration censée le demander
Qu'est-ce que j'ai fait ?
Sur le commit https://git.leximpact.dev/leximpact/leximpact-server/-/commit/ab81287df15f14fb04bb422fd15f819886112299?merge_request_iid=74, la CI passait à l'étape check
alors qu'en local, la commande make test
renvoyait des erreurs de style.
À quoi m'attendais-je ?
À ce que le résultat en CI et en local soit identique. Mais après vérification, en local j'avais ceci :
$ pip list | grep flake8
flake8 5.0.4
flake8-bugbear 22.8.23
Alors qu'en CI (pipeline 5696), à l'étape d'installation dependencies
, nous avions :
Requirement already satisfied, skipping upgrade: flake8>=4.0.1 in ./venv/lib/python3.8/site-packages (from LexImpact-Server==2.0.0) (4.0.1)
Requirement already satisfied, skipping upgrade: flake8-bugbear>=22.3.23 in ./venv/lib/python3.8/site-packages (from LexImpact-Server==2.0.0) (22.7.1)
Informations complémentaires
Dans make install
, nous avons pourtant bien un --upgrade
.
Et à chaque nouveau commit, le job dependencies
est ré-exécuté mais visiblement, il trouve la librairie dans le cache et ne la met pas à jour
Pour résoudre le problème et avoir le même résultat à jour en CI et en local, nous avons supprimé le cache (menu CI/CD > Pipelines). Cela a bien forcé l'installation de flake8 à la version la plus récente (5.0.4).
Valide pour toute librairie. Il semble probable que la gestion du cache souffre d'un problème comparable sur leximpact-client (là aussi, des écarts entre la CI et le local ont été détectés).