Installation#
GeoNature repose sur les composants suivants :
PostgreSQL / PostGIS
Python 3 et dépendances Python nécessaires à l’application
Flask (framework web Python)
Apache
Angular 15, Angular CLI, NodeJS
Librairies javascript (Leaflet, ChartJS)
Librairies CSS (Bootstrap, Material Design)
Deux méthodes d’installation existent :
Installation globale : Installation automatisée de GeoNature (incluant TaxHub) et UsersHub.
Installation de GeoNature uniquement : UsersHub n’est pas installé (mais son schéma de BDD est tout de même créé dans la base de données de GeoNature).
Prérequis#
Ressources minimum serveur :
Un serveur Debian 11 ou 12, architecture 64-bits
4 Go RAM
20 Go d’espace disque
GeoNature nécessite d’accéder à des ressources externes durant son installation et son fonctionnement. Si vous utilisez un serveur mandataire, celui-ci doit permettre l’accès aux domaines suivants :
Préparation du serveur#
Commencer la procédure en se connectant au serveur en SSH avec l’utilisateur linux root
.
Mettre à jour de la liste des dépôts Linux :
# apt update # apt upgrade
Configuration de la locale du serveur
Certains serveurs sont livrés sans « locale » (langue par défaut). Pour l’installation de GeoNature, il est nécessaire de bien configurer la locale. Si la commande
locale
renvoie ceci :LANG=fr_FR.UTF-8 LANGUAGE=fr_FR.UTF-8 LC_CTYPE="fr_FR.UTF-8" LC_NUMERIC="fr_FR.UTF-8" LC_TIME="fr_FR.UTF-8" LC_COLLATE="fr_FR.UTF-8" LC_MONETARY="fr_FR.UTF-8" LC_MESSAGES="fr_FR.UTF-8" LC_PAPER="fr_FR.UTF-8" LC_NAME="fr_FR.UTF-8" LC_ADDRESS="fr_FR.UTF-8" LC_TELEPHONE="fr_FR.UTF-8" LC_MEASUREMENT="fr_FR.UTF-8" LC_IDENTIFICATION="fr_FR.UTF-8" LC_ALL=fr_FR.UTF-8
Vous pouvez alors passer cette étape de configuration des locales.
Sinon exécuter la commande
dpkg-reconfigure locales
. Une fenêtre s’affiche dans votre console. Dans la liste déroulante, sélectionnezfr_FR.UTF-8 UTF-8
avecEspace
, puis cliquez sur OK. Une 2ème fenêtre s’affiche avec une liste de locale activées (fr_FR.UTF-8
doit être présent dans la liste), confirmez votre choix, en cliquant sur OK, puis attendez que la locale s’installe.Installer l’utilitaire
sudo
:# apt install sudo
Créer un utilisateur Linux dédié (nommé
geonatureadmin
dans notre cas) pour ne pas travailler enroot
:# adduser geonatureadmin
Lui donner ensuite les droits administrateur en l’ajoutant au groupe
sudo
:# adduser geonatureadmin sudo
Note
Vérifier les droits du répertoire HOME de l’utilisateur
Il doit être en
7XX
soitdrwxr-xr-x
. Si ce n’est pas le cas, exécuter la commande suivante :# chmod 755 /home/geonatureadmin
Pour la suite du processus d’installation, on utilisera l’utilisateur non privilégié nouvellement créé. Si besoin d’éxecuter des commandes avec les droits d’administrateur, on les précèdera de
sudo
.Il est d’ailleurs possible renforcer la sécurité du serveur en bloquant la connexion SSH au serveur avec
root
. Voir https://docs.ovh.com/fr/vps/conseils-securisation-vps/ pour plus d’informations sur le sécurisation du serveur.Pour passer de l’utilisateur
root
àgeonatureadmin
, vous pouvez aussi utiliser la commande :# su - geonatureadmin
Installation globale#
Ce document décrit une procédure d’installation packagée de GeoNature.
En lançant le script d’installation ci-dessous, l’application GeoNature ainsi que ses dépendances seront installées sur un seul et même serveur au sein d’une seule base de données.
Les applications suivantes seront installées :
UsersHub qui pilote le schéma
utilisateurs
(le paramètreinstall_usershub_app
du fichier de configurationinstall_all.ini
permet de désactiver l’installation de l’application. Il est cependant recommandé d’installer l’application pour disposer d’une interface pour gérer les utilisateurs dans GeoNature)
Si vous disposez déjà de UsersHub sur un autre serveur ou une autre base de données et que vous souhaitez installer simplement GeoNature, veuillez suivre la documentation Installation de GeoNature uniquement.
Installation des applications#
Commencer la procédure en se connectant au serveur en SSH avec l’utilisateur dédié précédemment créé lors de l’étape de Préparation du serveur (usuellement geonatureadmin
).
Téléchargement#
Se placer à la racine du
home
de l’utilisateur puis récupérer les scripts d’installation (X.Y.Z à remplacer par le numéro de la dernière version stable de GeoNature). Ces scripts installent les applications GeoNature (incluant TaxHub) et UsersHub (en option) ainsi que leurs bases de données (uniquement les schémas du coeur) :$ wget https://raw.githubusercontent.com/PnX-SI/GeoNature/X.Y.Z/install/install_all/install_all.ini $ wget https://raw.githubusercontent.com/PnX-SI/GeoNature/X.Y.Z/install/install_all/install_all.sh
Attention : l’installation globale fonctionne uniquement si les scripts sont placés à la racine du home
de l’utilisateur courant.
Configuration#
Configurez votre installation en adaptant le fichier
install_all.ini
:$ nano install_all.ini
Renseignez à minima :
my_url
: l’URL (ou IP) de votre serveur (avec un/
à la fin)user_pg
: l’utilisateur PostgreSQL que vous souhaitez voir crééuser_pg_pass
: mot de passe de l’utilisateur PostgreSQL
Le script se chargera d’installer PostgreSQL, de crééer la base de donnée et de créer l’utilisateur que vous avez renseigné.
Variable
mode
Pour l’installation d’une instance de production ou de test mode=prod
, pour une installation de développement mode=dev
.
Il est déconseillé de modifier les numéros de version des dépendances, chaque nouvelle version de GeoNature étant fournie avec les versions adaptées de ses dépendances.
Installation#
Lancer l’installation :
$ touch install_all.log $ chmod +x install_all.sh $ ./install_all.sh 2>&1 | tee install_all.log
Une fois l’installation terminée, lancez la commande suivante:
$ exec bash
Les applications sont disponibles aux adresses suivantes :
Vous pouvez vous connecter avec l’utilisateur intégré par défaut (admin/admin).
- Note:
Pour en savoir plus TaxHub, sa configuration et son utilisation, reportez-vous à sa documentation : https://taxhub.readthedocs.io. Idem pour UsersHub et sa documentation : https://usershub.readthedocs.io
- Note:
GeoNature-atlas compatible avec GeoNature V2 est disponible sur PnX-SI/GeoNature-atlas
Vous pouvez utiliser le schéma
ref_geo
de GeoNature pour votre territoire, les communes et les mailles.
Si vous rencontrez une erreur, se reporter aux fichiers de logs /home/`whoami`/install_all.log
.
- Note:
Si vous souhaitez que GeoNature soit à la racine du serveur, ou à une autre adresse, editez le fichier de configuration Apache (
/etc/apache2/sites-available/geonature.conf
) en modifiant l’alias :Pour
/
:Alias / /home/test/geonature/frontend/dist
Pour
/saisie
:Alias /saisie /home/test/geonature/frontend/dist
- Note:
Par défaut et par mesure de sécurité, la base de données est accessible uniquement localement par la machine où elle est installée. Pour accéder à la BDD depuis une autre machine (pour s’y connecter avec QGIS, pgAdmin ou autre), vous pouvez consulter cette documentation PnX-SI/Ressources-techniques. Attention, exposer la base de données sur internet n’est pas recommandé. Il est préférable de se connecter via un tunnel SSH. QGIS et la plupart des outils d’administration de base de données permettent d’établir une connexion à la base de cette manière. Attention si vous redémarrez PostgreSQL (
sudo service postgresql restart
), il faut ensuite redémarrer les API de GeoNature et UsersHub :$ sudo systemctl restart geonature $ sudo systemctl restart geonature-worker $ sudo systemctl restart usershub
- Note:
Il est aussi important de configurer l’accès au serveur en HTTPS plutôt qu’en HTTP pour chiffrer le contenu des échanges entre le navigateur et le serveur (https://docs.ovh.com/fr/hosting/les-certificats-ssl-sur-les-hebergements-web/).
Installation de GeoNature uniquement#
Cette procédure détaille l’installation de GeoNature (incluant TaxHub) sans UsersHub. Si vous souhaitez installer GeoNature avec UsersHub, reportez-vous à la section Installation globale.
Installation des dépendances#
Installer les paquets suivants :
$ sudo apt install unzip git postgresql-postgis postgis python3-pip python3-venv python3-dev libpq-dev libgdal-dev libffi-dev libpangocairo-1.0-0 apache2 redis
Récupération de l’application#
Se placer dans le répertoire de l’utilisateur (
/home/geonatureadmin/
dans notre cas)Récupérer l’application (
X.Y.Z
à remplacer par le numéro de la dernière version stable de GeoNature).$ wget https://github.com/PnX-SI/GeoNature/archive/X.Y.Z.zip
Dézipper l’archive de l’application
$ unzip X.Y.Z.zip $ rm X.Y.Z.zip
Renommer le répertoire de l’application puis placez-vous dedans :
$ mv GeoNature-X.Y.Z /home/`whoami`/geonature/ $ cd geonature
Copier puis mettre à jour le fichier de configuration (
config/settings.ini
) comportant les informations relatives à votre environnement serveur :$ cp config/settings.ini.sample config/settings.ini $ nano config/settings.ini
Installation de l’application#
Rendez vous dans le dossier install
et lancez successivement dans l’ordre les scripts suivants :
01_install_backend.sh
: Création du virtualenv python, installation des dépendances et du backend de GeoNature dans celui-ci.02_configure_systemd.sh
: Création des services systemdgeonature
etgeonature-worker
, configuration delogrotate
, création des dossiers/run/geonature
et/var/log/geonature
.03_create_db.sh
: Création du role PostgreSQL, de la base de données, ajout des extensions nécessaires (PostGIS, …), création des schémas nécessaires à GeoNature et ajout des données métiers.04_install_gn_modules.sh
: Installation des modules Occtax, Occhab et Validation (si activé dans le fichier settings.ini).05_install_frontend.sh
: Création des dossiers et liens symboliques nécessaires, création des fichiers custom à partir des fichiers d’exemple, génération des fichiers de configuration grâce à la commandegeonature
, installation de nvm, npm et node ainsi que toutes les dépendances javascript nécessaires puis build du frontend, génération du fichiersrc/assets/config.json
qui permet de connecter le frontend au backend.06_configure_apache.sh
: Installation du fichier de configuration Apache/etc/apache2/conf-available/geonature.conf
et activation des modules Apache nécessaires.
Vous pouvez alors démarrer le backend de GeoNature : sudo systemctl start geonature
Configuration Apache#
Le script
install/06_configure_apache.sh
copie le fichier de configuration de référenceinstall/assets/geonature_apache.conf
, le place dans/etc/apache2/conf-available/geonature.conf
et remplace ses variables à partir de votre configuration de GeoNature.Relancez ce script si vous changez l’URL de votre GeoNature ou les paramètres liés aux chemins et URL des fichiers statiques et des médias.
Créez la configuration du vhost, incluant la configuration par défaut créée précédemment :
$ sudo cp install/assets/vhost_apache.conf /etc/apache2/sites-available/geonature.conf # Copier le vhost $ sudo nano /etc/apache2/sites-available/geonature.conf # Modifier la variable ``${DOMAIN_NAME}``
Activez la nouvelle configuration :
$ sudo a2ensite geonature.conf
et redémarrez Apache :
$ sudo systemctl reload apache2
L’application est disponible à l’adresse suivante : http://monurl.fr/geonature
Une page HTML de maintenance et un vhost dédié sont aussi disponibles. Pour les mettre en place :
$ sudo cp install/assets/vhost_apache_maintenance.conf /etc/apache2/sites-available/geonature_maintenance.conf # Copier le vhost $ sudo nano /etc/apache2/sites-available/geonature_maintenance.conf # Modifier la variable ``${DOMAIN_NAME}`` $ sudo cp install/assets/maintenance.html /var/www/geonature_maintenance/index.html
Pour passer votre GeoNature en maintenance, vous pouvez alors désactiver le vhost de GeoNature et activer celui de la page de maintenance :
$ sudo a2dissite geonature.conf $ sudo a2ensite geonature_maintenance.conf
Dépendances#
Lors de l’installation de la BDD (02_create_db.sh
), le schéma utilisateurs
de UsersHub et le schéma taxonomie
de TaxHub sont intégrés automatiquement dans la BDD de GeoNature.
UsersHub n’est pas nécessaire au fonctionnement de GeoNature mais il sera utile pour avoir une interface de gestion des utilisateurs, des groupes et de leurs droits.
TaxHub v2 est intégré à GeoNature depuis sa version 2.15.0
Voir la documentation de TaxHub : https://taxhub.readthedocs.io/
Voir la doc d’installation de UsersHub : https://usershub.readthedocs.io/
Passer en mode développement#
Note
Consultez le guide Passer en mode développement de GeoNature.
Docker#
L’installation de GeoNature avec Docker est la manière la plus simple de déployer GeoNature, ses 4 modules externes principaux (Import, Export, Dashboard, Monitoring) et UsersHub, mais aussi de les mettre à jour, avec seulement quelques lignes de commandes.
Elle permet aussi d’installer GeoNature sur différents systèmes, et pas uniquement sur Debian, comme c’est le cas avec l’installation classique.
Elle peut néanmoins nécessiter de connaitre le fonctionnement de Docker pour ceux qui souhaitent aller plus loin et mettre en place une installation plus spécifique.
Docker Compose#
Pour déployer facilement GeoNature avec Docker, utilisez le Docker Compose proposé et documenté dans le dépôt GeoNature-Docker-services.
Pour des déploiements Docker plus avancés et spécifiques, des images Docker des différents outils (GeoNature, UsersHub, GeoNature et ses 4 modules externes principaux) sont automatiquement construites et publiées à chaque nouvelle version publiée.
Image backend#
Des images pré-construites automatiquement sont présentes sur Github.
Les images tagguées -wheels contiennent les wheels Python de GeoNature, de ses dépendances et modules contrib, de manière à pouvoir être enrichies avec vos wheels provenant de vos propres modules (images de type « builder »).
Construction manuelle de l’image :
DOCKER_BUILDKIT=1 docker build . \
-f backend/Dockerfile \
--target=prod \
--tag=ghcr.io/pnx-si/geonature-backend:develop
Fonctionnement de l’image :
GeoNature attend sa configuration dans le dossier
/dist/config
(à monter dans un volume afin de pouvoir la modifier). L’emplacement du fichier de configuration peut également être précisé via la variable d’environnementGEONATURE_CONFIG_FILE
.Il est également possible de fournir une configuration Python via la variable d’environnement
GEONATURE_SETTINGS
.Les médias seront stockés dans le dossier
/dist/media
(à monter dans un volume afin de les sauvegarder).Toute variable d’environnement préfixée par
GEONATURE_
se verra traduite par un paramètre de configuration homonyme (documentation Flask). Si vous souhaitez définir une variable de configuration se trouvant dans une section, utilisez deux underscore. Par exemple, pour définir le paramètreNB_LAST_OBS
de la section[SYNTHESE]
, on définira une variable d’environnementGEONATURE_SYNTHESE__NB_LAST_OBS
.Pour peupler la base de données, référez-vous au script
install/03_create_db.sh
.
Image frontend#
Des images pré-construites automatiquement sont présentes sur Github.
Les images tagguées -source contiennent uniquement les sources de GeoNature et des modules contrib, et attendent d’être enrichies avec les sources de vos propres modules tandis que les images tagguées -nginx contiennent la configuration NGINX prête à l’emploi pour GeoNature (images de type « builder »).
Construction manuelle de l’image :
DOCKER_BUILDKIT=1 docker build . \
-f frontend/Dockerfile \
--target=prod \
--tag=ghcr.io/pnx-si/geonature-frontend:develop
Fonctionnement de l’image :
La configuration NGINX de l’image est générée dynamiquement à son démarrage, à partir des variables d’environnement suivantes :
NGINX_PORT
(défaut : 80)NGINX_HOST
(défaut : localhost)NGINX_LOCATION
(défaut : /, à modifier pour servir GeoNature sur un préfixe)
La variable d’environnement
API_ENDPOINT
est lue au démarrage de l’image afin de mettre à jour le fichier de configuration du frontendassets/config.json
.
HTTPS#
Cette documentation est indicative car non-spécifique à GeoNature. Elle donne des indications sur la mise en place d’un certificat SSL pour une application web servie par Apache.
Utilisation de Cerbot#
Source. Sécuriser facilement et gratuitement un site avec HTTPS
La procédure décrit une méthode de certification HTTPS de votre domaine, grâce au service Let’s Encrypt. Les manipulations ont été effectuées sur un serveur Debian 9 avec Apache2 installé, et un utilisateur bénéficiant des droits sudo.
Cerbot ne peut pas être utilisé pour la création d’un certificat sur une adresse IP (Exemple d’instances de test sans nom de domaine). Pour celà utiliser OpenSSL présenté rapidement ci-dessous. Installation :
sudo apt-get install python3-certbot-apache
Lancer la commande suivante pour générer des certificats et des clés pour le nom de domaine que vous souhaitez mettre en HTTPS.
sudo certbot --apache --email monemail@mondomaine.fr
Activer les modules ssl
, headers
et rewrite
puis redémarrer Apache :
sudo a2enmod ssl
sudo a2enmod rewrite
sudo a2enmod headers
sudo apachectl restart
Les fichiers de configuration du site UsersHub n’est pas à modifier, il sera automatiquement associé à la configuration HTTPS. En revanche, la configuration de GeoNature doit être mise à jour.
Utilisation de OpenSSL sur un environnement de test#
Cette procédure a été testée sur Debian 12 et Apache2 avec l’utilisation d’un certificat auto-signé. Cela signifie qu’une alerte sera envoyée aux navigateurs indiquant un manque de sécurisation du serveur. Cette méthode fonctionne avec un serveur sans nom de domaine.
Création d’un nouveau certificat de 365 jours (30 jours par défaut), de type X509 avec l’emplacement des fichiers de certificat et de clé privé.
sudo openssl req -new -x509 -days 365 -nodes -out /etc/ssl/certs/mailserver.crt -keyout /etc/ssl/private/mailserver.key
Sécurisation de la clé
sudo chmod 440 /etc/ssl/private/mailserver.key
Chargement du module ssl dans Apache
sudo a2enmod ssl
Modification de la configuration du VirtualHost en éditant le fichier /etc/apache2/sites-available/geonature.conf
<VirtualHost *:443>
ServerName x.x.x.x
[…]
SSLEngine on
SSLCertificateFile /etc/ssl/certs/mailserver.crt
SSLCertificateKeyFile /etc/ssl/private/mailserver.key
</VirtualHost>
sudo apachectl restart
Configuration de l’application GeoNature#
Il est nécessaire de mettre à jour le fichier de configuration geonature_config.toml
situé dans le répertoire geonature/config
:
cd geonature/config
nano geonature_config.toml
Modifier les éléments suivants :
URL_APPLICATION = 'https://mondomaine.fr/geonature'
API_ENDPOINT = 'https://mondomaine.fr/geonature/api'
Pour que ces modifications soient prises en compte, exécuter les actions à effecture après modification de la configuration.
Les applications sont désormais accessibles sur votre domaine sécurisé en HTTPS !
Taches planifiées#
Depuis sa version 2.12.0, les taches planifiées gérées par des crons ont été remplacées par des taches lancées automatiquement par Celery Beat, pour être mis en place automatiquement lors de l’installation de GeoNature et être plus facilement administrables.
Installation d’un module GeoNature#
L’installation de GeoNature n’est livrée qu’avec les modules du coeur par défaut : Occtax, Occhab et Validation. Pour ajouter un module GeoNature externe, il est nécessaire de l’installer :
Téléchargement#
Téléchargez le module depuis son dépôt Github puis dézippez-le dans le repertoire utilisateur, au même niveau que le dossier de GeoNature.
Installation automatique#
Installation avec la sous-commande install-gn-module
:
source <dossier GeoNature>/backend/venv/bin/activate
geonature install-gn-module <dossier du module> <code du module>
Exemple pour le module Import :
source ~/GeoNature/backend/venv/bin/activate
geonature install-gn-module ~/gn_module_import/ IMPORT
Puis relancer GeoNature et son worker :
sudo systemctl restart geonature
sudo systemctl restart geonature-worker
Aucune permission n’est définie par défaut lors de l’installation d’un module. En tant qu’administrateur, vous pouvez exécuter une commande ajoutant tous les droits sur tous les modules à un groupe ou utilisateur. Cette commande peut être relancée après l’installation d’un module pour automatiquement attribuer toutes les permissions à un groupe ou utilisateur administrateur :
# changer "Grp_Admin" par le nom de votre groupe d'administrateur si vous l'avez changé
geonature permissions supergrant --group --nom "Grp_admin"
Vous devrez ensuite définir des droits à vos utilisateurs pour le nouveau module installé.
Installation manuelle#
Installation du backend
Installer le module avec pip
en mode éditable après avoir activé le venv de GeoNature, puis relancer GeoNature :
source ~/geonature/backend/venv/bin/activate
pip install --editable <dossier du module>
sudo systemctl restart geonature
Installation du frontend
Créer un lien symbolique dans le dossier
frontend/external_modules
de GeoNature vers le dossierfrontend
du module. Le lien symbolique doit être nommé suivant le code du module en minuscule :
cd ~/geonature/frontend/external_modules/
ln -s <dossier du module>/frontend <code du module en minuscule>
Exemple pour le module Import :
cd ~/geonature/frontend/external_modules/
ln -s ~/gn_module_import/frontend import
Re-builder le frontend :
cd ~/geonature/frontend/
nvm use
npm run build
Installation de la base de données
source ~/geonature/backend/venv/bin/activate
geonature upgrade-modules-db <code du module>
Configuration du module#
De manière facultative, vous pouvez modifier la configuration du module.
Pour cela, vous pouvez créer un fichier de configuration dans le dossier config
de GeoNature en le nommant <code du module en minuscule>_config.toml
.
La plupart des modules fournissent un fichier d’exemple <module-code>_config.toml.example
dans leur dossier racine dont vous pouvez vous inspirer.
Après création de ce fichier, activez le rechargement automatique de GeoNature lors des modifications du fichier en lançant les commandes suivantes :
sudo systemctl daemon-reload
sudo systemctl restart geonature
Avant la version 2.12.0 de GeoNature, après chaque modification de la configuration du module, vous devez recharger GeoNature manuellement :
sudo systemctl reload geonature
Mise à jour du module#
Déplacer le code de l’ancienne version du module :
mv gn_module_xxx gn_module_xxx_old
Télécharger et désarchiver la nouvelle version du module, et renommer son dossier afin qu’il porte le même nom qu’avant (e.g.
gn_module_xxx
)(Optionnel) Si le fichier de configuration du module est encore placé avec celui-ci, le déplacer dans la dossier de configuration centralisée de GeoNature :
cp gn_module_xxx_old/config/conf_gn_module.toml geonature/config/<mode-code>_config.toml
Relancer l’installation du module :
geonature install-gn-module gn_module_xxx XXX && sudo systemctl reload geonature
Mise à jour de l’application#
Avertissement
Avant chaque mise à jour de GeoNature, il est important de sauvegarder l’application et sa base de données, ou de faire un snapshot du serveur pour pouvoir revenir à son état antérieure avant mise à jour, en cas de problème.
Avertissement
Vérifiez préalablement la compatibilité des modules que vous utilisez avant de mettre GeoNature à jour. S’il est nécessaire de les mettre à jour, arrêtez vous après le remplacement du dossier par le nouveau code source (et la récupération éventuelle de la configuration); le script de migration de GeoNature s’occupera automatiquement d’installer la nouvelle version du module.
La mise à jour de GeoNature consiste à télécharger sa nouvelle version dans un nouveau répertoire, récupérer les fichiers de configuration et de surcouche, ainsi que les médias depuis la version actuelle et de relancer l’installation dans le répertoire de la nouvelle version.
La mise à jour doit être réalisée avec votre utilisateur linux courant (geonatureadmin
par exemple) et non pas le super-utilisateur root
.
Télécharger la dernière version de GeoNature :
wget https://github.com/PnX-SI/GeoNature/archive/X.Y.Z.zip
unzip X.Y.Z.zip
rm X.Y.Z.zip
Renommer l’ancien repertoire de l’application, ainsi que le nouveau :
mv ~/geonature/ ~/geonature_old/
mv ~/GeoNature-X.Y.Z ~/geonature/
cd ~/geonature
Suivez les éventuelles notes de version spécifiques décrites au niveau de chaque version : PnX-SI/GeoNature.
Sauf mentions contraires dans les notes de version, vous pouvez sauter des versions mais en suivant bien les différentes notes de versions intermédiaires.
Si vous devez aussi mettre à jour UsersHub, suivez ses notes de version et sa documentation (https://usershub.readthedocs.io).
Lancez le script de
migration.sh
à la racine du dossiergeonature
:
./install/migration/migration.sh 2>&1 | tee install/migration/migration.log
Depuis la version 2.12, le script migration.sh peut prendre en argument le chemin vers l’ancien dossier d’installation de GeoNature. Il peut s’agir du même dossier que la nouvelle installation de GeoNature. Cela permet d’utiliser ce script si la nouvelle version de GeoNature est dans le même dossier et donc de gérer le cas où GeoNature est installé et mis à jour avec git.
Dans ce cas, les commandes à exécuter sont :
cd ~/GeoNature
git status # optionnel, pour connaitre l'état et la version ou branche actuellement utilisée
git fetch
git checkout X.Y.Z # où X.Y.Z est le numéro du tag de la version vers laquelle faire la mise à jour, ou le nom de la branche à utiliser
git submodule update # ou "git config submodule.recurse true" lancé une seule fois, pour que la mise à jour des sous-modules soit relancée automatiquement à chaque "git pull"
./install/migration/migration.sh .