Skip to content

Commit

Permalink
Merge pull request #495 from PnX-SI/develop
Browse files Browse the repository at this point in the history
Develop > Master / 2.0.0-rc.3.1
  • Loading branch information
camillemonchicourt authored Oct 21, 2018
2 parents e11b000 + 3494517 commit cb4a5bc
Show file tree
Hide file tree
Showing 7 changed files with 84 additions and 69 deletions.
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.0.0-rc.3
2.0.0-rc.3.1
16 changes: 16 additions & 0 deletions docs/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,21 @@
CHANGELOG
=========

2.0.0-rc.3.1 (2018-10-21)
-------------------------

**Corrections**

* Correction du script ``ìnstall_all.sh`` au niveau de la génération de la configuration Apache de TaxHub et UsersHub (#493)
* Suppression du Servername dans la configuration Apache de TaxHub du script ``install_all.sh``
* Complément de la documentation de mise à jour de GeoNature (https://geonature.readthedocs.io/fr/latest/installation-standalone.html#mise-a-jour-de-l-application)

**Notes de version**

* Si vous migrez depuis une version 2.0.0-rc.2, installez directement cette version corrective plutôt que la 2.0.0-rc.3, mais en suivant les notes de versions de la 2.0.0-rc.3
* Pour mettre en place la redirection de TaxHub sans ``/``, consultez sa documentation https://taxhub.readthedocs.io/fr/latest/installation.html#configuration-apache
* Le script ``install_all.sh`` actuel ne semble pas fonctionner sur Debian 8, problème de version de PostGIS qui ne s'installe pas correctement

2.0.0-rc.3 (2018-10-18)
-----------------------

Expand Down Expand Up @@ -62,6 +77,7 @@ CHANGELOG
* Suivez la procédure standard de mise à jour de GeoNature (https://geonature.readthedocs.io/fr/latest/installation-standalone.html#mise-a-jour-de-l-application)
* Exécutez l'update de la BDD GeoNature (``data/migrations/2.0.0rc2-to-2.0.0rc3.sql``)
* Il est aussi conseillé de mettre à jour TaxHub en 1.5.1 (https://github.com/PnX-SI/TaxHub/releases) ainsi que sa configuration pour qu'il fonctionne sans ``/`` à la fin de son URL
* Attention, si vous installez cette version avec le script global ``install_all.sh``, il créé un problème dans la configuration Apache de UserHub (``/etc/apache2/sites-available/usershub.conf``) et supprime tous les ``/``. Les ajouter sur la page de la documentation de UsersHub (https://github.com/PnEcrins/UsersHub/blob/master/docs/installation.rst#configuration-apache) puis relancer Apache (``https://github.com/PnEcrins/GeoNature-atlas/blob/develop/docs/installation.rst``). Il est conseillé d'installer plutôt la version corrective.


2.0.0-rc.2 (2018-09-24)
Expand Down
8 changes: 4 additions & 4 deletions docs/admin-manual.rst
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ Données SIG :
"""""""""""""

- Le schéma ``ref_geo`` permet de gérer les données SIG (zonages, communes, MNT...) de manière centralisée, potentiellement partagé avec d'autres BDD
- Il contient une table des zonages, des types de zonages, des communes, des grilles (mailles) et un MNT vectorisé (https://github.com/PnX-SI/GeoNature/issues/235)
- Il contient une table des zonages, des types de zonages, des communes, des grilles (mailles) et un MNT raster ou vectorisé (https://github.com/PnX-SI/GeoNature/issues/235)
- La fonction ``ref_geo.fct_get_area_intersection`` permet de renvoyer les zonages intersectés par une observation en fournissant sa géométrie
- La fonction ``ref_geo.fct_get_altitude_intersection`` permet de renvoyer l'altitude min et max d'une observation en fournissant sa géométrie
- L'intersection d'une observation avec les zonages sont stockés au niveau de la synthèse (``gn_synthese.cor_area_synthese``) et pas de la donnée source pour alléger et simplifier leur gestion
Expand Down Expand Up @@ -584,9 +584,9 @@ Référentiel géographique

GeoNature est fourni avec des données géographiques de base sur la métropôle (MNT national à 250m et communes de métropôle).

Si vous souhaitez modifier le MNT pour mettre celui de votre territoire :
**1.** Si vous souhaitez modifier le MNT pour mettre celui de votre territoire :

* Videz le contenu de la table ``ref_geo.dem_vector``
* Videz le contenu des tables ``ref_geo.dem`` et éventuellement ``ref_geo.dem_vector``
* Uploadez le fichier du MNT sur le serveur
* Suivez la procédure de chargement du MNT en l'adaptant : https://github.com/PnX-SI/GeoNature/blob/master/install/install_db.sh#L295-L299

Expand Down Expand Up @@ -621,7 +621,7 @@ Si vous souhaitez vectoriser le raster MNT pour de meilleures performances lors

Si ``ref_geo.dem_vector`` est remplie, cette table est utilisée pour le calcul de l'altitude à la place de la table ``ref_geo.dem``

Si vous souhaitez modifier ou ajouter des zonages administratifs, réglementaires ou naturels :
**2.** Si vous souhaitez modifier ou ajouter des zonages administratifs, réglementaires ou naturels :

* Vérifiez que leur type existe dans la table ``ref_geo.bib_areas_types``, sinon ajoutez-les
* Ajoutez vos zonages dans la table ``ref_geo.l_areas`` en faisant bien référence à un ``id_type`` de ``ref_geo.bib_areas_types``. Vous pouvez faire cela en SQL ou en faisant des copier/coller de vos zonages directement dans QGIS
Expand Down
4 changes: 2 additions & 2 deletions docs/installation-all.rst
Original file line number Diff line number Diff line change
Expand Up @@ -165,14 +165,14 @@ Vous pouvez vous connecter avec l'utilisateur intégré par défaut (admin/admin

:Note:

Ne prenez pas en compte les messages de UsersHub indiqués à la fin de l'installation. Ce sont des restes d'anciennes vers de UsersHub et GeoNature V1.
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** : Comme dans la V1, le script ``install_all.sh`` permettra d'installer automatiquement GeoNature-atlas (en option)
* Une première version de GeoNature-atlas compatible avec GeoNature V2 est disponible dans sa branche ``develop`` : https://github.com/PnEcrins/GeoNature-atlas/issues/162
* Suivez la procédure d'installation classique de GeoNature-atlas mais exécutez le script ``install_db_gn2.sh`` à la place de ``install_db.sh``
* Vous pouvez utiliser le schéma ``ref_geo`` de GeoNature pour votre territoire, les communes et les mailles, si vous les avez intégré dans ``ref_geo.l_areas`` au prélable.
* Vous pouvez utiliser le schéma ``ref_geo`` de GeoNature pour votre territoire, les communes et les mailles, si vous les avez intégré dans ``ref_geo.l_areas`` au préalable.

:Note:

Expand Down
4 changes: 4 additions & 0 deletions docs/installation-standalone.rst
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,10 @@ Voir la doc d'installation de UsersHub : http://usershub.readthedocs.io/
Mise à jour de l'application
----------------------------

Attention, avec chaque mise à jour, il est important de sauvegarde 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.

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 depuis la version actuelle et de relancer l'installation dans le répertoire de la nouvelle version.

* Télécharger la dernière version de GeoNature :

::
Expand Down
2 changes: 1 addition & 1 deletion install/install_all/install_all.ini
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ usershub_release=1.3.3
### CONFIGURATION GEONATURE ###

# Version de GeoNature
geonature_release=2.0.0-rc.3
geonature_release=2.0.0-rc.3.1
# Effacer la base de données GeoNature existante lors de l'installation
drop_geonaturedb=false
# Nom de la base de données GeoNature
Expand Down
117 changes: 56 additions & 61 deletions install/install_all/install_all.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,25 @@ OS_NAME=$ID
OS_VERSION=$VERSION_ID
OS_BITS="$(getconf LONG_BIT)"

# test the server architecture
# Test the server architecture
if [ !"$OS_BITS" == "64" ]; then
echo "GeoNature must be installed on a 64-bits operating system ; your is $OS_BITS-bits" 1>&2
exit 1
fi

# Format my_url to set a / at the end
if [ "${my_url: -1}" != '/' ]
if [ "${my_url: -1}" != '/' ]
then
my_url=$my_url/
fi

# Remove http:// and remove final / from $my_url to create $my_domain
# No more used actually but can be useful if we want to create a Servername in Apache configuration
my_domain=$(echo $my_url | sed -r 's|^.*\/\/(.*)$|\1|')
my_domain=$(echo $my_domain | sed s'/.$//')

# Check OS and versions
if [ "$OS_NAME" != "debian" ] && [ "$OS_NAME" != "ubuntu" ]
if [ "$OS_NAME" != "debian" ] && [ "$OS_NAME" != "ubuntu" ]
then
echo -e "\e[91m\e[1mLe script d'installation n'est prévu que pour les distributions Debian et Ubuntu\e[0m" >&2
exit 1
Expand All @@ -37,8 +42,7 @@ if [ "$(id -u)" == "0" ]; then
exit 1
fi



# Create log folder if it don't already exists
if [ ! -d 'var' ]
then
mkdir var
Expand All @@ -59,7 +63,7 @@ touch var/log/install_app.log
echo "############### Installation des paquets systèmes ###############"&>> var/log/install_app.log


# Modification de la locale
# Updating language locale
sudo apt-get install -y locales
sudo sed -i "s/# $my_local/$my_local/g" /etc/locale.gen
sudo locale-gen $my_local
Expand All @@ -68,13 +72,13 @@ echo "export LANG=$my_local" >> ~/.bashrc
echo "export LANGUAGE=$my_local" >> ~/.bashrc
source ~/.bashrc

# Installation de l'environnement nécessaire à GeoNature et TaxHub
# Installing required environment for GeoNature and TaxHub
echo "Installation de l'environnement logiciel..."

sudo apt-get -y install ntpdate 2> var/log/install_app.log
sudo ntpdate-debian &>> var/log/install_app.log 2> var/log/install_app.log
sudo apt-get install -y curl unzip git &>> var/log/install_app.log 2> var/log/install_app.log
sudo apt-get install -y apache2 libapache2-mod-wsgi libapache2-mod-perl2 2> var/log/install_app.log
sudo apt-get -y install ntpdate 2> var/log/install_app.log
sudo ntpdate-debian &>> var/log/install_app.log 2> var/log/install_app.log
sudo apt-get install -y curl unzip git &>> var/log/install_app.log 2> var/log/install_app.log
sudo apt-get install -y apache2 libapache2-mod-wsgi libapache2-mod-perl2 2> var/log/install_app.log
sudo apt-get install -y postgresql 2> var/log/install_app.log
sudo apt-get install -y postgresql-contrib
if [ "$OS_VERSION" == "9" ]
Expand All @@ -84,34 +88,34 @@ then
fi
if [ "$OS_VERSION" == "8" ]
then
sudo apt-get install -y postgresql-server-dev-9.4 2> var/log/install_app.log
sudo apt-get install -y postgresql-server-dev-9.4 2> var/log/install_app.log
sudo apt install -y postgis-2.3 postgis 2> var/log/install_app.log
fi

if [ "$OS_VERSION" == "18.04" ]
then
sudo apt-get install -y postgresql-server-dev-10 2> var/log/install_app.log
sudo apt-get install -y postgresql-server-dev-10 2> var/log/install_app.log
sudo apt install -y postgis 2> var/log/install_app.log
fi

if [ "$OS_VERSION" == "16.04" ]
then
sudo apt-get install -y libatlas3-base
sudo apt-get install -y postgresql-server-dev-9.5 2> var/log/install_app.log
sudo apt-get install -y postgresql-server-dev-9.5 2> var/log/install_app.log
sudo apt install -y postgis postgis postgresql-9.5-postgis-2.2 2> var/log/install_app.log
fi
sudo sed -e "s/datestyle =.*$/datestyle = 'ISO, DMY'/g" -i /etc/postgresql/*/main/postgresql.conf
sudo service postgresql restart

sudo apt-get install -y python3 2> var/log/install_app.log
sudo apt-get install -y python3-dev 2> var/log/install_app.log
sudo apt-get install -y python3-setuptools 2> var/log/install_app.log
sudo apt-get install -y python-pip 2> var/log/install_app.log
sudo apt-get install -y libpq-dev 2> var/log/install_app.log
sudo apt-get install -y libgdal-dev 2> var/log/install_app.log
sudo apt-get install -y python-gdal 2> var/log/install_app.log
sudo apt-get install -y python-virtualenv 2> var/log/install_app.log
sudo apt-get install -y build-essential 2> var/log/install_app.log
sudo apt-get install -y python3 2> var/log/install_app.log
sudo apt-get install -y python3-dev 2> var/log/install_app.log
sudo apt-get install -y python3-setuptools 2> var/log/install_app.log
sudo apt-get install -y python-pip 2> var/log/install_app.log
sudo apt-get install -y libpq-dev 2> var/log/install_app.log
sudo apt-get install -y libgdal-dev 2> var/log/install_app.log
sudo apt-get install -y python-gdal 2> var/log/install_app.log
sudo apt-get install -y python-virtualenv 2> var/log/install_app.log
sudo apt-get install -y build-essential 2> var/log/install_app.log
sudo pip install --upgrade pip virtualenv virtualenvwrapper 2> var/log/install_app.log

if [ "$OS_VERSION" == "9" ]
Expand All @@ -121,7 +125,7 @@ then
fi
if [ "$OS_VERSION" == "8" ]
then
sudo apt-get install -y npm 2> var/log/install_app.log
sudo apt-get install -y npm 2> var/log/install_app.log
fi

if [ "$OS_VERSION" == "16.04" ] || [ "$OS_VERSION" == "18.04" ]
Expand All @@ -130,24 +134,24 @@ then
sudo apt-get install -y npm
fi

sudo apt-get install -y supervisor 2> var/log/install_app.log
sudo apt-get install -y supervisor 2> var/log/install_app.log

# To make opencv (TaxHub) work on Debian 8
sudo apt-get install -y libsm6 libxrender1 libfontconfig1 2> var/log/install_app.log
sudo apt-get install -y python-qt4 2> var/log/install_app.log
sudo apt-get install -y libsm6 libxrender1 libfontconfig1 2> var/log/install_app.log
sudo apt-get install -y python-qt4 2> var/log/install_app.log

# Création de l'utilisateur PostgreSQL
# Creating PostgreSQL user
echo "Création de l'utilisateur PostgreSQL..."
sudo -n -u postgres -s psql -c "CREATE ROLE $user_pg WITH LOGIN PASSWORD '$user_pg_pass';"

# Configuration Apache
# Apache configuration
sudo sh -c 'echo "ServerName localhost" >> /etc/apache2/apache2.conf'
sudo a2enmod rewrite
sudo a2dismod mod_pyth
sudo a2enmod wsgi
sudo apache2ctl restart

# Installation de GeoNature avec l'utilisateur courant
# Installing GeoNature with current user
echo "Téléchargement et installation de GeoNature ..."
cd /tmp
wget https://github.com/PnX-SI/GeoNature/archive/$geonature_release.zip
Expand All @@ -158,7 +162,7 @@ sudo chown `whoami` /home/`whoami`/geonature/

cd /home/`whoami`/geonature

# Configuration des settings de GeoNature
# Updating GeoNature settings
cp config/settings.ini.sample config/settings.ini
echo "Installation de la base de données et configuration de l'application GeoNature ..."
my_url="${my_url//\//\\/}"
Expand All @@ -180,23 +184,23 @@ sed -i "s/https_key_path=.*$/https_key_path=$https_key_path/g" config/settings.i


cd install/
# Installation de la base de données GeoNature
# Installation of GeoNature database
./install_db.sh

# Installation et configuration de l'application GeoNature
# Installation and configuration of GeoNature application
./install_app.sh

cd ../

# Configuration Apache de Geonature
# Apache configuration of GeoNature
sudo touch /etc/apache2/sites-available/geonature.conf

sudo sh -c 'echo "# Configuration GeoNature" >> /etc/apache2/sites-available/geonature.conf'
conf="Alias /geonature /home/`whoami`/geonature/frontend/dist"
echo $conf | sudo tee -a /etc/apache2/sites-available/geonature.conf
echo $conf | sudo tee -a /etc/apache2/sites-available/geonature.conf
sudo sh -c 'echo $conf>> /etc/apache2/sites-available/geonature.conf'
conf="<Directory /home/`whoami`/geonature/frontend/dist>"
echo $conf | sudo tee -a /etc/apache2/sites-available/geonature.conf
echo $conf | sudo tee -a /etc/apache2/sites-available/geonature.conf
sudo sh -c 'echo "Require all granted">> /etc/apache2/sites-available/geonature.conf'
sudo sh -c 'echo "</Directory>">> /etc/apache2/sites-available/geonature.conf'
# Conf Apache du backend de GeoNature
Expand All @@ -208,18 +212,18 @@ sudo sh -c '#FIN Configuration GeoNature 2>" >> /etc/apache2/sites-available/geo

sudo a2ensite geonature

# Configuration Apache de la page de maintenance de GeoNature
# Apache configuration of GeoNature maintenance page
sudo touch /etc/apache2/sites-available/geonature_maintenance.conf

conf="Alias /geonature /home/`whoami`/geonature/frontend/src/app/maintenance"
echo $conf | sudo tee -a /etc/apache2/sites-available/geonature_maintenance.conf
echo $conf | sudo tee -a /etc/apache2/sites-available/geonature_maintenance.conf
sudo sh -c 'echo $conf>> /etc/apache2/sites-available/geonature_maintenance.conf'
conf="<Directory /home/`whoami`/geonature/frontend/src/app/maintenance>"
echo $conf | sudo tee -a /etc/apache2/sites-available/geonature_maintenance.conf
echo $conf | sudo tee -a /etc/apache2/sites-available/geonature_maintenance.conf
sudo sh -c 'echo "Require all granted">> /etc/apache2/sites-available/geonature_maintenance.conf'
sudo sh -c 'echo "</Directory>">> /etc/apache2/sites-available/geonature_maintenance.conf'

# Installation de TaxHub avec l'utilisateur courant
# Installing TaxHub with current user
echo "Téléchargement et installation de TaxHub ..."
cd /tmp
wget https://github.com/PnX-SI/TaxHub/archive/$taxhub_release.zip
Expand All @@ -229,7 +233,7 @@ mv TaxHub-$taxhub_release /home/`whoami`/taxhub/
sudo chown -R `whoami` /home/`whoami`/taxhub/
cd /home/`whoami`/taxhub

# Configuration des settings de TaxHub
# Setting configuration of TaxHub
echo "Configuration de l'application TaxHub ..."
cp settings.ini.sample settings.ini
sed -i "s/drop_apps_db=.*$/drop_apps_db=false/g" settings.ini
Expand All @@ -248,45 +252,36 @@ sed -i "s/enable_https=.*$/enable_https=$enable_https/g" settings.ini
sed -i "s/https_cert_path=.*$/https_cert_path=$enable_https/g" settings.ini
sed -i "s/https_key_path=.*$/https_key_path=$enable_https/g" settings.ini

# Configuration Apache de TaxHub
# Apache configuration of TaxHub
sudo touch /etc/apache2/sites-available/taxhub.conf
sudo sh -c 'echo "# Configuration TaxHub" >> /etc/apache2/sites-available/taxhub.conf'
sudo sh -c 'echo "<VirtualHost *:80>" >> /etc/apache2/sites-available/taxhub.conf'
# Eclater la variable my_url pour supprimer le http://
IFS='/'
domain=($my_url)
domain=(${domain[2]})
sudo sh -c 'echo "Servername "'$domain' >> /etc/apache2/sites-available/taxhub.conf'
sudo sh -c 'echo "RewriteEngine on" >> /etc/apache2/sites-available/taxhub.conf'
sudo sh -c 'echo "RewriteRule \"taxhub$\" \"taxhub/\" [R]" >> /etc/apache2/sites-available/taxhub.conf'
sudo sh -c 'echo "<Location /taxhub>" >> /etc/apache2/sites-available/taxhub.conf'
sudo sh -c 'echo "ProxyPass http://127.0.0.1:5000 retry=0" >> /etc/apache2/sites-available/taxhub.conf'
sudo sh -c 'echo "ProxyPassReverse http://127.0.0.1:5000" >> /etc/apache2/sites-available/taxhub.conf'
sudo sh -c 'echo "</Location>" >> /etc/apache2/sites-available/taxhub.conf'
sudo sh -c 'echo "#FIN Configuration TaxHub" >> /etc/apache2/sites-available/taxhub.conf'
sudo sh -c 'echo "</VirtualHost>" >> /etc/apache2/sites-available/taxhub.conf'

# Création des fichiers systèmes liés à Taxhub
# Creation of system files used by TaxHub
. create_sys_dir.sh
create_sys_dir

sudo a2ensite taxhub
sudo a2enmod proxy
sudo a2enmod proxy_http

# Script d'installation de TaxHub
# Installation og TaxHub
./install_app.sh

# Installation et configuration de l'application UsersHub (si activée)
# Installation and configuration of UsersHub application (if activated)
if [ "$install_usershub_app" = true ]; then
echo "Installation de l'application Usershub"
os_version=$(cat /etc/os-release |grep VERSION_ID)
# Sur Debian 9 : php7. Sur Debian 8 : php5
if [ "$OS_VERSION" == "9" ]
# On Debian 9 : PHP7. On Debian 8 : PHP5
if [ "$OS_VERSION" == "9" ]
then
sudo apt-get install -y php7.0 libapache2-mod-php7.0 libapache2-mod-php7.0 php7.0-pgsql php7.0-gd 2> var/log/install_app.log
sudo apt-get install -y php7.0 libapache2-mod-php7.0 libapache2-mod-php7.0 php7.0-pgsql php7.0-gd 2> var/log/install_app.log
else
sudo apt-get install -y php5 libapache2-mod-php5 libapache2-mod-php5 php5-pgsql php5-gd 2> var/log/install_app.log
sudo apt-get install -y php5 libapache2-mod-php5 libapache2-mod-php5 php5-pgsql php5-gd 2> var/log/install_app.log
fi
cd /tmp
wget https://github.com/PnEcrins/UsersHub/archive/$usershub_release.zip
Expand All @@ -302,10 +297,10 @@ if [ "$install_usershub_app" = true ]; then
sed -i "s/user_pg=.*$/user_pg=$user_pg/g" config/settings.ini
sed -i "s/user_pg_pass=.*$/user_pg_pass=$user_pg_pass/g" config/settings.ini

# Script d'installation de UsersHub
# Installation of UsersHub application
./install_app.sh
# Conf Apache de UsersHub

# Apache configuration of UsersHub
sudo touch /etc/apache2/sites-available/usershub.conf
sudo sh -c 'echo "#Configuration usershub">> /etc/apache2/sites-available/usershub.conf'
conf="Alias /usershub /home/`whoami`/usershub/web"
Expand Down

0 comments on commit cb4a5bc

Please sign in to comment.