Project

General

Profile

Support #37172

Installation publik

Added by Paul H. 7 months ago. Updated 7 months ago.

Status:
Nouveau
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
23 Oct 2019
Due date:
% Done:

0%

Patch proposed:
No
Planning:
No
Demande du club utilisateur:
No

Description

Bonjour,

je rencontre une erreur avec apt install authentic2-multitenant

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Certains paquets ne peuvent être installés. Ceci peut signifier
que vous avez demandé l'impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n'ont pas encore
été créés ou ne sont pas sortis d'Incoming.
L'information suivante devrait vous aider à résoudre la situation :

Les paquets suivants contiennent des dépendances non satisfaites :
 authentic2-multitenant : Dépend: python-authentic2 (= 2.16-1~eob90+1) mais ne sera pas installé
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l'état ».

la commande
apt-cache policy authentic2-multitenant python-authentic2 python-attr; 
renvoie :
authentic2-multitenant:
  Installé : (aucun)
  Candidat : 2.16-1~eob90+1
 Table de version :
     2.16-1~eob90+1 500
        500 http://deb.entrouvert.org stretch/main amd64 Packages
python-authentic2:
  Installé : (aucun)
  Candidat : 2.16-1~eob90+1
 Table de version :
     2.16-1~eob90+1 500
        500 http://deb.entrouvert.org stretch/main amd64 Packages
python-attr:
  Installé : 16.3.0-1
  Candidat : 16.3.0-1
 Table de version :
 *** 16.3.0-1 500
        500 http://repository-debian/mirror/ftp.fr.debian.org/debian stretch/main amd64 Packages
        100 /var/lib/dpkg/status

Par avance merci, cdlt,

History

#1 Updated by Frédéric Péters 7 months ago

