Projet

Général

Profil

Development #21644

Installation en virtualenv --system-site-packages

Ajouté par Emmanuel Cazenave il y a environ 6 ans. Mis à jour il y a environ 6 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
05 février 2018
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

L'installation est actuellement réalisée en virtualenv --no-site-packages, ce qui engendre quelques complications :

On pourrait envisager une install en --system-site-packages, ce qui permettrait de se rapprocher un peu d'une install system, avec du coup une install des paquets debian qui vont bien :

  • toutes les dépendances de publik non EO (idéalement en allant lire dans les répertoire debian pour ne pas hardcoder les dépendances dans le playbook)

Fichiers

Historique

#1

Mis à jour par Emmanuel Cazenave il y a environ 6 ans

A noter aussi la suppression de roles/base/templates/getlasso.j2 qui est deviendrait obsolète.

#2

Mis à jour par Emmanuel Cazenave il y a environ 6 ans

Plus compliqué que j'avais anticipé : installer les dépendances en utilisant les paquets systèmes pose la question des dépôts qui vont bien à déclarer pour pouvoir les satisfaire, sachant que certains dev sont sur testing, d'autres sur unstable, donc bien à avance par rapport à Jessie, du coup probablement obligation de 'pinner' des paquets....bref j'ai pas d'idée pour faire ça proprement sans transformer le playbook en usine à gaze, qui plus est très intrusive.

Ajouté à cela que ça va être compliqué de lire les dépendances dans les debian/control (il faudrait écrire un module ansible custom pour la chose, module qui n'as pas le droit d'appeler un autre module ansible, le module ansible_apt en l’occurrence, donc qui se retrouverait à faire des apt install lui même, tchou tchou la vapeur), donc obligation d'hardcoder les dépendances dans le playbook.

Du coup je propose ici juste un switch CLI qui permet de créer le virtualenv avec l'option --system-site-packages si désiré. Charge ensuite à celui qui s'en sera servi de désinstaller du virtualenv les paquets qu'il jugera utile, et de se débrouiller avec ses répos et ses paquets système pour satisfaire les dépendances.

#3

Mis à jour par Emmanuel Cazenave il y a environ 6 ans

  • Statut changé de Nouveau à En cours
  • Assigné à mis à Emmanuel Cazenave
#4

Mis à jour par Anonyme il y a environ 6 ans

Ack, mais il faudra rebase master

#5

Mis à jour par Emmanuel Cazenave il y a environ 6 ans

Je viens de découvrir que pour faire passer un virtualenv déjà créé de 'no-site-packages' à 'system-site-packages', il suffit d'aller supprimer le fichier 'no-global-site-packages.txt' qui se trouve dans path/to/virtenv/lib/pythonX.Y.

De coup je suis plutôt d'avis de rejeter ce ticket, plutôt que d'exposer cette option aux effets secondaires non maîtrisés par le playbook. Et donc de laisser les amateurs de 'system-site-packages' se débrouiller à la mano après l'installation avec l'isolation de leur virtualenv, leurs répo debian et leurs paquets.

#6

Mis à jour par Emmanuel Cazenave il y a environ 6 ans

  • Statut changé de En cours à Rejeté

Pas de réactions, je rejette.

Formats disponibles : Atom PDF