Closed geobrun closed 5 months ago
Je tente une installation sur debian 12. J'utilise la branche dev
après un git clone
du projet. Je vous fais un retour des difficultés rencontrées.
Premier lancement de install/install_app.sh
:
E: Le paquet « python-setuptools » n'a pas de version susceptible d'être installée
E: Le paquet « python-dev » n'a pas de version susceptible d'être installée
Dans install/install_app.sh
, je remplace python-dev
par python-dev-is-python3
et python-setuptools
par python3-setuptools
Je relance install/install_app.sh
L'installation des paquets se déroule alors normalement mais l'erreur suivante remonte :
error: externally-managed-environment
× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.
If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv.
Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.
If you wish to install a non-Debian packaged Python application,
it may be easiest to use pipx install xyz, which will manage a
virtual environment for you. Make sure you have pipx installed.
See /usr/share/doc/python3.11/README.venv for more information.
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
Dans install/install_app.sh
je commente la ligne 31 pip3 install --upgrade pip
et je mets ce code dans la partie correpondant à l'exécution de pip dans le venv. C'est à dire après l'activation du venv
...
source .venv/bin/activate
#Maj de pip
pip3 install --upgrade pip
pip install -r requirements.txt
...
Je relance install/install_app.sh
. Cette fois-ci pip se met à jour en version 24 puis installe tout sans erreur. Puis nouvelle erreur :
Successfully installed alembic-1.13.1 attrs-23.2.0 blinker-1.7.0 cachelib-0.9.0 certifi-2024.2.2 charset-normalizer-3.3.2 click-8.1.7 click-plugins-1.1.1 cligj-0.7.2 coloredlogs-15.0.1 fiona-1.9.5 flasgger-0.9.7.1 flask-2.3.3 flask-admin-1.6.1 flask-caching-2.1.0 flask-ckeditor-0.4.6 flask-cors-3.0.10 flask-jwt-extended-4.6.0 flask-migrate-4.0.5 flask-sqlalchemy-2.5.1 geoalchemy2-0.14.3 geojson-2.5.0 greenlet-3.0.3 gunicorn-20.1.0 humanfriendly-10.0 idna-3.6 itsdangerous-2.1.2 jinja2-3.1.3 jsonschema-4.21.1 jsonschema-specifications-2023.12.1 mako-1.3.2 markupsafe-2.1.5 marshmallow-3.20.2 marshmallow-geojson-0.5.0 marshmallow-sqlalchemy-1.0.0 mistune-3.0.2 packaging-23.2 passlib-1.7.4 psycopg2-binary-2.9.9 pyjwt-2.8.0 python-dateutil-2.8.2 pyyaml-6.0.1 referencing-0.33.0 requests-2.31.0 rpds-py-0.17.1 setuptools-69.0.3 shapely-1.8.5.post1 six-1.16.0 sqlalchemy-1.4.51 toml-0.10.2 typing-extensions-4.9.0 urllib3-2.2.0 utils-flask-sqlalchemy-0.4.1 utils-flask-sqlalchemy-geo-0.2.8 werkzeug-3.0.1 wtforms-3.1.2 xlwt-1.3.0
Traceback (most recent call last):
File "/home/geonatureadmin/gncitizen/backend/.venv/bin/flask", line 8, in <module>
sys.exit(main())
^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/flask/cli.py", line 1064, in main
cli.main()
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/click/core.py", line 1078, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/click/core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/click/core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/click/core.py", line 783, in invoke
return __callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/click/decorators.py", line 33, in new_func
return f(get_current_context(), *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/flask/cli.py", line 355, in decorator
app = __ctx.ensure_object(ScriptInfo).load_app()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/flask/cli.py", line 313, in load_app
app = locate_app(import_name, None, raise_if_not_found=False)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/flask/cli.py", line 219, in locate_app
__import__(module_name)
File "/home/geonatureadmin/gncitizen/backend/wsgi.py", line 13, in <module>
app = get_app(config)
^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/server.py", line 85, in get_app
from gncitizen.core.commons.routes import commons_api
File "/home/geonatureadmin/gncitizen/backend/gncitizen/core/commons/routes.py", line 39, in <module>
admin.add_view(FileAdmin(MEDIA_DIR, "/api/media/", name="Medias"))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/flask_admin/contrib/fileadmin/__init__.py", line 1239, in __init__
storage = LocalFileStorage(base_path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/geonatureadmin/gncitizen/backend/.venv/lib/python3.11/site-packages/flask_admin/contrib/fileadmin/__init__.py", line 34, in __init__
raise IOError('FileAdmin path "%s" does not exist or is not accessible' % self.base_path)
OSError: FileAdmin path "/home/geonatureadmin/gncitizen/media" does not exist or is not accessible
Je passe sur une exécution manuelle du script install/install_app.sh
L'erreur ci-dessus est levée par la commande flask db upgrade
et est dûe au fait que le répertoire media
n'existe pas. On voit dans https://github.com/PnX-SI/GeoNature-citizen/blob/dev/install/install_app.sh#L83 que la création du répertoire media
est faite après la commande flask db upgrade
. Il faut donc inverser l'ordre de ces 2 actions dans le script d'installation.
Pour tester je crée manuellement le répertoire media
et j'y copie les medias depuis frontend/src/assets/
. Puis je relance flask db upgrade
. La création des schémas de citizen dans la base geonature se créent correctement. Je fini l'installation manuellement en reprenant les commandes du fichier ìnstall/install_app.sh`
A noter qu'il manque un deactivate
après l'exécution de la commande flask db upgrade
.
A noter également : dans le fichier settings.ini, il y a cette ligne :
api_endpoint=http://mydomain.net/api # Url for the geonature api don't forget /api
On peut être tenter de mettre l'url de l'api de geonature comme indiqué. Mais il faut mettre l'url de l'api de citizen.
A modifier ainsi :
api_endpoint=http://mydomain.net/api # Url for the gncitizen api don't forget /api
En poursuivant l'installation + configuration apache et https avec letsencript, l'application est disponible et fonctionnelle sur son url. L'url d'admin est accessible et fonctionnelle également.
Merci à tous pour vos commentaires et éclairages. Je reviens vers vous si dysfonctionnements manifestement en lien avec debian 12 une fois les enquêtes configurées.
Salut,
Retour sur une installation faite ce jour sur la branche dev
en Debian 12 suite aux retours de @gildeluermoz et au taff de @hypsug0 pour finaliser la release d'une v1.0 (grand merci en passant !)
install_app.sh
👍media
dans install_app.sh
../install/copy_config.sh: ligne 46: [! : commande introuvable
En effet, coquille dans ./install/copy_config.sh
sur cette ligne avec un espace manquant entre [
et !
:
if [ ! -d media ]; then
mkdir media
fi
www-data
pour Apache). Avec Debian 11 les droits d'un nouvel utilisateur était en 755.Voici une PR avec les fix appliqués pour ces 3 derniers points #387
Après ça install OK, config OK, création d'un programme OK, saisie OK...
Merci encore !!
Trop bien, on tient le bon bout ! Merci pour les retours et la PR.
Installation corrigée et améliorée dans la version 1.0.0.
Bonjour tout le monde,
Je souhaite procéder à l'installation de GeoNature-citizen 0.99.4-dev sur un serveur Debian 11 où sont déjà installés GeoNature 2.12.2 et TaxHub 1.11.1.
D'après ce que j'ai compris, étant donné que TaxHub est déjà installé, je dois procéder à une installation manuelle. J'en suis actuellement au téléchargement du référentiel des géométries communales. Pour cela, je dois télécharger des fichiers SQL qui se trouvent normalement dans le répertoire suivant : https://github.com/PnX-SI/GeoNature/raw/master/data/core
Or, on dirait que ce répertoire n'existe plus dans les dernières versions de GeoNature. Quelqu'un sait si son contenu a été rebasculé dans un autre répertoire ?
Bonne journée