(je laisserai le ticket ouvert, qu'on puisse continuer dans un unique ticket jusqu'à la fin de l'installation).

Il faudrait la sortie de la commande apt install python-authentic2, qui devrait être plus claire sur ce qui empêche ce paquet d'être installé.

#2 Updated by Paul H. 7 months ago

Voici la sortie demandée :

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Certains paquets ne peuvent être installés. Ceci peut signifier
que vous avez demandé l'impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n'ont pas encore
été créés ou ne sont pas sortis d'Incoming.
L'information suivante devrait vous aider à résoudre la situation :

Les paquets suivants contiennent des dépendances non satisfaites :
 python-authentic2 : Dépend: python-attr (>= 17) mais 16.3.0-1 devra être installé
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l'état ».

#3 Updated by Frédéric Péters 7 months ago

Il devrait y avoir une version 17.4.0-2~bpo9+1 disponible dans stretch-backports; le résultat de apt-cache policy vient bien après l'ajout du dépôt via l'autre ticket ?

$ apt-cache policy python-attr
python-attr:
  Installé : 17.4.0-2~bpo9+1
  Candidat : 17.4.0-2~bpo9+1
 Table de version :
 *** 17.4.0-2~bpo9+1 900
        100 http://deb.debian.org/debian stretch-backports/main amd64 Packages
        100 /var/lib/dpkg/status
     16.3.0-1 500
        500 http://deb.debian.org/debian stretch/main amd64 Packages

#4 Updated by Paul H. 7 months ago

oui tout à fait, le résultat du apt-cache date de 16h40, après l'ajout des backports...

#5 Updated by Frédéric Péters 7 months ago

J'aurais suggéré un miroir pas à jour mais le paquet en question est dans stretch-backports depuis plus d'un an.

Au pire le télécharger/installer manuellement depuis https://packages.debian.org/stretch-backports/all/python-attr/download mais j'imagine que d'autres erreurs du même genre surviendront.

#6 Updated by Paul H. 7 months ago

je viens de rajouter le dépôt

deb http://ftp.de.debian.org/debian stretch-backports main

Cela a permis l'installation d'authentic2-multitenant

#7 Updated by Paul H. 7 months ago

Bonjour,

Je reviens vers vous l'installation de wcs ne semble pas correcte de mon côté

apt install wcs wcs-au-quotidien
Reading package lists... Done
Building dependency tree
Reading state information... Done
wcs is already the newest version (4.22-1~eob90+1).
wcs-au-quotidien is already the newest version (4.19-1~eob90+1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n]
Setting up wcs (4.22-1~eob90+1) ...
Job for wcs.service failed because the control process exited with error code.
See "systemctl status wcs.service" and "journalctl -xe" for details.
invoke-rc.d: initscript wcs, action "start" failed.
● wcs.service - w.c.s.
   Loaded: loaded (/lib/systemd/system/wcs.service; enabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: exit-code) since Thu 2019-10-24 11:58:28 CEST; 7ms ago
  Process: 12644 ExecStartPre=/usr/bin/wcs-manage migrate (code=exited, status=1/FAILURE)

Oct 24 11:58:28 src-grupub-test systemd[1]: wcs.service: Control process exited, code=exited status=1
Oct 24 11:58:28 src-grupub-test systemd[1]: Failed to start w.c.s..
Oct 24 11:58:28 src-grupub-test systemd[1]: wcs.service: Unit entered failed state.
Oct 24 11:58:28 src-grupub-test systemd[1]: wcs.service: Failed with result 'exit-code'.
dpkg: error processing package wcs (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of wcs-au-quotidien:
 wcs-au-quotidien depends on wcs; however:
  Package wcs is not configured yet.

dpkg: error processing package wcs-au-quotidien (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 wcs
 wcs-au-quotidien
E: Sub-process /usr/bin/dpkg returned an error code (1)


systemctl status wcs.service
● wcs.service - w.c.s.
   Loaded: loaded (/lib/systemd/system/wcs.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Thu 2019-10-24 11:58:32 CEST; 14s ago
  Process: 12704 ExecStartPre=/usr/bin/wcs-manage migrate (code=exited, status=1/FAILURE)

Oct 24 11:58:32 src-grupub-test systemd[1]: wcs.service: Unit entered failed state.
Oct 24 11:58:32 src-grupub-test systemd[1]: wcs.service: Failed with result 'exit-code'.
Oct 24 11:58:32 src-grupub-test systemd[1]: wcs.service: Service hold-off time over, scheduling restart.
Oct 24 11:58:32 src-grupub-test systemd[1]: Stopped w.c.s..
Oct 24 11:58:32 src-grupub-test systemd[1]: wcs.service: Start request repeated too quickly.
Oct 24 11:58:32 src-grupub-test systemd[1]: Failed to start w.c.s..
Oct 24 11:58:32 src-grupub-test systemd[1]: wcs.service: Unit entered failed state.
Oct 24 11:58:32 src-grupub-test systemd[1]: wcs.service: Failed with result 'exit-code'.

journalctl -xe
Oct 24 12:40:03 src-grupub-test postfix/pickup[14525]: 280662C2F2F: uid=122 from=<wcs>
Oct 24 12:40:03 src-grupub-test CRON[18029]: pam_unix(cron:session): session closed for user wcs
Oct 24 12:40:03 src-grupub-test postfix/cleanup[14542]: 280662C2F2F: message-id=<20191024104003.280662C2F2F@src-grupub-test.sysinfo.local>
Oct 24 12:40:03 src-grupub-test postfix/qmgr[1122]: 280662C2F2F: from=<wcs@sysinfo.local>, size=1771, nrcpt=1 (queue active)
Oct 24 12:40:03 src-grupub-test postfix/local[14543]: 280662C2F2F: to=<dcsi@sysinfo.local>, orig_to=<root>, relay=local, delay=0.02, delays=0.01/0/0/0, dsn=2.0.0, stat
Oct 24 12:40:03 src-grupub-test postfix/qmgr[1122]: 280662C2F2F: removed
Oct 24 12:40:03 src-grupub-test CRON[18030]: pam_unix(cron:session): session closed for user passerelle
Oct 24 12:40:03 src-grupub-test CRON[18031]: pam_unix(cron:session): session closed for user passerelle

Toute la config est portée par macollectivité.py, que ce soit mail ou bdd.
Quelle peut

Cdlt,

#8 Updated by Pierre Cros 7 months ago

  • Status changed from Nouveau to Rejeté

#10 Updated by Pierre Cros 7 months ago

  • Status changed from Rejeté to Nouveau

#11 Updated by Frédéric Péters 7 months ago

C'est la commande /usr/bin/wcs-manage migrate qui échoue; il faudrait la lancer en ligne de commande pour voir la raison, sudo -u wcs /usr/bin/wcs-manage migrate.

#12 Updated by Paul H. 7 months ago

C'est étrange, cela retourne :

IOError: [Errno 2] No such file or directory: '/etc/wcs/settings.py'

La configuration ne devait elle pas figurer dans settings.d/macollectivite.py?

En plaçant le contenu de la config bdd dans settings.py, j'obtiens l'erreur suivante :

sudo -u wcs /usr/bin/wcs-manage migrate
Traceback (most recent call last):
  File "/usr/lib/wcs/manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 296, in run_from_argv
    connections.close_all()
  File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 229, in close_all
    for alias in self:
  File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 223, in __iter__
    return iter(self.databases)
  File "/usr/lib/python2.7/dist-packages/django/utils/functional.py", line 35, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 163, in databases
    if self._databases[DEFAULT_DB_ALIAS] == {}:
KeyError: 'default'

#14 Updated by Frédéric Péters 7 months ago

Le fichier /etc/wcs/settings.py doit avoir été posé par le paquet; de la configuration additionnelle peut aller dans /etc/wcs/settings.d/whatever.py.

#18 Updated by Paul H. 7 months ago

Mais du coup, si ma configuration est dans settings.d/macollectivité.py, normalement je n'ai pas besoin de settings.py
Mais même en le laissant vide, j'ai toujours une erreur :

KeyError: 'default'

#19 Updated by Frédéric Péters 7 months ago

Non le fichier settings.py fourni par le paquet doit être laissé, intact.

#24 Updated by Paul H. 7 months ago

Bonjour,

J'ai désintallé wcs et wcs-au-quotidien pour tenter de repartir sur une base saine.
Je n'ai dans etc/wcs que le settings.d/macollectivité.py selon la doc fournie

Lors de apt install wcs wcs-au-quotidien, le fichier settings.py n'apparaît pas et j'ai toujours l'erreur :

#sudo apt install wcs wcs-au-quotidien

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  wcs wcs-au-quotidien
0 upgraded, 2 newly installed, 0 to remove and 15 not upgraded.
Need to get 1293 kB/2115 kB of archives.
After this operation, 11.1 MB of additional disk space will be used.
Get:1 http://deb.entrouvert.org stretch/main amd64 wcs all 4.25-1~eob90+1 [1293 kB]
Fetched 1293 kB in 0s (2169 kB/s)
Selecting previously unselected package wcs.
(Reading database ... 107071 files and directories currently installed.)
Preparing to unpack .../wcs_4.25-1~eob90+1_all.deb ...
Unpacking wcs (4.25-1~eob90+1) ...
Selecting previously unselected package wcs-au-quotidien.
Preparing to unpack .../wcs-au-quotidien_4.19-1~eob90+1_all.deb ...
Unpacking wcs-au-quotidien (4.19-1~eob90+1) ...
Setting up wcs (4.25-1~eob90+1) ...
Generating Django secret...Job for wcs.service failed because the control process exited with error code.
See "systemctl status wcs.service" and "journalctl -xe" for details.
invoke-rc.d: initscript wcs, action "start" failed.
● wcs.service - w.c.s.
   Loaded: loaded (/lib/systemd/system/wcs.service; enabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: exit-code) since Fri 2019-10-25 09:46:03 CEST; 7ms ago
  Process: 38740 ExecStartPre=/usr/bin/wcs-manage migrate (code=exited, status=1/FAILURE)

Oct 25 09:46:03 src-grupub-test systemd[1]: Failed to start w.c.s..
Oct 25 09:46:03 src-grupub-test systemd[1]: wcs.service: Unit entered failed state.
Oct 25 09:46:03 src-grupub-test systemd[1]: wcs.service: Failed with result 'exit-code'.
dpkg: error processing package wcs (--configure):
 subprocess installed post-installation script returned error exit status 1
Processing triggers for systemd (232-25+deb9u12) ...
dpkg: dependency problems prevent configuration of wcs-au-quotidien:
 wcs-au-quotidien depends on wcs; however:
  Package wcs is not configured yet.

dpkg: error processing package wcs-au-quotidien (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 wcs
 wcs-au-quotidien
E: Sub-process /usr/bin/dpkg returned an error code (1)

visu du contenu de /etc/wcs
#ls
secret  settings.d  wcs-au-quotidien.cfg.dpkg-new

Si je lance la commande sudo -u wcs /usr/bin/wcs-manage migrate

Traceback (most recent call last):
  File "/usr/lib/wcs/manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 308, in execute
    settings.INSTALLED_APPS
  File "/usr/lib/python2.7/dist-packages/django/conf/__init__.py", line 56, in __getattr__
    self._setup(name)
  File "/usr/lib/python2.7/dist-packages/django/conf/__init__.py", line 41, in _setup
    self._wrapped = Settings(settings_module)
  File "/usr/lib/python2.7/dist-packages/django/conf/__init__.py", line 110, in __init__
    mod = importlib.import_module(self.SETTINGS_MODULE)
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/usr/lib/python2.7/dist-packages/wcs/settings.py", line 188, in <module>
    exec(open(local_settings_file).read())
  File "<string>", line 43, in <module>
IOError: [Errno 2] No such file or directory: '/etc/wcs/settings.py'

Le fichier /etc/wcs/settings.py est attendu mais inextistant...

Je crée ce fichier avec la config de connexion à la bdd :

et relance la commande sudo -u wcs /usr/bin/wcs-manage migrate

Traceback (most recent call last):
  File "/usr/lib/wcs/manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 296, in run_from_argv
    connections.close_all()
  File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 229, in close_all
    for alias in self:
  File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 223, in __iter__
    return iter(self.databases)
  File "/usr/lib/python2.7/dist-packages/django/utils/functional.py", line 35, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 163, in databases
    if self._databases[DEFAULT_DB_ALIAS] == {}:
KeyError: 'default'

j'obtiens toujours cette erreur KeyError...
Quelle devrait être le contenu de settings.py?

Par avance merci,

Cdlt,

#25 Updated by Frédéric Péters 7 months ago

C'est le fonctionnement des fichiers de configuration des paquets Debian, il faut commencer par purger le paquet.

#26 Updated by Paul H. 7 months ago

en effet il valait mieux purger l'install... Désolé...

J'ai compris mon erreur : il ne faut pas configurer d'accès bdd pour wcs dans les fichiers de config <*>.py
Je pense q'ici la doc sur l'installation des composants est trompeuse :
Configuration de l'accès SQL et du mail dans /etc/wcs/settings.d/macollectivite.py

elle vient en contradiction avec la doc de création des bdd :

Une brique est spécifique : w.c.s.. Pour w.c.s., il n'y a pas besoin de création d'une base, elle sera effectuée lors de l'instanciation. En revanche, l'utilisateur w.c.s. sur PostgreSQL doit avoir le droit CREATEDB, donc :

CREATE USER wcs PASSWORD 'indiquer-ici-le-mot-de-passe-pour-wcs' CREATEDB;

Cdlt,

#27 Updated by Frédéric Péters 7 months ago

En effet, j'ai créé #37219 pour corriger la documentation sur ce point.

#28 Updated by Paul H. 7 months ago

Merci beaucoup.

J'en suis au déploiement des instances :
sudo -u hobo hobo-manage cook /srv/nfs/publik/scripts/recipe-macollectivite-prod.json -v 2

Traceback (most recent call last):
  File "/usr/lib/hobo/manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 327, in execute
    self.check()
  File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 359, in check
    include_deployment_checks=include_deployment_checks,
  File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 346, in _run_checks
    return checks.run_checks(**kwargs)
  File "/usr/lib/python2.7/dist-packages/django/core/checks/registry.py", line 81, in run_checks
    new_errors = check(app_configs=app_configs)
  File "/usr/lib/python2.7/dist-packages/django/core/checks/model_checks.py", line 30, in check_all_models
    errors.extend(model.check(**kwargs))
  File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 1284, in check
    errors.extend(cls._check_fields(**kwargs))
  File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 1359, in _check_fields
    errors.extend(field.check(**kwargs))
  File "/usr/lib/python2.7/dist-packages/django/db/models/fields/__init__.py", line 913, in check
    errors = super(AutoField, self).check(**kwargs)
  File "/usr/lib/python2.7/dist-packages/django/db/models/fields/__init__.py", line 219, in check
    errors.extend(self._check_backend_specific_checks(**kwargs))
  File "/usr/lib/python2.7/dist-packages/django/db/models/fields/__init__.py", line 321, in _check_backend_specific_checks
    if router.allow_migrate(db, app_label, model_name=self.model._meta.model_name):
  File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 300, in allow_migrate
    allow = method(db, app_label, **hints)
  File "/usr/lib/python2.7/dist-packages/tenant_schemas/routers.py", line 19, in allow_migrate
    db_engine = settings.DATABASES[db]['ENGINE']
TypeError: string indices must be integers, not str

Après cela devrait être terminé : j'arrêterai de vous solliciter ainsi... ;-)

Cdlt,

#29 Updated by Paul H. 7 months ago

Bonjour,

J'ai repris l'ensemble, et j'arrive toujours sur l'erreur au moment du déploiement...
Auriez vous une idée pour me permettre d'avancer?

Par avance merci,

Bien cordialement,

#30 Updated by Frédéric Péters 7 months ago

Je n'ai jamais rencontré cette erreur; je suggérerais en fait d'installer postgresql en local sur le même serveur, d'éliminer toute configuration particulière puis refaire l'installation des paquets.

Also available in: Atom PDF