Project

General

Profile

Development #66488

tox : refactoring des cibles pour coller davantage aux dépendances dans leur version d’une release debian donnée

Added by Paul Marillonnet 11 days ago. Updated 4 days ago.

Status:
Résolu (à déployer)
Priority:
Normal
Category:
-
Target version:
-
Start date:
22 Jun 2022
Due date:
% Done:

0%

Estimated time:
Patch proposed:
Yes
Planning:
No

Description

problème relevé dans #66438, où on a des croisements étranges entre versions de dépendances dans les cibles tox.


Files


Related issues

Related to Authentic 2 - Development #66438: auth_oidc: JWK.get n'existe pas dans la version 0.8.0 de jwcrypto disponible en bullseye (remplacer par les accesseurs correspondant dans ce cas)Solution déployée21 Jun 2022

Actions
Related to Authentic 2 - Development #66595: tox: régorganiser les cibles autour des versions de debianRejeté24 Jun 2022

Actions

Associated revisions

Revision cd12cdc0 (diff)
Added by Paul Marillonnet 4 days ago

tox: remove deprecated dependency rules (#66488)

Revision 474b5691 (diff)
Added by Paul Marillonnet 4 days ago

tox: explicitly match envs dependencies with debian releases (#66488)

Revision e89d757e (diff)
Added by Paul Marillonnet 4 days ago

jenkins: adapt jenkinsfile scripts to env changes in tox.ini (#66488)

History

#1

Updated by Paul Marillonnet 11 days ago

  • Related to Development #66438: auth_oidc: JWK.get n'existe pas dans la version 0.8.0 de jwcrypto disponible en bullseye (remplacer par les accesseurs correspondant dans ce cas) added
#3

Updated by Paul Marillonnet 9 days ago

  • Related to Development #66595: tox: régorganiser les cibles autour des versions de debian added
#4

Updated by Benjamin Dauvergne 9 days ago

À quoi sert la cible stable-backports ?

#5

Updated by Paul Marillonnet 9 days ago

Benjamin Dauvergne a écrit :

À quoi sert la cible stable-backports ?

À tester le backports de django dans bullseye (version 3.2 au lieu de 2.2) et celui de django-tables qu’on imaginait faire nous-mêmes (#64568, la v2.4.1 au lieu de 2.2.1).

#6

Updated by Paul Marillonnet 6 days ago

  • Assignee set to Paul Marillonnet
#7

Updated by Benjamin Dauvergne 5 days ago

Bon je n'arrive pas à faire un truc qui fonctionne de mon coté, les contraintes de dépendances ne sont plus respectées quand je réorganise et je ne trouve pas la différence entre ton patch et le mien, mais j'aurai aimé encore simplifier les cibles pour enlever authentic du nom des cibles et avoir :
  • py3
  • py3-buster
  • py3-bullseye
  • py3-stable-backports
  • py3-rbac (et utiliser les règles rbac: et !rbac pour lancer les tests rbac ou authentic)

J'ai poussé une branche avec ces modifications pour voir si ça passe avec tes patchs.

#8

Updated by Benjamin Dauvergne 5 days ago

Benjamin Dauvergne a écrit :

J'ai poussé une branche avec ces modifications pour voir si ça passe avec tes patchs.

Et ça marche ! \o/ Je vais quand même rebasé et testé localement parce que c'est [tox:jenkins] qui s'est exécuté ici.

#9

Updated by Paul Marillonnet 4 days ago

Benjamin Dauvergne a écrit :

Et ça marche ! \o/ Je vais quand même rebasé et testé localement parce que c'est [tox:jenkins] qui s'est exécuté ici.

L’idée de l’environnement py3 c’est de tester sans chercher à attraper les dépendances dans leurs versions empaquetées dans debian, c’est ça ?

#10

Updated by Benjamin Dauvergne 4 days ago

Paul Marillonnet a écrit :

Benjamin Dauvergne a écrit :

Et ça marche ! \o/ Je vais quand même rebasé et testé localement parce que c'est [tox:jenkins] qui s'est exécuté ici.

L’idée de l’environnement py3 c’est de tester sans chercher à attraper les dépendances dans leurs versions empaquetées dans debian, c’est ça ?

Oui, c'est de testé le paquet sur les dernières versions dispo sur pypi quand on a pas mis de limite de versions, ça nous permet de voir les soucis en avance (PS: et de maintenir le setup.py correctement).

#11

Updated by Paul Marillonnet 4 days ago

Ok. Je squashe les modifications de ton commit wip respectivement dans 0002 pour les modifs du fichier tox.ini et dans 0003 pour les modifs du Jenkinsfile, c’est bon pour toi ?

#12

Updated by Benjamin Dauvergne 4 days ago

Tout à fait.

#13

Updated by Benjamin Dauvergne 4 days ago

L'histoire du kid a été corrigé après la 0.6, on n'y peut rien je crois, par défaut avant la 0.8 jwcrypto impose qu'un kid soit déclaré dans le header du jwt et dans le jwkset pour identifier la clé, dans les versions suivantes si pas de kid, il essaie toutes les clés du jwkset, je dois pouvoir retrouver le ticket github sur le sujet.

#14

Updated by Paul Marillonnet 4 days ago

Benjamin Dauvergne a écrit :

L'histoire du kid a été corrigé après la 0.6, on n'y peut rien je crois, par défaut avant la 0.8 jwcrypto impose qu'un kid soit déclaré dans le header du jwt et dans le jwkset pour identifier la clé, dans les versions suivantes si pas de kid, il essaie toutes les clés du jwkset, je dois pouvoir retrouver le ticket github sur le sujet.

Avec le rebasage sur les modifications du tox.ini pour tester ces contraintes sur jwcrypto, ça donne ça.
Aussi, dans tox:jenkins on teste maintenant deux jeux de tests complets (buster et bullseye), ça éclate le temps de build des branches wip, je pense qu’il faut ne laisser que buster pour l’instant, et reléguer bullseye au job de la branche main.

#15

Updated by Frédéric Péters 4 days ago

il faut ne laisser que buster pour l’instant, et reléguer bullseye au job de la branche main.

L'inverse plutôt. (on devrait refaire un point mais il y avait objectif bullseye partout pour ce premier semestre).

#16

Updated by Benjamin Dauvergne 4 days ago

Frédéric Péters a écrit :

L'inverse plutôt. (on devrait refaire un point mais il y avait objectif bullseye partout pour ce premier semestre).

Oui allons y pour bullseye à parte django-tables2 et django-rest-framework il n'y a pas de différence dans les dépendances. Par contre je ne vois pas la contrainte sur jwcrypto pour buster et bullseye, pour bullseye ça devrait être au moins jwcrypto<0.9 (et pour buster on sait que ça marche <0.7 avec des limitations, on peut mettre pareil).

#17

Updated by Benjamin Dauvergne 4 days ago

  • Status changed from Solution proposée to Solution validée
#18

Updated by Paul Marillonnet 4 days ago

  • Status changed from Solution validée to Résolu (à déployer)
commit e89d757e352f0c6e7f7db16a49ed24f549f044e4
Author: Paul Marillonnet <pmarillonnet@entrouvert.com>
Date:   Wed Jun 22 18:45:15 2022 +0200

    jenkins: adapt jenkinsfile scripts to env changes in tox.ini (#66488)

commit 474b56913a9c5c5e0346361e9530942f1f1a345d
Author: Paul Marillonnet <pmarillonnet@entrouvert.com>
Date:   Wed Jun 22 18:43:15 2022 +0200

    tox: explicitly match envs dependencies with debian releases (#66488)

commit cd12cdc0ebffbc817e834a804f48cb3d142f5282
Author: Paul Marillonnet <pmarillonnet@entrouvert.com>
Date:   Wed Jun 22 18:36:22 2022 +0200

    tox: remove deprecated dependency rules (#66488)

Also available in: Atom PDF